{"owner":"GoogleContainerTools","repo":"distroless","hasSkills":true,"totalSkillsCount":1,"totalTokensCount":437,"categories":["anthropic-skill"],"hasMcp":false,"mcpConfig":null,"found":["private/tools/lifecycle/tag.sh.README.md"],"skills":{"private/tools/lifecycle/tag.sh.README.md":"# Container Image Lifecycle Tagger (Distroless Admin Tooling)\n\nA Bash utility to bulk-tag container images in a registry. This is particularly useful for marking old images as \"available for update\" or \"deprecated\" without deleting them, allowing for safer cleanup or auditing.\n\n## Prerequisites\n\n* **[gcrane](https://github.com/google/go-containerregistry/tree/main/cmd/gcrane):** Used for interacting with the container registry.\n* **[jq](https://github.com/jqlang/jq/):** Used for parsing registry JSON manifests.\n* **Authentication:** Ensure you are authenticated to your registry (e.g., `gcloud auth configure-docker`).\n\n## Functionality\n\nThe script operates in two primary modes:\n\n### 1. `update` mode\n\nIdentifies images that are \"stale\" but likely safe to mark for replacement. It selects images that:\n\n* Have no tags **OR** only have auto-generated git commit hash based tags (40-character hex strings).\n* Are older than **48 hours** (to avoid interfering with active CI/CD pipelines).\n* **Action:** Tags them with the prefix `update-available-<sha256>`.\n\n### 2. `deprecate` mode\n\nIdentifies images that have not yet been marked as deprecated.\n\n* Selects images that do **not** already have a tag matching the deprecation pattern.\n* **Action:** Tags them with the prefix `deprecated-public-image-<sha256>`.\n* *Note: The execution for this mode is currently commented out in the script as a safety measure.*\n\n---\n\n## Usage\n\n```bash\n./tag.sh [update|deprecate] <image>\n```\n\n### Examples\n\n**Dry Run (Default):**\nBy default, the script only prints what it *would* do.\n\n```bash\n./tag.sh update gcr.io/distroless/python3-debian13\n```\n\n**Live Execution:**\nTo actually apply tags to the registry, set `DRY_RUN` to `false`.\n\n```bash\nDRY_RUN=false ./tag.sh update gcr.io/distroless/python3-debian13\n```\n"},"files":{"private/tools/lifecycle/tag.sh.README.md":"# Container Image Lifecycle Tagger (Distroless Admin Tooling)\n\nA Bash utility to bulk-tag container images in a registry. This is particularly useful for marking old images as \"available for update\" or \"deprecated\" without deleting them, allowing for safer cleanup or auditing.\n\n## Prerequisites\n\n* **[gcrane](https://github.com/google/go-containerregistry/tree/main/cmd/gcrane):** Used for interacting with the container registry.\n* **[jq](https://github.com/jqlang/jq/):** Used for parsing registry JSON manifests.\n* **Authentication:** Ensure you are authenticated to your registry (e.g., `gcloud auth configure-docker`).\n\n## Functionality\n\nThe script operates in two primary modes:\n\n### 1. `update` mode\n\nIdentifies images that are \"stale\" but likely safe to mark for replacement. It selects images that:\n\n* Have no tags **OR** only have auto-generated git commit hash based tags (40-character hex strings).\n* Are older than **48 hours** (to avoid interfering with active CI/CD pipelines).\n* **Action:** Tags them with the prefix `update-available-<sha256>`.\n\n### 2. `deprecate` mode\n\nIdentifies images that have not yet been marked as deprecated.\n\n* Selects images that do **not** already have a tag matching the deprecation pattern.\n* **Action:** Tags them with the prefix `deprecated-public-image-<sha256>`.\n* *Note: The execution for this mode is currently commented out in the script as a safety measure.*\n\n---\n\n## Usage\n\n```bash\n./tag.sh [update|deprecate] <image>\n```\n\n### Examples\n\n**Dry Run (Default):**\nBy default, the script only prints what it *would* do.\n\n```bash\n./tag.sh update gcr.io/distroless/python3-debian13\n```\n\n**Live Execution:**\nTo actually apply tags to the registry, set `DRY_RUN` to `false`.\n\n```bash\nDRY_RUN=false ./tag.sh update gcr.io/distroless/python3-debian13\n```\n"},"items":[{"name":"tag.sh.README.md","path":"private/tools/lifecycle/tag.sh.README.md","rawUrl":"https://raw.githubusercontent.com/GoogleContainerTools/distroless/HEAD/private/tools/lifecycle/tag.sh.README.md","title":"Lifecycle Skill","category":"anthropic-skill","format":"markdown","content":"# Container Image Lifecycle Tagger (Distroless Admin Tooling)\n\nA Bash utility to bulk-tag container images in a registry. This is particularly useful for marking old images as \"available for update\" or \"deprecated\" without deleting them, allowing for safer cleanup or auditing.\n\n## Prerequisites\n\n* **[gcrane](https://github.com/google/go-containerregistry/tree/main/cmd/gcrane):** Used for interacting with the container registry.\n* **[jq](https://github.com/jqlang/jq/):** Used for parsing registry JSON manifests.\n* **Authentication:** Ensure you are authenticated to your registry (e.g., `gcloud auth configure-docker`).\n\n## Functionality\n\nThe script operates in two primary modes:\n\n### 1. `update` mode\n\nIdentifies images that are \"stale\" but likely safe to mark for replacement. It selects images that:\n\n* Have no tags **OR** only have auto-generated git commit hash based tags (40-character hex strings).\n* Are older than **48 hours** (to avoid interfering with active CI/CD pipelines).\n* **Action:** Tags them with the prefix `update-available-<sha256>`.\n\n### 2. `deprecate` mode\n\nIdentifies images that have not yet been marked as deprecated.\n\n* Selects images that do **not** already have a tag matching the deprecation pattern.\n* **Action:** Tags them with the prefix `deprecated-public-image-<sha256>`.\n* *Note: The execution for this mode is currently commented out in the script as a safety measure.*\n\n---\n\n## Usage\n\n```bash\n./tag.sh [update|deprecate] <image>\n```\n\n### Examples\n\n**Dry Run (Default):**\nBy default, the script only prints what it *would* do.\n\n```bash\n./tag.sh update gcr.io/distroless/python3-debian13\n```\n\n**Live Execution:**\nTo actually apply tags to the registry, set `DRY_RUN` to `false`.\n\n```bash\nDRY_RUN=false ./tag.sh update gcr.io/distroless/python3-debian13\n```\n","isInternal":false,"tokens":437,"sizeBytes":1801}],"systemPromptSnippet":"<yakaai_skills repo=\"GoogleContainerTools/distroless\">\n<!-- File: private/tools/lifecycle/tag.sh.README.md (Tokens: ~437 | Category: anthropic-skill) -->\n# Container Image Lifecycle Tagger (Distroless Admin Tooling)\n\nA Bash utility to bulk-tag container images in a registry. This is particularly useful for marking old images as \"available for update\" or \"deprecated\" without deleting them, allowing for safer cleanup or auditing.\n\n## Prerequisites\n\n* **[gcrane](https://github.com/google/go-containerregistry/tree/main/cmd/gcrane):** Used for interacting with the container registry.\n* **[jq](https://github.com/jqlang/jq/):** Used for parsing registry JSON manifests.\n* **Authentication:** Ensure you are authenticated to your registry (e.g., `gcloud auth configure-docker`).\n\n## Functionality\n\nThe script operates in two primary modes:\n\n### 1. `update` mode\n\nIdentifies images that are \"stale\" but likely safe to mark for replacement. It selects images that:\n\n* Have no tags **OR** only have auto-generated git commit hash based tags (40-character hex strings).\n* Are older than **48 hours** (to avoid interfering with active CI/CD pipelines).\n* **Action:** Tags them with the prefix `update-available-<sha256>`.\n\n### 2. `deprecate` mode\n\nIdentifies images that have not yet been marked as deprecated.\n\n* Selects images that do **not** already have a tag matching the deprecation pattern.\n* **Action:** Tags them with the prefix `deprecated-public-image-<sha256>`.\n* *Note: The execution for this mode is currently commented out in the script as a safety measure.*\n\n---\n\n## Usage\n\n```bash\n./tag.sh [update|deprecate] <image>\n```\n\n### Examples\n\n**Dry Run (Default):**\nBy default, the script only prints what it *would* do.\n\n```bash\n./tag.sh update gcr.io/distroless/python3-debian13\n```\n\n**Live Execution:**\nTo actually apply tags to the registry, set `DRY_RUN` to `false`.\n\n```bash\nDRY_RUN=false ./tag.sh update gcr.io/distroless/python3-debian13\n```\n</yakaai_skills>"}