Skip to main content

build-images

Build the monitoring-plugin and monitoring-console-plugin development images with a unique tag. Use when the user asks to build both repository images.

Datos de origen

Repositorio
openshift/monitoring-plugin
Última actividad en el origen
23 de septiembre de 2026 a las 13:56
Idioma detectado de SKILL.md
inglés
Estrellas
12
Forks
71

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
build-images
description
Build the monitoring-plugin and monitoring-console-plugin development images with a unique tag. Use when the user asks to build both repository images.
# Build images Run this workflow only when the user explicitly asks to build the images. The build script pushes by default; do not change that behavior without a separate request. 1. Read `Makefile` and `scripts/build-image.sh` before running the build so current image names and environment defaults take precedence over this skill. 2. Select the container engine as `scripts/build-image.sh` does. Determine `REGISTRY_ORG` from the environment, falling back to the build script default. 3. If the user did not provide a tag, derive the base tag from a Jira-style current branch name. If that is not possible, ask for a tag. 4. Query both repositories before selecting the tag: ```bash if [[ -x "$(command -v podman)" && ${PREFER_PODMAN:-1} == 1 ]]; then OCI_BIN=podman else OCI_BIN=docker fi "$OCI_BIN" image ls --filter "reference=quay.io/${REGISTRY_ORG:-openshift-observability-ui}/monitoring-plugin*" --format '{{.Repository}}:{{.Tag}}' "$OCI_BIN" image ls --filter "reference=quay.io/${REGISTRY_ORG:-openshift-observability-ui}/monitoring-console-plugin*" --format '{{.Repository}}:{{.Tag}}' ``` 5. For each candidate tag, query Quay for the exact active tag in both repositories with `GET https://quay.io/api/v1/repository/${REGISTRY_ORG:-openshift-observability-ui}/<repository>/tag/?specificTag=<URL-encoded-tag>&onlyActiveTags=true` (authenticate if needed). Treat any matching remote tag as taken. Choose the next unused numeric suffix across both image names (`TAG-2`, `TAG-3`, and so on) if the base exists locally or remotely. Stop if either remote query fails; a failed lookup does not mean the tag is free. 6. Before pushing, verify that Quay has an enabled organization or repository [immutability policy](https://docs.projectquay.io/quay_jtbd-administer.html#immutable-tags-overview) matching the selected tag for **both** repositories. The policy must make each tag immutable on its first push so a concurrent push cannot move it. Stop if this cannot be verified; the remote lookup alone does not reserve a tag, and making it immutable after pushing leaves a race. 7. From the repository root, run both builds with the same tag: ```bash INTERACTIVE=0 TAG=<unique-tag> make build-image INTERACTIVE=0 TAG=<unique-tag> make build-dev-mcp-image ``` Stop on the first failure, preserve the error output, and report which build failed. Do not push any additional tags or retry with changed settings unless the user asks.
Ver en GitHub