Pipeline-job的使用

创建Pipeline任务

找到root用户的id

编写pipeline脚本

#!groovy

pipeline{

agent {node {label 'master'}}

environment {

PATH="/bin/:sbin:usr/bin:usr/sbin:/usr/local/bin"

}

parameters {

choice(

choices: 'dev\nprod',

description: 'choose deploy environment',

name: 'deploy_env'

)

string (name: 'version', defaultValue: '1.0.0', description: 'build version')

}

stages {

stage("checkout test repo") {

steps {

sh 'git config --global http.sslVerify false'

dir ("${env.WORKSPACE}") {

git branch: 'master', credentialsId: "6bdd72fd-dcc1-4977-9978-4982aae37dc9", url: 'https://root@gitlab.example.com/root/test-repo.git'

}

}

}

stage("Print env variable") {

steps {

dir ("${env.WORKSPACE}") {

sh """

echo "[INFO] print env variable"

echo "current deployment environment is $deploy_env" >> test.properties

echo "the build is $version" >> test.properties

echo "[INFO] Done..."

"""

}

}

}

stage("check test properties") {

steps{

dir ("${env.WORKSPACE}") {

sh """

echo "[INFO] check test properties"

if [ -s test.properties ]

then

cat test.properties

echo "[INFO] done..."

else

echo "test.properties is empty"

fi

"""

echo "[INFO] build finished..."

}

}

}

}

}

编译结果:

Jenkins与基础应用集成

打开shell模块编辑

编写测试脚本

#!/bin/sh

user=`whoami`

if [ $user == 'deploy' ]

then

echo "hello, my name is $user"

else

echo "sorry, i am not $user"

fi

ip addr

cat /etc/system-release

free -m

df -h

py_cmd=`which python`

$py_cmd --version

带参数的界面

添加参数选项

脚本

#!/bin/sh

echo "current deploy environment is $deploy_env"

echo "the build is $version"

echo "the password is $pass"

if $bool

then

echo "request is appoved"

else

echo "request is rejected"

fi

编译结果

Jenkins和git的集成

Gitlab_ansible_jenkins三剑客⑤jenkins Pipeline-job的使用的更多相关文章

  1. Gitlab_ansible_jenkins三剑客⑥Jenkins和ansible集成

    ip 角色 备注 10.11.0.215 jenkins服务器 通过deploy运行jenkins服务,deploy用户做了免秘钥登录ansible服务器 10.11.0.210 ansible服务器 ...

  2. Gitlab_ansible_jenkins三剑客④jenkins安装图解及freestyle的简单使用

    java环境准备 # 安装jdk1.8 [root@node02 ~]# rpm -ivh jdk-8u181-linux-x64.rpm vim /etc/profile export JAVA_H ...

  3. 在容器中运行 Jenkins pipeline 任务

    持续集成中的 pipeline 技术和 docker 都是当前正在发展的主流方向,当然把它们结合起来在 CI/CD 过程中发挥出更强大的威力也是大家共同的目标.本文将介绍如何在 Jenkins pip ...

  4. 基于Jenkins Pipeline的ASP.NET Core持续集成实践

    最近在公司实践持续集成,使用到了Jenkins的Pipeline来提高团队基于ASP.NET Core API服务的集成与部署效率,因此这里总结一下. 一.关于持续集成与Jenkins Pipelin ...

  5. Jenkins pipeline job 根据参数动态获取触发事件的分支

    此文需要有Jenkins pipeline job 的简单使用经验 场景 我们日常的测试函数, 一般是不能仅仅在本地跑的,还需要一个公共的跑测试的环境,作为合并新的PR的依据. 如果用Jenkins ...

  6. Jenkins pipeline:pipeline 使用之语法详解

    一.引言 Jenkins 2.0的到来,pipline进入了视野,jenkins2.0的核心特性. 也是最适合持续交付的feature. 简单的来说,就是把Jenkins1.0版本中,Project中 ...

  7. Jenkins pipeline:pipeline 语法详解

    jenkins  pipeline 总体介绍 pipeline 是一套运行于jenkins上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排与可视化. ...

  8. [持续交付实践] Jenkins Pipeline 高可用设计方法

    前言 这篇写好一段时间了,一直也没发布上来,今天稍微整理下了交下作业,部分内容偷懒引用了一些别人的内容.使用Jenkins做持续集成/持续交付,当业务达到一定规模的时候,Jenkins本身就很容易成为 ...

  9. Jenkins pipeline shared library

    Jenkinsfile https://jenkins.io/doc/book/pipeline/jenkinsfile/ Jenkins Pipeline is a suite of plugins ...

随机推荐

  1. 封装LocalStorage.js

    之前使用vue开发的项目频繁使用到localStorage,封装了一下 localStorage.js文件代码如下: let obj = {}; /** * putLocalStorage 把数据放到 ...

  2. AI佳作解读系列(四)——数据增强篇

    前言 在深度学习的应用过程中,数据的重要性不言而喻.继上篇介绍了数据合成(个人认为其在某种程度上可被看成一种数据增强方法)这个主题后,本篇聚焦于数据增强来介绍几篇杰作! (1)NanoNets : H ...

  3. elasticsearch补全功能之只补全筛选后的部分数据context suggester

    官方文档https://www.elastic.co/guide/en/elasticsearch/reference/5.0/suggester-context.html 下面所有演示基于elast ...

  4. Leetcode 4.28 Tree Easy

    1. 101. Symmetric Tree 用递归. class Solution { public boolean isSymmetric(TreeNode root) { if( root == ...

  5. 京东iPad新品开售销量环比增22倍

    一年一度万众期待的 Apple 春季发布会终于在今天凌晨揭晓,Apple 新推的 Apple News.Apple Card.Apple Arcade 和 Apple TV+ 四大软件服务惊喜不断,随 ...

  6. React中jsx调用js例子

    需求: 界面新增一个“导入项目”按钮,点击该按钮可以执行项目导入功能.按钮点击事件部分是jsx语法代码,而项目导入部分是封装的js语法代码,假设此处用alert("123")代替. ...

  7. CF1152 F. Neko Rules the Catniverse (dp)

    题意 一条长为 \(n\) 的数轴,可以从任意整点 \(\in [1, n]\) 出发,假设当前在 \(x\) ,下一步能到达的点 \(y\) 需要满足,\(y\) 从未到过,且 \(1 \le y ...

  8. python3 while-else和for-else语法

    while-else: while判断条件不成立时,执行else语句: 语法: while 判断条件: 语句1.... else: 语句2.... i初始值为2,i>0成立,则执行while语句 ...

  9. [CQOI2016]伪光滑数

    题目描述 若一个大于1的整数M的质因数分解有k项,其最大的质因子为Ak,并且满足Ak^K<=N,Ak<128,我们就称整数M为N-伪 光滑数.现在给出N,求所有整数中,第K大的N-伪光滑数 ...

  10. jmeter笔记(5)--参数化--CSV Data Set Config

    为了保证脚本的可移植性,我们需要把数据提取出来作为变量,变量可以分为两类: 公用变量:IP.端口.附件路径.CSV文件路径等: 测试变量:用户名.密码.用户ID.商品ID等 使用CSV Data Se ...