首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JENKINS将参数作为输入传递到远程主机脚本

Jenkins是一个开源的持续集成和交付工具,它可以帮助开发团队自动化构建、测试和部署软件项目。在Jenkins中,可以通过参数化构建的方式将参数作为输入传递到远程主机脚本。

参数化构建是指在构建过程中可以接收外部传入的参数,并将这些参数传递给构建过程中的脚本或命令。在Jenkins中,可以通过以下步骤将参数传递到远程主机脚本:

  1. 在Jenkins的构建配置中,选择"参数化构建过程"选项。
  2. 添加需要的参数,例如字符串、布尔值、选择列表等。
  3. 在构建过程中,可以使用这些参数作为环境变量或命令行参数传递给远程主机脚本。

通过将参数传递给远程主机脚本,可以实现在不同环境中执行相同的构建过程,只需根据参数的不同来执行不同的操作。这样可以提高构建的灵活性和可重用性。

对于远程主机脚本的执行,可以使用SSH插件或者Pipeline语法来实现。SSH插件可以通过SSH协议连接到远程主机,并执行指定的脚本。Pipeline语法可以在Jenkinsfile中定义构建过程,包括参数传递和远程主机脚本的执行。

Jenkins的参数化构建功能在实际开发中有广泛的应用场景。例如,可以将不同的环境(如开发、测试、生产)作为参数传递给远程主机脚本,从而实现在不同环境中自动化部署和测试软件项目。另外,还可以将版本号、分支名称等作为参数传递,实现不同版本的构建和发布。

腾讯云提供了一系列与Jenkins相关的产品和服务,例如云服务器、容器服务、云函数等,可以帮助用户搭建和管理Jenkins环境。具体产品和服务的介绍和链接地址如下:

  1. 云服务器(ECS):提供可扩展的计算能力,用于搭建Jenkins主机。了解更多:云服务器产品介绍
  2. 云原生应用平台(TKE):提供容器化的应用部署和管理平台,可用于运行Jenkins容器。了解更多:云原生应用平台产品介绍
  3. 云函数(SCF):提供事件驱动的无服务器计算服务,可用于执行Jenkins构建过程中的脚本。了解更多:云函数产品介绍
  4. 云监控(CM):提供全方位的监控和告警服务,可用于监控Jenkins的运行状态和性能指标。了解更多:云监控产品介绍

通过以上腾讯云的产品和服务,可以构建一个稳定、可靠的Jenkins环境,并实现参数化构建和远程主机脚本的执行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

不同环境下 Jenkins 调用 shell 脚本管理 docker 容器

OLD_DB_NAME | ssh -C user@newhost “mysql -uUSER -pPASS NEW_DB_NAME” 通过压缩的SSH隧道Dump一个MySQL数据库,将其作为输入传递给...停止捕捉,但也会关闭 wireshark 窗口,可以传递一个“-c #”参数给 tshark,让它只捕捉“#”指定的数据包类型,或通过命名管道重定向数据,而不是直接通过 SSH 传输给 wireshark...xclip可以帮到你,它可以标准输入复制X11缓冲区,你需要做的就是点击鼠标中键粘贴缓冲区中的内容。...二、Linux环境和Jenkins环境2则脚本,仅供参考 1、Jenkins 构建调用 shell 脚本管理容器(Linux环境)脚本: #!...构建调用 shell 脚本管理容器(Jenkins环境)脚本: #!

1.6K20

我的shell脚本实战-编写一个系统发布脚本

平常我们会使用Jenkins发布系统,Jenkins可以从代码更新,编译发布这样的一条龙服务。操作成本很低,作为程序员,肯定不满足于简单的界面操作。...发布流程思考 结构 如上图,我们编写的shell脚本放到主机A,执行脚本,会从git服务器拉取代码,为了在拉取代码时不需要输入密码,我们需要在gitlab上面添加密钥: image-20210325112328103...接下来我们在主机A中编译代码,然后编译好的代码远程分发到不同的主机中,再在这些主机中启动程序。...因为有测试环境和正式环境,我在执行脚本的时候会在后面带一个参数pro或test,代表发布不同的环境。 首先我们在两个环境各自相关的地址: 当输入的变量参数为test时,走test的路径。...如果输入了其他的参数,会给个提示 "请输入正确参数【test或pro】,当前参数: '$1"。 为了保险起见,我会先打印出要发放的地址,然后给出询问,是否继续执行。

