Fork me on GitHub
#google-cloud
<
2020-12-22
>
mozinator207:12:27

@genekim sure thing! it's still a work in progress though. But will post some gists later today

mozinator208:12:57

One of my reasons for choosing to use Babashka for based provisioning scripts is the ability to have the ability to handle more complex workflows. Like: • validate service account has billing attach credentials • validate service account has project create credentials • create google cloud project • enable billing • create service accounts • create iam policies for those service accounts • create initial sercretmanager secrets for the database and cookie secrets • set up a cloud sql instance • create cloud sql database • create cloud sql user with secrets from secretmanager • ^^ so far this could still be handled by terraform • build a docker container with database migrations • launch a docker container • In this docker container start cloud sql proxy with service account credentials • run database migrations • create a cloud run service with environment variables set to secrets from secretmanager • create domain mappings for the cloud run service And all these steps need to be idempotent. So running the script a second time would just update resources to have the desired state.