https://github.com/copyleftdev/zimbool
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,
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.5%) to scientific vocabulary
Keywords
Repository
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,
Basic Info
- Host: GitHub
- Owner: copyleftdev
- Language: Go
- Default Branch: main
- Homepage: https://zimbool.vercel.app/
- Size: 7.81 KB
Statistics
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
readme.md
Zimbool
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.
Features
- Preflight Checks – Emoji‑rich system verification for required components.
- Gcloud Integration – Uses gcloud CLI to update Cloud Run services.
- Dry Run Mode – Simulate updates without applying changes.
- HCL Transformation – Convert a
.envfile into a Terraform locals block. - Concise & Elegant – Minimalistic design and clear output.
Installation
Install Zimbool using Go (ensure your $GOBIN is in your PATH or it defaults to $(HOME)/.local/bin):
bash
go install github.com/copyleftdev/zimbool@latest
Usage
bash
zimbool --env-file <path-to-.env> --service <service-name> --service-account <path-to-sa.json> [--project <project-id>] [--region <region>] [--dry-run] [--to-hcl]
Flags
| Flag | Description | Default | Required |
|----------------------|---------------------------------------------------------------------------|------------------|--------------------------------|
| --env-file | Path to the .env file | .env | No |
| --service | Cloud Run service name (for updating the service) | — | Yes (for update mode) |
| --service-account | Path to the service account JSON key file | — | Yes (for update mode) |
| --project | GCP Project ID (if omitted, retrieved from gcloud configuration) | auto-detected | No |
| --region | GCP region (e.g., us-central1) | us-central1 | No |
| --dry-run | Simulate the update and print the gcloud command without making changes | false | No |
| --to-hcl | Convert the .env file into a valid HCL (Terraform) locals block | false | No |
Examples
1. Transform .env to HCL
Convert your .env file into a Terraform locals block:
bash
zimbool --env-file .env --to-hcl
Example output:
hcl
locals {
env_vars = {
"BAZ" = "qux"
"FOO" = "bar"
}
}
2. Dry Run Update
Simulate updating your Cloud Run service without applying changes:
bash
zimbool --env-file .env \
--service my-service \
--service-account ~/keys/sa.json \
--dry-run
The tool prints the gcloud command that would be executed.
3. Update Cloud Run Environment Variables
Push environment variables to your Cloud Run service:
bash
zimbool --env-file .env \
--service my-service \
--service-account ~/keys/sa.json \
--project my-project \
--region us-central1
If the --project flag is omitted, Zimbool retrieves the active project from your gcloud configuration.
Makefile
Zimbool includes a Makefile for common tasks:
| Target | Description |
|------------|------------------------------------------------|
| make build | Build the binary |
| make install | Install the binary in your local bin |
| make test | Run the test suite |
| make clean | Remove the built binary |
| make fmt | Format the code |
| make vet | Run static analysis (vet) |
License
MIT License
Maintained by copyleftdev
Enjoy Zimbool – where environment variables meet the cloud with style!
Owner
- Name: Donald Johnson
- Login: copyleftdev
- Kind: user
- Location: Los Angeles
- Repositories: 39
- Profile: https://github.com/copyleftdev
GitHub Events
Total
- Watch event: 1
- Push event: 2
- Fork event: 1
- Create event: 2
Last Year
- Watch event: 1
- Push event: 2
- Fork event: 1
- Create event: 2
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v4 composite
- actions/setup-go v4 composite
- github.com/joho/godotenv v1.5.1
- github.com/joho/godotenv v1.5.1