CICD 九(Jenkins 创建 hello-cd)
Jenkins 创建 hello-cd
创建一个自由风格的软件项目:hello-cd
配置 “参数化构建过程”,
- “选项参数”

名称:NAMESPACE
选项:klvchen-test # 用于测试环境
klvchen-uat # 用于 uat 环境
- “Image Tag Parameter”

这里指定的是测试程序 hello 打包成docker 镜像后上传到 阿里云镜像仓库的地址
构建

#!/bin/bash
PRO_NAME="hello"
IMAGE_TAG="yp-flask.image.tag"
NUM=$(argocd app list|grep ${PRO_NAME}|grep ${NAMESPACE}|wc -l)
REPO_NAME=${PRO_NAME}
if [[ "${NAMESPACE}" == "klvchen-uat" ]]; then
PRO_NAME="${PRO_NAME}-uat"
fi
if [[ ${NUM} == 0 ]];then
echo "以默认配置创建 APP, APP名为 ${PRO_NAME}, NAMESPACE为 ${NAMESPACE} "
argocd app create ${PRO_NAME} \
--project ${NAMESPACE} \
--repo https://codeup.aliyun.com/5fd97f761acb1ae7cc188588/CICD.git \
--path ${NAMESPACE}/${REPO_NAME} \
--dest-server https://kubernetes.default.svc \
--dest-namespace ${NAMESPACE} \
--revision-history-limit 5 \
else
echo "更新 APP"
echo "更新版本为 ${DOCKER_IMAGE}"
TAG=`echo ${DOCKER_IMAGE}|awk -F '[/:]' '{print $3}'`
echo ${TAG}
echo ${PRO_NAME}
echo ${IMAGE_TAG}
argocd app set ${PRO_NAME} -p ${IMAGE_TAG}=${TAG}
fi
argocd app sync ${PRO_NAME}
主要作用为:远程 ssh 到 192.168.0.217 执行 argocd 命令创建或更新镜像tag

浙公网安备 33010602011771号