Artifact Registry Repositories
Docker/Maven/npm repos with cleanup policies, remote and virtual repositories, CMEK and reader/writer IAM.
Compare Container Registry across clouds →
Part of: GCP Kubernetes Platform
Verification
Live-testedReally deployed to a cloud sandbox, verified against its outputs and assertions, then destroyed - with the teardown confirmed.
Conformance
- Static validation (fmt · validate · tflint)
- Security scan clean (Checkov)
- Plan tests (mocked: validation rules · outputs)
Provenance
- SHA-256 checksum
- Cosign signature
Functional
- Live-tested - applied, verified, destroyed
Last verified 2026-06-30 · how we verify
Verify this download
cosign · sha-256Don't take our word for it. Every release is signed with cosign - check the bytes against our pinned public key before you trust them.
# 1. Our pinned public key - fetch once, trust out-of-band
curl -O https://www.iac-bazaar.com/cosign.pub
# 2. This module's Sigstore bundle
curl -o gcp-artifact-registry-1.0.0.sigstore.json \
https://www.iac-bazaar.com/api/artifacts/gcp-artifact-registry/signature
# 3. Verify the tarball you downloaded
cosign verify-blob \
--key cosign.pub \
--bundle gcp-artifact-registry-1.0.0.sigstore.json \
gcp-artifact-registry-1.0.0.tar.gz
# → Verified OK
# 4. (optional) confirm the checksum too
echo "408dd4b3ac14a908b4f4f35b4c1b4e9e2629ececea501ea3f8f70222372312ab gcp-artifact-registry-1.0.0.tar.gz" | sha256sum -cUse it from the registry
terraform · opentofumodule "artifact_registry" {
source = "www.iac-bazaar.com/iac-bazaar/gcp-artifact-registry/gcp"
version = "1.0.0"
}Paid module — needs a purchase (or a subscription that covers it) plus a registry token from /account/tokens. Full setup: registry docs.
Inputs & outputs
Create a free account to read this module's contract
The declared contract — every input name, type, default and description, plus every output — is shown to signed-in accounts, not to anonymous visitors.
A free account sees the contract of every Free module. This one is Basic, so its contract unlocks when you buy it.
Documentation
gcp-artifact-registry
Docker/Maven/npm repos with cleanup policies, remote and virtual repositories,
CMEK and reader/writer IAM. Works with Terraform and OpenTofu (>= 1.6),
Google provider >= 7.0, < 8.0.
Secure defaults:
- Docker tags immutable by default — a pushed tag can never silently change image (supply-chain hygiene)
- Public members (
allUsers,allAuthenticatedUsers) rejected at plan time - Additive per-repo IAM members (
roles/artifactregistry.reader/.writer) — composes safely with IAM managed elsewhere - Cleanup policies validated plan-time (DELETE/KEEP, exactly one of
condition / most_recent_versions per policy);
cleanup_policy_dry_runavailable for safe rollout - Optional CMEK per repository
Requirements
- Terraform or OpenTofu
>= 1.6 hashicorp/google>= 7.0, < 8.0
Notes for integrators:
- Virtual upstreams may reference sibling repositories in this module by
key (resolved to a full resource path), or any external repo by full path.
Terraform creates repos in parallel and the key reference carries no
dependency edge — if a first apply races, re-apply or add module-level
depends_onin your wrapper. - CMEK: grant the Artifact Registry service agent
(
service-PROJECT_NUMBER@gcp-sa-artifactregistry.iam.gserviceaccount.com)roles/cloudkms.cryptoKeyEncrypterDecrypteron the key before enabling. - Cleanup
older_than/newer_thantake second-suffixed durations (e.g."2592000s"= 30 days). - Migrating from GCR? A DOCKER repo +
repository_urlsoutput gives you the*-docker.pkg.devpath to retag against.
License
Commercial — IaC Bazaar EULA. © IaC Bazaar. Original work (not derived from a third-party module).
Usage code & full reference unlock after purchase
The complete copy-paste usage, the full input/output reference, and operational notes ship with your licence - shown here and bundled in the download.
- Usage
- Inputs
- Outputs
Related modules
Azure Container Registry
ACR with geo-replication, retention/trust policies, private endpoint and AcrPull role wiring for AKS/Container Apps.
ECR Repository
ECR repo with lifecycle rules, scan-on-push, immutable tags, and cross-account/replication policies.