Compare commits
3
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b06c1f211e | ||
|
|
2058f1ca2a | ||
|
|
dfaf5c5a7d |
@@ -1,12 +1,17 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -Eeuo pipefail
|
set -Eeuo pipefail
|
||||||
|
|
||||||
# Promueve el tag de imagen del frontend actualmente desplegado en Staging
|
# OBSOLETO como camino normal desde 2026-09-20: la promoción de Staging a
|
||||||
# (workloads/ecommerce-staging/frontend/patches/deployment.yaml) al
|
# Producción ahora corre sola dentro de .gitea/workflows/build.yaml (step
|
||||||
# manifiesto real de Producción (workloads/ecommerce/frontend/patches/
|
# "Promover a Producción (CD)"), en el mismo job que ya despliega a
|
||||||
# deployment.yaml). Es la contraparte manual del job "Actualizar
|
# Staging -- decisión del usuario de eliminar el gate humano entre los
|
||||||
# Manifiesto GitOps (CD)" de .gitea/workflows/build.yaml, que desde
|
# dos ambientes. En uso normal este script ya no hace nada (Producción
|
||||||
# 2026-09-14 solo actualiza Staging automáticamente en cada push a main.
|
# va a estar al día apenas termine el pipeline).
|
||||||
|
#
|
||||||
|
# Se conserva solo como herramienta de excepción/rollback manual --
|
||||||
|
# ej. forzar Producción a una versión de Staging vieja sin pasar por un
|
||||||
|
# build nuevo. Mismo sed/perl que el step automático del pipeline, con
|
||||||
|
# la diferencia de que este sí pide confirmación interactiva.
|
||||||
#
|
#
|
||||||
# Asume que este repo (scripts) y apps-registry están clonados como
|
# Asume que este repo (scripts) y apps-registry están clonados como
|
||||||
# hermanos bajo el mismo directorio del lab (mismo layout que
|
# hermanos bajo el mismo directorio del lab (mismo layout que
|
||||||
@@ -49,8 +54,15 @@ git checkout -B main origin/main
|
|||||||
sed -i -E "s|(image: ${IMAGE_NAME}:).*|\1${STAGING_VERSION}|g" "${PROD_MANIFEST}"
|
sed -i -E "s|(image: ${IMAGE_NAME}:).*|\1${STAGING_VERSION}|g" "${PROD_MANIFEST}"
|
||||||
|
|
||||||
# Mismo bump que hace build.yaml en Staging -- el footer lee APP_VERSION
|
# Mismo bump que hace build.yaml en Staging -- el footer lee APP_VERSION
|
||||||
# para mostrar la version real desplegada.
|
# para mostrar la version real desplegada. awk en vez de perl (usado en
|
||||||
perl -0777 -pi -e "s/(- name: APP_VERSION\n\s*value: ).*/\${1}${STAGING_VERSION}/" "${PROD_MANIFEST}"
|
# build.yaml, donde sí está disponible porque corre en un runner
|
||||||
|
# ubuntu-latest): el host real de ZimaOS donde se corre este script a
|
||||||
|
# mano no trae perl instalado (confirmado en vivo 2026-09-20), a
|
||||||
|
# diferencia de sed/awk que sí son parte del sistema base.
|
||||||
|
awk -v ver="${STAGING_VERSION}" '
|
||||||
|
/- name: APP_VERSION/ { print; getline; sub(/value:.*/, "value: " ver); print; next }
|
||||||
|
{ print }
|
||||||
|
' "${PROD_MANIFEST}" > "${PROD_MANIFEST}.tmp" && mv "${PROD_MANIFEST}.tmp" "${PROD_MANIFEST}"
|
||||||
|
|
||||||
git add "${PROD_MANIFEST}"
|
git add "${PROD_MANIFEST}"
|
||||||
if git diff --cached --quiet; then
|
if git diff --cached --quiet; then
|
||||||
|
|||||||
Reference in new issue
Block a user