{"id":25195733,"url":"https://github.com/copyleftdev/zimbool","last_synced_at":"2026-03-07T05:32:26.231Z","repository":{"id":275302688,"uuid":"925690249","full_name":"copyleftdev/zimbool","owner":"copyleftdev","description":" command‑line tool that pushes environment variables from a local .env file to a Google Cloud Run service—or transforms them into valid HCL (Terraform) configuration. It’s built for both CI/CD pipelines and daily developer use,","archived":false,"fork":false,"pushed_at":"2025-02-01T14:13:57.000Z","size":8,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-27T20:41:53.758Z","etag":null,"topics":["cicd","cli","gcp","gloang","hcl","terraform"],"latest_commit_sha":null,"homepage":"https://zimbool.vercel.app/","language":"Go","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/copyleftdev.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":"2025-02-01T14:00:50.000Z","updated_at":"2025-02-01T14:22:46.000Z","dependencies_parsed_at":"2025-02-01T15:23:39.133Z","dependency_job_id":"f039993c-d680-4720-a6c2-3ff57a671637","html_url":"https://github.com/copyleftdev/zimbool","commit_stats":null,"previous_names":["copyleftdev/zimbool"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/copyleftdev/zimbool","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/copyleftdev%2Fzimbool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/copyleftdev%2Fzimbool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/copyleftdev%2Fzimbool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/copyleftdev%2Fzimbool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/copyleftdev","download_url":"https://codeload.github.com/copyleftdev/zimbool/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/copyleftdev%2Fzimbool/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30208731,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T05:23:27.321Z","status":"ssl_error","status_checked_at":"2026-03-07T05:00:17.256Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["cicd","cli","gcp","gloang","hcl","terraform"],"created_at":"2025-02-10T01:28:22.656Z","updated_at":"2026-03-07T05:32:26.211Z","avatar_url":"https://github.com/copyleftdev.png","language":"Go","readme":"\n# Zimbool\n\n**Zimbool** is a sleek, command‑line tool that pushes environment variables from a local `.env` file to a Google Cloud Run service—or transforms them into valid HCL (Terraform) configuration. It’s built for both CI/CD pipelines and daily developer use, wrapping the gcloud CLI with advanced preflight checks and dry-run support.\n\n---\n\n## Features\n\n- **Preflight Checks** – Emoji‑rich system verification for required components.\n- **Gcloud Integration** – Uses gcloud CLI to update Cloud Run services.\n- **Dry Run Mode** – Simulate updates without applying changes.\n- **HCL Transformation** – Convert a `.env` file into a Terraform locals block.\n- **Concise \u0026 Elegant** – Minimalistic design and clear output.\n\n---\n\n## Installation\n\nInstall Zimbool using Go (ensure your `$GOBIN` is in your PATH or it defaults to `$(HOME)/.local/bin`):\n\n```bash\ngo install github.com/copyleftdev/zimbool@latest\n```\n\n---\n\n## Usage\n\n```bash\nzimbool --env-file \u003cpath-to-.env\u003e --service \u003cservice-name\u003e --service-account \u003cpath-to-sa.json\u003e [--project \u003cproject-id\u003e] [--region \u003cregion\u003e] [--dry-run] [--to-hcl]\n```\n\n### Flags\n\n| **Flag**             | **Description**                                                           | **Default**      | **Required**                   |\n|----------------------|---------------------------------------------------------------------------|------------------|--------------------------------|\n| `--env-file`         | Path to the `.env` file                                                   | `.env`           | No                             |\n| `--service`          | Cloud Run service name (for updating the service)                         | —                | Yes (for update mode)          |\n| `--service-account`  | Path to the service account JSON key file                                 | —                | Yes (for update mode)          |\n| `--project`          | GCP Project ID (if omitted, retrieved from gcloud configuration)          | _auto-detected_  | No                             |\n| `--region`           | GCP region (e.g., `us-central1`)                                            | `us-central1`    | No                             |\n| `--dry-run`          | Simulate the update and print the gcloud command without making changes     | `false`          | No                             |\n| `--to-hcl`           | Convert the `.env` file into a valid HCL (Terraform) locals block           | `false`          | No                             |\n\n---\n\n## Examples\n\n### 1. Transform `.env` to HCL\n\nConvert your `.env` file into a Terraform locals block:\n\n```bash\nzimbool --env-file .env --to-hcl\n```\n\n*Example output:*\n\n```hcl\nlocals {\n  env_vars = {\n    \"BAZ\" = \"qux\"\n    \"FOO\" = \"bar\"\n  }\n}\n```\n\n---\n\n### 2. Dry Run Update\n\nSimulate updating your Cloud Run service without applying changes:\n\n```bash\nzimbool --env-file .env \\\n        --service my-service \\\n        --service-account ~/keys/sa.json \\\n        --dry-run\n```\n\n*The tool prints the gcloud command that would be executed.*\n\n---\n\n### 3. Update Cloud Run Environment Variables\n\nPush environment variables to your Cloud Run service:\n\n```bash\nzimbool --env-file .env \\\n        --service my-service \\\n        --service-account ~/keys/sa.json \\\n        --project my-project \\\n        --region us-central1\n```\n\nIf the `--project` flag is omitted, Zimbool retrieves the active project from your gcloud configuration.\n\n---\n\n## Makefile\n\nZimbool includes a Makefile for common tasks:\n\n| **Target** | **Description**                                |\n|------------|------------------------------------------------|\n| `make build`   | Build the binary                           |\n| `make install` | Install the binary in your local bin       |\n| `make test`    | Run the test suite                         |\n| `make clean`   | Remove the built binary                    |\n| `make fmt`     | Format the code                            |\n| `make vet`     | Run static analysis (vet)                  |\n\n---\n\n## License\n\nMIT License\n\n---\n\n**Maintained by [copyleftdev](https://github.com/copyleftdev)**\n\nEnjoy Zimbool – where environment variables meet the cloud with style!\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcopyleftdev%2Fzimbool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcopyleftdev%2Fzimbool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcopyleftdev%2Fzimbool/lists"}