Merge fix/commerce-backend-npx-regression: arreglar npx roto en produccion
Build and Push Medusa / Escaneo de Secretos (Gitleaks) (push) Successful in 19s
Build and Push Medusa / Construir y publicar Medusa (push) Successful in 15m10s

This commit is contained in:
2026-08-15 15:38:54 -05:00
2 changed files with 26 additions and 9 deletions
+20 -7
View File
@@ -69,14 +69,27 @@ RUN apt-get update \
&& apt-get upgrade -y libgnutls30 \
&& rm -rf /var/lib/apt/lists/*
#
# El CLI global de npm que trae la imagen base node:*-slim no se usa en
# runtime (el CMD invoca a Medusa directo con `node`, nunca `npm`) y
# arrastra su propia copia vendorizada de `tar` con un CVE CRITICAL
# El CLI global de npm que trae la imagen base node:*-slim arrastra su
# propia copia vendorizada de `tar` con un CVE CRITICAL
# (CVE-2026-59873, detectado por Trivy en
# usr/local/lib/node_modules/npm/node_modules/tar). Se elimina en vez
# de forzar una versión: no es una dependencia real de este proyecto,
# así que no hay nada que "actualizar" -- solo superficie sin uso.
# usr/local/lib/node_modules/npm/node_modules/tar). Se elimina npm
# entero -- no alcanza con borrar solo el tar vendorizado: el propio
# `npx` depende de ese tar internamente (pacote/arborist) incluso para
# ejecutar un binario ya instalado localmente, así que queda roto igual
# si el paquete tar desaparece pero npm sigue ahí (confirmado
# probando "npx medusa --version" contra la imagen: falla con
# "Cannot find module 'tar'").
#
# OJO con este cambio: el init container "migrations" de
# workloads/ecommerce/commerce/medusa.yaml corría "npx medusa
# db:migrate" contra esta misma imagen -- un primer intento de este
# fix borraba npm sin ajustar ese comando y rompió el init container
# en producción ("npx: executable file not found in $PATH",
# medusa-deploy atascado en Init:CrashLoopBackOff, detectado revisando
# el estado real del cluster después del deploy). El fix completo
# incluye cambiar ese comando a invocar el CLI directo con `node`, sin
# pasar por npm/npx -- mismo patrón que ya usa el CMD de este
# Dockerfile más abajo.
RUN rm -rf /usr/local/lib/node_modules/npm
#
+6 -2
View File
@@ -54,9 +54,13 @@ spec:
- name: migrations
image: gitea.cruzcloud.net/devops/ecommerce-medusa:v1.0.108
imagePullPolicy: IfNotPresent
# node directo, sin npx: la imagen ya no trae npm (ver
# Dockerfile de commerce-backend, remediacion de
# CVE-2026-59873) -- mismo binario que ya invoca el CMD de
# runtime de esa misma imagen.
command:
- npx
- medusa
- node
- node_modules/@medusajs/cli/dist/index.js
- db:migrate
envFrom:
- configMapRef: