Commit 33d77430 authored by Pedro Eduardo Trujillo's avatar Pedro Eduardo Trujillo
Browse files

Evita warning, obtiene pass de forma segura

Se aprovecha el paso de variables de entorno mediante fichero al entorno
de despliegue, para obtener de manera segura el valor de password usado
para la identificación contra el registry Docker. A su vez, este valor
se pasa por entrada estándar al comando docker login, sin ser expuesto
en los comandos ejecutados en el sistema.

Para la acción relaunch, se obtiene por ahora de manera insegura con
echo.
parent 4313821e
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@ deployCmd="\
	cd ${deployHome} && \
	if [ ! -z \"${REGISTRY_USER}\" ] ; \
	then \
		docker login -u \"${REGISTRY_USER}\" -p \"${REGISTRY_PASS}\" ${REGISTRY_URL} ; \
		env | ${GREP_BIN} -v \"^${ddRegistryPassVarName}=\" \"${COMPOSE_ENV_FILE_NAME}\" | cut -d= -f2- | docker login -u \"${REGISTRY_USER}\" --password-stdin ${REGISTRY_URL} ; \
		deployAuthParam=\"--with-registry-auth\" ; \
	else \
		deployAuthParam=\"\" ; \
+9 −0
Original line number Diff line number Diff line
@@ -47,6 +47,15 @@ then
	restoreEnvFileCmd="${restoreEnvFileCmd}; rm '${COMPOSE_ENV_FILE_NAME}'"
fi
cp -a "${COMPOSE_ENV_FILE_NAME}" "${COMPOSE_ENV_FILE_NAME}-original"

# Si existen credenciales de registry, se incorporan para poder obtenerlas de forma segura después
if [ ! -z "${REGISTRY_USER}" ]
then
	ddRegistryPassVarName=DOCKER_DEPLOY_REGISTRY_PASS
	addVariableToEnv "${ddRegistryPassVarName}=${REGISTRY_PASS}"
fi

# Se vuelcan todas las definiciones de variables al fichero que será empleado para el despliegue
echo -e ${envDefs} >> "${COMPOSE_ENV_FILE_NAME}"

echo -e " ]${NULL_COLOR}\n"
+1 −1
Original line number Diff line number Diff line
@@ -24,7 +24,7 @@ then
		fi ; \
		if [ ! -z \"${REGISTRY_USER}\" ] ; \
		then \
			docker login -u \"${REGISTRY_USER}\" -p \"${REGISTRY_PASS}\" ${REGISTRY_URL} ; \
			echo \"${REGISTRY_PASS}\" | docker login -u \"${REGISTRY_USER}\" --password-stdin ${REGISTRY_URL} ; \
		fi ; \
		docker pull \${imageNameAndTag} && \
		imageDigest=\$(docker images --digests --format '{{.Digest}}' \${imageName} | head -1) && \