持续集成交付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,下载的制品与仓库里的制品保持一致

相关推荐
破刺不会编程2 小时前
socket编程UDP
linux·运维·服务器·网络·c++·网络协议·udp
ayaya_mana3 小时前
Nginx性能优化与安全配置:打造高性能Web服务器
运维·nginx·安全·性能优化
我不要放纵9 小时前
docker
运维·docker·容器
morliz子轩9 小时前
基于WSL搭建Ubuntu 22.04.x LTS开发环境
linux·运维·ubuntu
BJ_Bonree9 小时前
数智先锋 | 告别运维黑盒!豪鹏科技×Bonree ONE构建全栈智能可观测体系
运维·科技
Janspran10 小时前
嵌入式linux学习 -- 进程和线程
linux·运维·学习
Cosmoshhhyyy10 小时前
linux远程部署dify和mac本地部署dify
linux·运维·macos
路多辛12 小时前
Debian新一代的APT软件源配置文件格式DEB822详解
linux·运维·ubuntu·debian
油丶酸萝卜别吃13 小时前
nginx配置代理服务器
运维·网络·nginx
maomao17131413 小时前
Jenkins 环境部署
运维·jenkins