59720
  • Jenkins常用插件Publish Over SSH

    Jenkins常用插件Publish Over SSH 插件介绍 可以实现不同节点之间传递文件,比如A节点将代码编译打包好,然后通过ssh发送到目标节点上,配置相应的命令完成项目的部署,目标节点无需是是一个...新增一个远程主机; 在"Name"输入框中填写这个远程主机的名称; 在"Hostname"输入框中填写IP地址,或者节点能够解析的主机名称; 在"Username"输入框中填写用于远程登录的用户名; 在..."Remote Directory"输入框中填写远程主机存放文件的目录,这个目录必须已存在; 如果当前的远程主机密码不是第二步配置的通用密码,可以点击右下角的"高级",在Password输入框中填写这个远程主机的密码...JOB}/target/dist.zip,这里填写target/*.zip用于匹配target目录下的所有以zip结尾的文件 在"Remove prefix"中填写需要删除的路径前缀,如果不填写,那么复制远程主机的结构为...在"Remote directory"中填写远程目录路径,这个路径是基于在配置远程主机时填写的路径,前面我们填写的路径为/opt/jenkins,这里填写target,组合起来就是/opt/jenkins

    2.9K52

    记一次在Windows10桌面环境搭建Jekins的吐血经历

    但是最近的数据量有所增加,所以必须增加新的远程主机,所以现在有了2台机器,每次都是执行文件上传,然后再依次登录到每台主机上执行脚本。...这里还算顺利,在安装了Win32-OpenSSH之后可以通过scp命令文件传输到远程主机。...但是在执行scp命令时必须输入密码,显然在Jenkins中要实现一键部署时是无法执行输入密码这个动作的,因此就需要实现本地Windows主机远程Linux主机之间的免密传输。...我尝试了很多次本地Windows主机的ssh公钥写到远程Linux主机的~/.ssh/authorized_keys文件中,每次执行scp命令时依然需要手动输入密码。...经过一番搜索后知道:在Windows环境要实现类似于scp命令的功能,还可以通过一个叫做pscp的命令实现,并且pscp命令有一个-pw选项参数可以指定远程主机的登录密码,这样就可以实现不用手动输入密码的效果了

    1.8K10

    Windows Docker Agent 镜像可以常规使用了

    jenkins/inbound-agent 是一个基于上面 jenkins/agent 镜像的 agent,它提供了用 PowerShell 编写的包装类脚本,以帮助指定 agent.jar 的参数。...它提供了一个围绕 agent.jar 的 PowerShell 包装类脚本,并且被指定为入口点,因此您只需要传递一些命令行参数即可运行 agent。...2.3 Jenkins/ssh-agent 如上所述,jenkins/ssh-agent docker 镜像基于与主机的 SSH 通信,而不是基于远程 TCP 或 WebSocket 协议。...该镜像需要 SSH 公钥作为参数,并将该密钥放入 jenkins 用户的 authorized_keys 文件中,应在主服务器上的 agent 配置中指定私钥,以允许主服务器连接。...示例: docker run jenkins/ssh-agent:jdk8-windowsservercore-1809 "" 使用 docker run 时,还可以公钥作为环境变量传递

    1.5K10

    远程触发Jenkins的Pipeline任务

    场景 虽然能配置提交代码Git时触发Jenkins任务,但有时并不需要每次提交代码都触发,而是仅在有需要时才执行。...; Http请求的参数,如何作为pipeline脚本参数; 假设有Jenkins任务A,某时刻有10个触发该任务的请求同时到达,Jenkins如何处理?...接下来设置请求参数,如下图红框所示,先输入固定的ref参数(插件用到的,必须输入),然后再把repositoryURL和branch也设置好,即Github代码仓库地址和分支名,这样http请求中repositoryURL...和branch参数就能传递后面的pipeline脚本中去了; 接下来可以写pipeline脚本了: pipeline { agent any triggers { GenericTrigger...至此,通过Http触发Jenkins的pipeline实战就完成了,我们可以通过程序、脚本等各种手段,按照不同的需求来触发Jenkins任务,并传给任务不同的参数

    1.4K20

    Jenkins 为Jenkins添加Windows Slave远程执行python项目脚本

    如上,输入结点名称,勾选 【Dumb Slave】,点击【OK】 说明:根据官方文档,如果是添加jenkins外部的主机,虚拟机器等似乎要添加。 ?...因此这个值会影响Jenkins系统的负载压力. 使用处理器个数作为其值会是比较好的选择。...在这种模式下,Jenkins会尽可能的使用这个节点.任何时候如果一个构建能使用这个节点构建,那么Jenkins就会使用它. 2)只允许运行绑定这台机器的Job 这种模式下,Jenkins只会构建哪些分配到这台机器的...这种模式下,jenkins会尽量保持salve在线。如果不通过用户援助,启动slave, 如果slave不可获取,jenkins周期性的尝试启动slave。...构建时,会自动执行远程主机(192.168.30.174)上的python项目脚本 附pdf版下载地址: 为Jenkins添加Windows Slave远程执行python项目脚本.pdf

    2.5K30

    JenkinsJenkins集成Android全自动参数化打包专题

    连接WindowsSlave节点上建立连接用脚本 打开cmd命令行窗口,输入如下命令: Cmd C:\Users\hjdev\.jenkins java -jar agent.jar -jnlpUrl...项目脚本 http://blog.sina.com.cn/s/blog_13cc013b50102w1yr.html 【JenkinsJenkins配置从节点,实现远程主机调用功能 https://www.cnblogs.com...六)---jenkins远程部署脚本 [原]Jenkins(七)---jenkins项目编译测试发布由maven构建的web项目 [原]Jenkins(八)---jenkins构建项目报错时发送错误报告邮件...[原]Jenkins(九)---jenkins分别发布多个项目多个远程主机 [原]Jenkins(十)---jenkins注册管理员admin并赋所有权限给admin [原]Jenkins(十一)-...https://www.cnblogs.com/jsonhc/p/7372359.html [原]Jenkins(九)---jenkins分别发布多个项目多个远程主机 https://www.cnblogs.com

    42930

    Jenkins你还不会玩,打脸不!

    触发远程构建(例如,使用脚本): 该选项会提供一个接口,可以用来在代码层面触发构建。这里不做介绍,后期可能会用到。...Send files or execute commands over SSH:发送文件远程主机或执行命令(脚本) Name: SSH Server的名称。...SSH Server可以在jenkins-系统设置中配置。 source files: 需要发送给远程主机的源文件。 Remove prefix: 移除前面的路径。...如果不设置这个参数,则远程主机会自动创建构建源 source files 包含的那个路径。 Remote directory: 远程主机目录。...Exec command:在远程主机上执行的命令,或者执行的脚本。 6.构建后操作 构建后操作,就是对project构建完成后的一些后续操作,比如生成相应的代码测试报告。

    2K30

    使用 Docker 全自动构建 Java 应用

    配置好仓库地址以后,用来远程触发 job 的 token 也就生成了。为了设置远程触发,我们需要打开 “Trigger builds remotely” 选项, 然后把上面的 token 设置这里。...Install-plugins.sh - 这是我们用来安装所有所需插件的脚本。我们会把这个脚本复制 Jenkins 镜像,并把插件名作为它的参数。容器启动好以后,这个脚本就会根据插件名对应的插件。...HOST_DOCKER_GROUP_ID 被设为了构建参数,我们要在构建时宿主机的 Docker 用户组 id 做为参数传进来参与构建。...:6.7 \ docker-commons:1.14 \ 接下来是 install-plugins.sh 脚本,把要安装的插件作为参数传给脚本。...为了让未授权的 jenkins 用户复制内容 volume, 所有东西复制 /usr/share/Jenkins/ref/。

    1.4K10

    前端工程化:保姆级教学 Jenkins 部署前端项目

    持续部署 作为持续交付的延伸,持续部署可以自动应用发布生产环境。 ◆ Jenkins 安装 示例服务器为 阿里云 CentOS 服务器。...构建目标:部署目标主机 在真实的开发场景中,Jenkins 几乎不会和前端资源放到一个服务器。大多数情况下 Jenkins 所处的服务器环境就是一个工具用的服务器,放置了一些公司中常用的工具。...先修改原有的构建脚本。因为要发布远程,所以原有的发布命令要进行去除。 npm install yarn -g yarn install yarn build# 只打包,然后删除文件夹。...表示文件并没有被移动到远程主机中。...注意:参数就是描述内容,可以是任何内容。不要想歪了只能传递 Build Deploy 这些。 steps:描述了 stage 中的步骤,可以存在多个。 了解这里还是不够的。

    1.2K10

    3天学会Jenkins_13_自动部署项目远程服务器

    可以只需配置密码或者是公钥,两者均可 服务器配置需要指定主机地址和主机登录用户名,远程拷贝目录 点击Test Configuration可以测试是否可以连接远端服务器成功 ?...Gitlab项目Settings -> Integrations配置Jenkins webhook 第二步中的webhook链接拷贝URL文本框中 ?...4 项目编译打包及远程发布 上面的一系列操作,我们已经Jenkins和Gitlab通过webhook连接起来了,接下来只需要实现Jenkinfile文件的执行内容,即实现编译、打包及远程发布功能。...其实就是写脚本。 部署形式可分为两种: 本地部署 直接编写本地部署脚本就好了。...远程部署 通过ssh或者ftp方式编译打包的的软件包通过远程拷贝目标服务器上,然后执行安装,典型的自动化执行实现方式就是借助expect命令,包括输入用户密码和通过跳转机登录到远端服务器上之类的操作

    1.5K30

    安全研究 | Jenkins漏洞分析

    2、服务探测与发现 fofa: app=”Jenkins” 3、CVE-2017-1000353 Jenkins-CI远程代码执行 3.1、漏洞描述 Jenkins未授权远程代码执行漏洞, 允许攻击者序列化的...该漏洞通过AST转换注释(如@Grab)应用于源代码元素,可以在脚本编译阶段避免脚本安全沙箱保护。...可以看到运行POC后,ceye后台已经有了目标主机的访问记录。证明该命令已经在远程主机被执行了。 ?...10、CVE-2019-10392 Jenkins 2k19认证远程代码执行 10.1、漏洞描述 Git客户端插件接受用户指定的值作为git ls-remote调用的参数,以验证指定URL处是否存在Git...在脚本命令行中输入下面的语句,即可执行相应的命令: println "whoami".execute().text ?

    5.7K10

    在 ubuntu 中愉快的安装 Jenkins

    安装前的准备 一台 ubuntu 主机(本篇文章使用的是 Ubuntu Server 16.04.1 LTS) 安装教程 远程连接 ubuntu 的软件 WinSCP,PuTTY 下载使用 如果你恰好是腾讯云的...8080 开放指定端口 ps:在腾讯云的主机中默认防火墙是关闭的(sudo ufw status查看) Jenkins的配置 至此,可以通过 http://ip:8080 访问 Jenkins 了,...正式开启 Jenkins 之旅 踩过的坑 shell 脚本无法访问环境变量 解决方案为:首行添加 #!.../bin/bash -ilex,此为我安装 nvm 后在终端可以访问, Jenkins 构建 shell 脚本时无法访问的解决方案 通过-i 参数和-l 参数让 bash 为 login shell...最近十分不容易的用Jenkins+Docker把项目部署服务器了,在找资料的过程中,发现很难一下就找到自己想要的,果然,还是得自己动手总结了。

    1.8K10

    Jenkins 配合 Kubernetes 实现服务持续集成的实践和建议

    端口;更简单方法,直接远程一台包含 docker 基础服务的服务器上执行,但无论如何,你可能都要折腾一下,改变现有使用方式。...,jenkins 拉取代码、maven 编译; 这里假设你已经完成 Jenkins 安装、远程工具、java 编译环境配置等。...参数化构建,在构建之前输入版本号,如果没有输入,填写默认值即可。...3、在构建过程中需要注意问题 docker 每次镜像构建 tag 不一样,如何传递 k8s yaml中?...docker 镜像构建过程中通过参数化构建已经可以修改版本号,同样的,首先在 k8s 编排文件镜像部分添加能够已知占位符; 然后把这个版本号动态传递并替换到 k8s yaml 中; sed -i 's/

    1.8K20

    DevOps整合Jenkins+k8s+CICD

    OPERATE:运维团队代码部署生产环境中。 MONITOR:项目部署上线后,需要持续的监控产品。...Git作为版本控制工具,GitLab作为远程仓库。...Jenkins最主要的工作就是GitLab上可以构建的工程代码拉取并且进行构建,再根据流程可以选择发布测试环境或是生产环境。...一般是GitLab上的代码经过大量的测试后,确定发行版本,再发布生产环境。 CI/CD可以理解为: CI过程即是通过Jenkins代码拉取、构建、制作镜像交给测试人员测试。...持续集成:让软件代码可以持续的集成主干上,并自动构建和测试。 CD过程即是通过Jenkins打好标签的发行版本代码拉取、构建、制作镜像交给运维人员部署。

    2.8K40

    实例:Jenkins构建项目参数设置教程

    -->进入系统设置 --添加管理员邮箱 --Publish over SSH-->在Passphrase填写部署jenkins服务器的登录密码-->并增加新的远程服务器 在SSH Servers中添加以下参数...Name 名字自定义 Hostname 主机名填需要远程登录的服务器ip地址 Username 用户名填root Remote Directory 远程服务器目录填已存在的目录 添加完点击Test...Switches(输入构建命令:clean build)--> Root build script (输入构建工作目录,该目录为git仓库中项目文件夹名称) 再次增加构建步骤-->选择Send files...or execute commands over SSH Name选择发送jar包所在服务器的名称 source files中填写jar所在目录名称 Exec command中写入三行脚本代码: sh...-x /shell/start.sh news-1.0-SNAPSHOT.jar 保存完成配置 备注:shell脚本放在需要拉取代码的远程服务器上,这里放在ip:192.168.1.221服务器的/shell

    3.5K80

    Jenkins敏捷开发 自动化构建工具

    附录中列举的环境配置统一在宿主机上完成,不在 Jenkins 服务内部配置,使用默认值即可。 2、添加项目 在宿主机上将待构建项目的源代码克隆本地,执行 shell 脚本完成手动构建。...在 Jenkins 管理工作台新建一个同名的空项目,克隆的源代码整体复制 Jenkins 的工作空间下,默认位置为/root/.jenkins/workspace,委托给 Jenkins 代为自动管理该项目...(三)免密登录 使用 URL 触发构建事件,需要配置免密登录,即在不需要输入用户名和密码的情况下,通过远程调用 shell 脚本触发构建事件,此 shell 脚本本质上是 GET 的方式请求某个指定的路径...(3)客户端使用 编写脚本脚本分发给开发者,自动化构建便可以愉快的开始了。使用curl多参数时,&符号需要转义。 curl {Jenkins URL}/buildByToken/build?...通常使用 Docker 项目发布包构建成镜像,然后发布镜像仓库中。可执行的镜像发布镜像仓库之后,有两种比较常用的后续方案与应用服务器交互。

    91940

    Jenkins实践之入门体验

    并且确认部署Jenkins主机能够访问外网(需要下载插件)。 下载/安装/启动 直接下载jenkins.war,然后执行:java -jar jenkins.war就可以启动jenkins了。...点击“新建任务”,输入任务名称,选择“构建一个maven项目”,点击“确定”按钮进入到任务配置界面,分别对如下参数进行配置: General:配置任务基本信息,如:任务描述等等。...部署项目 构建完成够可以通过执行脚本的方式程序部署的目标服务器,分三步走: 第一步:配置免密码登录方式登录目标服务器(SSH免密码登录) 第二步:构建的文件复制目标服务器(使用scp命令)...第三步:通过插件“Jenkins SSH”在目标服务器执行脚本进行程序部署 【参考】 http://www.liaoxuefeng.com/article/001463233913442cdb2d1bd1b1b42e3b0b29eb1ba736c5e000...使用Jenkins进行持续集成 http://fanlychie.github.io/post/jenkins-remote-ssh.html Jenkins SSH 远程执行 Shell 脚本

    95140

    持续交付之Jenkins+Ansible+Python搭建自动化部署框架(win版)

    主要特点 使用 Jenkins 作为一站式部署平台,方便选择参数,自动协调各主机,自动运行部署命令,自动通知等 支持快速回滚指定旧版本 支持面向集群进行编排、追踪和同步任务 实现钉钉自动化通知及跳转功能...技术选型 执行引擎:Ansible 自动通知:钉钉webhook & python Jenkins 插件: Shell:执行 shell 脚本 Active Choices Plugin:动态交互参数...如果需要重新启动 username 并且 password 已设置和参数,则脚本将从重新启动后自动重新启动并登录。该脚本继续执行,直到不需要其他操作并且PowerShell版本与目标版本匹配为止。...如果未设置 usernam 和 password 参数脚本提示用户手动重新启动并在需要时登录。下次登录用户时,脚本将从上次停止的地方继续,然后继续该过程,直到不需要其他操作为止。...自动发布中交互式参数应用 Jenkins 执行日志: ?

    2.7K10
    领券