持续集成交付CICD:Jenkins使用CD流水线下载Nexus制品

目录

一、实验

1.Jenkins使用CD流水线下载Nexus制品


一、实验

1.Jenkins使用CD流水线下载Nexus制品

(1)Jenkins新建CD流水线

(2)新建视图

(3)查看视图

(4)添加字符参数

(5)添加选项参数

(6)修改流水线代码

"PullArtifacts"阶段通过2个if条件判断项目类型,下载制品函数PullArtifacts()通过wget方式下载制品

bash 复制代码
pipeline {
    agent { label "build" }
    stages{
        stage("PullArtifacts"){
            steps{
                script{
                    repoName = "${JOB_NAME}".split("/")[0]
                    projectName ="${JOB_NAME}".split("/")[-1].split("_")[0]

                    if ("${env.projectType}" == "maven"){
                        type="jar"
                    }
                    if ("${env.projectType}" == "npm"){
                        type="tar.gz"
                    }
                    PullArtifacts("${env.releaseVersion}",projectName,repoName,type)
                }
            }
        }
        stage("DeployHost"){
            steps{
                script{
                    print("DeployHost")
                }
            }
        }
        stage("ServiceCtrl"){
            steps{
                script{
                    print("ServiceCtrl")
                }
            }
        }
        stage("HealthCheck"){
            steps{
                script{
                    print("HealthCheck")
                }
            }
        }
    }
}


//下载制品
def PullArtifacts(version,projectName,repoName,type){
    repoUrl = "http://192.168.204.13:8081/repository"
    pkgPath = "${repoUrl}/${repoName}/${projectName}/${version}/${projectName}-${version}.${type}"
    sh "wget --http-user=admin --http-passwd=Admin123 ${pkgPath} "
}

(7)手动构建CD流水线项目

(8)Blue Ocean 查看

(9)查看日志,已成功下载制品

(10)查看Nexus,下载的制品与仓库里的制品保持一致

相关推荐
wangjialelele1 小时前
Linux下的IO操作以及ext系列文件系统
linux·运维·服务器·c语言·c++·个人开发
HypoxiaDream1 小时前
LINUX-Ext系列⽂件系统
linux·运维·服务器
小毛驴8501 小时前
Linux curl 命令用法
linux·运维·chrome
李斯啦果1 小时前
【Linux】Linux目录配置
linux·运维·服务器
AI+程序员在路上1 小时前
linux下线程中pthread_detach与pthread_join区别
linux·运维·服务器
logocode_li1 小时前
说透 Linux Shell:命令与语法的底层执行逻辑
linux·运维·ssh
来鸟 鸣间2 小时前
Linux下3个so库之间的关系
linux·运维
释怀不想释怀2 小时前
Linux文件上传(rz)和下载(sz)压缩(tar.gz)和解压(zip)
linux·运维·服务器
IOsetting2 小时前
金山云主机添加开机路由
运维·服务器·开发语言·网络·php
酉鬼女又兒2 小时前
零基础入门Linux指南:每天一个Linux命令_sed
linux·运维·服务器