1# Getting Started: GCP
2
3This guide is a walkthrough for deploying a BOSH director with `bbl`
4on GCP. Upon completion, you will have the following:
5
61. A BOSH director
71. A jumpbox
81. A set of randomly generated BOSH director credentials
91. A generated keypair allowing you to SSH into the BOSH director and
10any instances BOSH deploys
111. A copy of the manifest the BOSH director was deployed with
121. A basic cloud config
13
14## Create a Service Account
15
16In order for `bbl` to interact with GCP, a service account must be created.
17
18```
19gcloud iam service-accounts create <service account name>
20
21gcloud iam service-accounts keys create --iam-account='<service account name>@<project id>.iam.gserviceaccount.com' <service account name>.key.json
22
23gcloud projects add-iam-policy-binding <project id> --member='serviceAccount:<service account name>@<project id>.iam.gserviceaccount.com' --role='roles/editor'
24```
25
26## Pave Infrastructure, Create a Jumpbox, and Create a BOSH Director
27
281. Export environment variables.
29    ```
30    export BBL_IAAS=gcp
31    export BBL_GCP_REGION=
32    export BBL_GCP_SERVICE_ACCOUNT_KEY=
33    ```
34
35    or powershell:
36
37    ```powershell
38    $env:BBL_IAAS="gcp"
39    $env:BBL_GCP_REGION=
40    $env:BBL_GCP_SERVICE_ACCOUNT_KEY=
41    ```
421. Create an empty directory to use as your bbl state directory.
43    ```
44    mkdir some-bbl-state-dir
45    cd some-bbl-state-dir
46    ```
471. Create infrastructure, jumpbox, and bosh director.
48    ```
49    bbl up
50    ```
51
52## Next Steps
53
54* [Target the BOSH Director](howto-target-bosh-director.md)
55* [Deploy Cloud Foundry](cloudfoundry.md)
56* [Deploy Concourse](concourse.md)
57