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

posted @ 2020-12-19 16:53  klvchen  阅读(22)  评论(0)    收藏  举报