{"id":19308910,"url":"https://github.com/optimics/docker-terraform","last_synced_at":"2026-05-14T08:38:35.204Z","repository":{"id":115303990,"uuid":"468056399","full_name":"optimics/docker-terraform","owner":"optimics","description":"Fruitful docker image to power up Bitbucket Pipelines deployments","archived":false,"fork":false,"pushed_at":"2023-07-03T08:55:42.000Z","size":22,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-06T01:41:29.667Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/optimics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-09T18:57:34.000Z","updated_at":"2022-11-03T09:59:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"17486d69-70d4-47c4-9302-354834115fc3","html_url":"https://github.com/optimics/docker-terraform","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/optimics%2Fdocker-terraform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/optimics%2Fdocker-terraform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/optimics%2Fdocker-terraform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/optimics%2Fdocker-terraform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/optimics","download_url":"https://codeload.github.com/optimics/docker-terraform/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240409848,"owners_count":19796797,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-10T00:16:58.250Z","updated_at":"2026-05-14T08:38:35.198Z","avatar_url":"https://github.com/optimics.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker: optimics/terraform\n\n[![](https://badgen.net/github/checks/optimics/docker-terraform)](https://github.com/optimics/docker-terraform/actions)\n[![](https://badgen.net/github/tag/optimics/docker-terraform)](https://github.com/optimics/docker-terraform/tags)\n[![](https://badgen.net/docker/pulls/optimics/terraform)](https://hub.docker.com/r/optimics/terraform)\n[![](https://badgen.net/docker/size/optimics/terraform)](https://hub.docker.com/r/optimics/terraform)\n\nA fruitful image that puts together several tools to make Continuous Deliveries and Continuous Deployments on Bitbucket Pipelines easy.\n\n* [git](https://git-scm.com/)\n* [Google Cloud SDK](https://cloud.google.com/sdk/)\n* [Node.JS](https://nodejs.org/) with [npm](https://www.npmjs.com/)\n* [descope-env](./descope-env.sh)\n* [init-gcs](./init-gcs.sh)\n* [Poetry](https://python-poetry.org/)\n* [Terraform](https://www.terraform.io/cli/commands)\n\n## `descope-env`\n\nA tiny script that removes scope from your variables. Use this if you have mixed environment variables set in your system. There is no need to do additional variable mapping, which can save your pipeline definition size.\n\n```shell\nexport STAGING_MYSQL_PASSWORD=password123\ndescope-env staging\necho $MYSQL_PASSWORD\n# password123\n```\n\nFirst argument to this script is the actual environment. It can be omitted and passed as `PROJECT_ENVIRONMENT` env variable instead. If none is set, descope-env considers it the staging environment. If the variable `BITBUCKET_TAG` contains semver tag, it is considered the production environment.\n\n### with package.json\n\nGiven `package.json` is present in the working directory, the `descope-env` will apply any key/value pairs from the `env` section into current environment.\n\n## `init-gcs`\n\nAlso a tiny script that initializes Terraform Google Cloud Storage Backend and sets up a service account based on the credentials stored in `TF_VAR_GOOGLE_CREDENTIALS`. It takes no arguments. Make sure the `TF_VAR_BUCKET_TERRAFORM` contains the terraform state bucket.\n\n## Usage\n\n```\ndefinitions:\n  steps:\n    - step: \u0026deploy\n        name: Deploy Infrastructure\n        image: optimics/terraform:0.4\n        script:\n          - . descope-env\n          - init-gcs\n          - terraform validate\n          - terraform apply --input=false --auto-approve\n\n  branches:\n    master:\n      - step: *deploy\n\n  tags:\n    'v*':\n      - step: *deploy\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foptimics%2Fdocker-terraform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foptimics%2Fdocker-terraform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foptimics%2Fdocker-terraform/lists"}