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

Jenkins pipelines在通过sshPublisher启动npm的http服务器后执行挂起

Jenkins pipelines是一种用于构建、部署和自动化软件交付流程的工具。它基于Jenkins的Pipeline插件,允许用户以代码的方式定义和管理整个软件交付流程。

在Jenkins pipelines中,通过sshPublisher插件可以实现通过SSH连接到远程服务器,并执行一系列命令。在这个特定的场景中,我们可以使用sshPublisher插件来启动npm的HTTP服务器。

npm是Node.js的包管理器,它允许开发人员在项目中安装、管理和共享代码包。通过启动npm的HTTP服务器,我们可以将项目的前端资源(如HTML、CSS、JavaScript文件)部署到服务器上,以便通过浏览器访问。

执行挂起是指在Jenkins pipelines中暂停流水线的执行,等待某个条件满足后再继续执行后续步骤。在这个场景中,我们可能需要等待npm的HTTP服务器完全启动后再执行后续的测试或部署操作。

为了实现这个过程,我们可以使用Jenkins的input步骤来暂停流水线的执行,并等待用户手动确认。一旦用户确认,流水线将继续执行后续的步骤。

以下是一个示例的Jenkins pipeline代码片段,展示了如何通过sshPublisher启动npm的HTTP服务器并执行挂起:

代码语言:txt
复制
pipeline {
    agent any
    
    stages {
        stage('Start HTTP Server') {
            steps {
                sshPublisher(publishers: [sshPublisherDesc(configName: 'SSH Config', transfers: [sshTransfer(execCommand: 'npm start')])])
            }
        }
        
        stage('Wait for HTTP Server') {
            steps {
                input(message: 'Please confirm that the HTTP server has started', ok: 'Continue')
            }
        }
        
        // 执行其他步骤,如测试、部署等
    }
}

在这个示例中,我们假设已经配置了一个名为"SSH Config"的SSH连接配置,用于连接到远程服务器。通过sshPublisher插件的sshTransfer参数,我们执行了"npm start"命令来启动npm的HTTP服务器。

接下来,通过input步骤,我们暂停流水线的执行,并等待用户手动确认。用户可以在Jenkins界面上看到提示信息,并选择"Continue"来继续执行后续步骤。

需要注意的是,以上示例中的代码仅展示了Jenkins pipeline中的一部分,实际使用时需要根据具体需求进行适当的修改和完善。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云服务器(CVM):提供可扩展的云服务器实例,适用于各种计算场景。产品介绍链接
  • 腾讯云云函数(SCF):无服务器计算服务,支持按需运行代码,无需管理服务器。产品介绍链接
  • 腾讯云容器服务(TKE):基于Kubernetes的容器管理服务,简化容器化应用的部署和管理。产品介绍链接
  • 腾讯云对象存储(COS):安全可靠的云端存储服务,适用于存储和管理各种类型的数据。产品介绍链接
  • 腾讯云数据库(TencentDB):提供多种类型的数据库服务,包括关系型数据库、NoSQL数据库等。产品介绍链接
  • 腾讯云人工智能(AI):提供丰富的人工智能服务和工具,包括图像识别、语音识别、自然语言处理等。产品介绍链接
  • 腾讯云物联网(IoT):提供全面的物联网解决方案,帮助连接和管理物联网设备。产品介绍链接
  • 腾讯云区块链(BCS):提供安全可信的区块链服务,支持快速搭建和管理区块链网络。产品介绍链接
  • 腾讯云视频处理(VOD):提供视频处理和分发服务,支持视频转码、截图、水印等功能。产品介绍链接

请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求和情况进行评估和决策。

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

相关·内容

用代码实现流水线部署,像诗一般优雅

之前我们部署步骤都是通过 Jenkins UI 界面上配置出来,但其实 Jenkisn 2.x 版本已经可以支持编写代码方式来启动自动化部署了,通过“代码”来描述部署流水线。...也可以通过如下 URL 访问 http://:8080/manage/credentials/store/system/ 3.4 测试 pipeline 执行 我们可以运行一下这个项目来测试...sshPublisher { ... }: 这是一个 SSH 发布器,用于通过 SSH 连接到远程服务器执行相应操作。...sshPublisher { ... }: 这是一个 SSH 发布器,用于通过 SSH 连接到远程服务器执行相应操作。...echo "开始更新第 sshPublisher { ... }: 这是一个 SSH 发布器,用于通过 SSH 连接到远程服务器执行相应操作。

24710

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

从前端角度考虑,某些情况下肯定是不能直接通过自动化方式将最终 build 结果直接扔到生产机。持续交互就是可持续性交付供生产使用最终 build。最后通过运维或者后端小伙伴进行部署。...启动服务访问服务器地址 + 8080 端口,Jenkins 默认为 8080 端口。...然后 构建 中选择 增加构建步骤 -> 执行 shell 输入打包发布相关命令。Jenkins 会逐行执行。...npm install yarn -g yarn install yarn build # 打包 build 文件 tar -zcvf dist.tar.gz dist/ # 删除 build 文件...构建目标:部署到目标主机 真实开发场景中,Jenkins 几乎不会和前端资源放到一个服务器。大多数情况下 Jenkins 所处服务器环境就是一个工具用服务器,放置了一些公司中常用工具。

1.2K20

从0搭建属于自己Jenkins持续集成平台

前期准备 centos7 服务器一台 确认是否能安装docker  Docker要求CentOS系统内核版本高于3.10.通过uname -r命令查看你当前内核版本。...://blog.csdn.net/minicto/article/details/73539986 Jenkins初始化  启动成功输入 http://服务器:9090/ 如果无法访问,请检查一下防火墙端口是否开放...构建 构建操作 将jar包发送到相应服务器。 Source files jar包路径。支持通配符匹配....注意点, 之前配置服务器时也配置了Remote directory,这时候部署实际目录是,服务器设置远程目录+现在配置远程目录。...Exec command 执行脚本,主要用于将jar发送到目标服务器执行相应启动脚本。 配置完成点击保存即可。

93941

DevOps整合Jenkins+k8s+CICD

这看似两个目标不同团队需要协同完成一个软件开发。 开发团队指定好计划并完成coding,需要提供到运维团队。 运维团队向开发团队反馈需要修复BUG以及一些需要返工任务。...整体软件开发流程包括: PLAN:开发团队根据客户目标制定开发计划 CODE:根据PLAN开始编码过程,需要将不同版本代码存储一个库中。 BUILD:编码完成,需要将代码构建并且运行。...一般是GitLab上代码经过大量测试,确定发行版本,再发布到生产环境。 CI/CD可以理解为: CI过程即是通过Jenkins将代码拉取、构建、制作镜像交给测试人员测试。...up -d #授权 chmod 777 data/ cat /data/jenkins/data/hudson.model.UpdateCenter.xml #重新启动Jenkins容器,由于Jenkins...-生成流水线脚本添加至git仓库修改Jenkinsfile 九、Jenkins中pipeline流水线,k8s部署,企业微信推送消息 1.Jenkins服务器设置免密登入k8s-mast服务器 #

2.5K40

Jenkins+Docker+SpringCloud微服务持续集成(下)

把多个项目提交SonarQube进行代码审核 多个项目打包及构建镜像、上传私服 完成微服务多服务器远程发布 Jenkins项目中增加一个Extended Choice Parameter参数 192.168.18.103...○ 只有一条生产部署服务器。 ○ 每个微服务只有一个实例,容错率低。 ● 优化方案: ○ 一个Jenkins工程中可以选择多个微服务同时发布。...○ 一个Jenkins工程中可以选择多台生产服务器同时部署。 ○ 每个微服务都是以集群高可用形式部署。...://192.168.18.103:10086/eureka,http://192.168.18.104:10086/eureka 启动微服务时候,加入参数spring.profile.active...---- Jenkins项目中增加一个Extended Choice Parameter参数 Jenkins项目中增加一个Extended Choice Parameter参数目的是可以选择部署到那个服务器

41340

Jenkins之SpringCloud微服务+Vue+Docker持续集成

/etc/docker目录不存在,需要自己创建,docker启动也会自己创建 # 为了期望我们镜像下载快一点,应该定义一个镜像加速器,加速器国内 mkdir /etc/docker vim /etc...# 创建完成再点进去将里面ID复制出来,然后放到Jenkinsfile里面 1d961bbc-82a1-41a2-b146-52bcaffe44f7 将harbor用户名和密码通过凭证和pipline...做jenkins与生产部署服务器免密 # [root@jenkins-2 ~]# ssh-copy-id 192.168.1.6 ? 配置微服务启动端口 ?...Jenkins配置Nginx服务器 注意修改前端代码里面地址为网关地址 'use strict' module.exports = { NODE_ENV: '"production"', //...进行打包 sh ''' npm install nmp run build ''' } // 项目部署 sshPublisher(publishers: [sshPublisherDesc

93773

Jenkins扩展共享库进阶

但是实际项目中,CI/CD其实是由运维来管理,这样就会导致运维、开发都要通过版本库去修改Jenkinsfile、项目代码。...另,通过扩展共享库我们可以提高构建操作复用,有效减少构建代码量;Jenkinsfile、扩展库还可以作为备份托管版本库中,可谓是两全其美啊。...此时是无法通过GIT_PREVIOUS_SUCCESSFUL_COMMIT变量来获取上一次版本,因此只能将其写入文件存放。 (2)打包 通过npm 打包vue项目生成dist。...2.回滚-rollback 回滚版本存在于archiveArtifacts归档构建目录中,在此目录中 ${JENKINS_HOME}/jobs/`echo ${JOB_NAME}|awk -F'/...3.分发更新 Jenkins通过sshpublisher将版本包dist_temp.zip 分发到远程web服务器上,通过rsync对项目目录dist进行更新,最后销毁dist_temp.zip。

2K20

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

从前端角度考虑,某些情况下肯定是不能直接通过自动化方式将最终 build 结果直接扔到生产机。持续交互就是可持续性交付供生产使用最终 build。最后通过运维或者后端小伙伴进行部署。...然后 构建 中选择 增加构建步骤 -> 执行 shell 输入打包发布相关命令。Jenkins 会逐行执行。...npm install yarn -g yarn install yarn build# 打包 build 文件tar -zcvf dist.tar.gz dist/# 删除 build 文件rm...构建目标:部署到目标主机 真实开发场景中,Jenkins 几乎不会和前端资源放到一个服务器。大多数情况下 Jenkins 所处服务器环境就是一个工具用服务器,放置了一些公司中常用工具。...3,选择 nodejs: Provide Node & npm bin/folder to Path 4,选择 sshPublisher: Send build artifacts over SSH,

98410

Jenkins构建Maven项目

触发远程构建 其他工程构建触发 定时构建 轮询SCM(不建议) Git Hook自动触发构建 安装Gitee Hook Jenkins设置自动构建 项目中添加webhook Jenkins参数化构建...添加构建发送邮箱 ---- Jenkins项目构建类型 Jenkins中自动构建项目的类型有很多,常用有如下三种: 自由风格软件项目(FreeStyle Project) Maven项目(Maven...● 持久:无论是计划内还是计划外服务器重启,Pipeline都是可恢复。 ● 可停止:Pipeline可以接受交互式输入,以确定是否继续执行Pipeline。...● Pipeline支持两种创建方法:可以直接在JenkinsWeb UI界面输入脚本,也可以通过创建一个Jenkinsfile脚本文件放入到项目源代码库中(推荐)。...安装Gitee Hook Jenkins设置自动构建 ---- 项目中添加webhook ---- Jenkins参数化构建 ● 有时项目构建过程中,我们需要根据用户输入动态传入一些参数

1.4K20

基于Jenkins PipelineASP.NET Core持续集成实践

它强调是,不管怎么更新,软件是随时随地可以交付。   持续部署是持续交付下一步,指的是代码通过评审以后,自动部署到生产环境。它强调是代码在任何时刻都是可部署,可以进入生产阶段。...相信很多童鞋都已经使用Jenkins或者计划使用Jenkins来代替传统的人工发布流程了,因此我们创建了很多自由风格(Free Style)构建任务用于多个Job,而我们经常会听到说流水线任务,那么流水线是什么呢...Node: 节点,一个Node就是一个Jenkins节点,或者是Master,或者是Slave,是执行Step具体运行期环境。...至于如何安装配置FreeSSHD,可以参考这一篇《freeSSHDwindows环境下搭建SFTP服务器》。...(2)持续发布:实现编译+发布到具体测试环境   由于开发阶段,我不需要每次Push都进行发布,因此我这里设置是手动Jenkins中触发发布任务来实现自动化发布。

76410

别当工具人了,手摸手教会你 Jenkins

/jenkins,需要改地方如下(也可以选择不改): JENKINS_USER="root" JENKINS_PORT="8888" 启动 systemctl start jenkins 访问 通过浏览器访问...http://服务器IP:8888/,看到以下页面说明启动成功了 ?...安装包上传到服务器上,通过 tar -xzf apache-tomcat-8.5.47.tar.gz 解压,然后运行 bin目录下 start.sh启动 Tomcat ,看到以下结果则说明启动成功:...SSH:通过ssh发送文件或执行命令 安装 Publish Over SSH 插件 因为我们要部署服务器Jenkins 不在同一个服务器上,所以我们需要这个插件来远程部署 安装好插件我们需要先配置远程服务器..., Jenkins 服务器上输入 ssh-copy-id 远程服务器IP 将公钥拷贝到远程服务器上,然后 Jenkins 系统配置中添加服务器信息,如下: ?

98820

基于Jenkins PipelineASP.NET Core持续集成实践

Node: 节点,一个Node就是一个Jenkins节点,或者是Master,或者是Slave,是执行Step具体运行期环境。...至于如何安装配置FreeSSHD,可以参考这一篇《freeSSHDwindows环境下搭建SFTP服务器》。...(2)持续发布:实现编译+发布到具体测试环境 ?   由于开发阶段,我不需要每次Push都进行发布,因此我这里设置是手动Jenkins中触发发布任务来实现自动化发布。...这里是Email通知必填SMTP服务器配置。   最后,是SSH服务器声明,指定可以进行SSH发布服务器有哪些,IP又是多少: ?...三只松鼠,《jenkins + pipeline构建自动化部署》 ofnhkb1,《.NET项目从CI到CD-Jenkins_Pipeline应用》 作者:周旭龙 出处:http://edisonchou.cnblogs.com

1.6K10

如何在Ubuntu 16.04上Jenkins中设置持续集成管道

介绍 Jenkins是一个开源自动化服务器,目的是能够自动执行持续集成和交付软件所涉及重复性技术任务。凭借强大插件生态系统,Jenkins可以处理各种工作负载,构建,测试和部署应用程序。...为了最好地控制我们测试环境,我们将在Docker容器中运行测试我们应用程序。Jenkins启动并运行服务器上安装Docker。...可以通过运行npm install来安装依赖项,并且可以使用运行npm test来进行测试。 我们也repo中添加了一个Jenkinsfile。...完成,单击页面底部“ 保存”按钮。 执行初始构建并配置Webhook 撰写本文时,当您在界面中为存储库定义管道时,Jenkins不会自动配置webhook。...如果返回到Jenkins界面,您将看到自动启动新版本: [Jenkins新版本界面] 您可以通过提交存储库本地副本并将其推回到GitHub来启动其他构建。

6K30

devops

第3集 docker安装 开发机-》gitlab->jenkins->生产服务器 80 8080 准备两台服务器安装docker(jenkins-gitlab) 27.129 130 systemctl.../ bit http://mirror.bit.edu.cn/jenkins/ http://192.168.27.131:8080/ ⾸⻚点击Manage Jenkins _>管理插件 添加Git...:Harbor-132 hostname:192.168.27.132 username:root password:123456 remote directory:/usr/local 原有构建操作生产服务器之前...⾕歌等全球少 数⼏个公司运⾏着成千上万服务器,⽽且如此海量规模下,不得不处理部署管理问题。这推动着 他们找出解决⽅案使成千上万组件管理变得有效且成本低廉。...因 为这些应⽤运⾏容器⾥,它们不会影响运⾏同⼀台服务器其他应⽤,当你是为完全不同组织 机构运⾏应⽤时,这就很关键了。

95040

Jenkins 上轻松重用 Tekton 和 Jenkins X

它弥补了 Kubernetes 学习鸿沟并可以通过 Jenkins 调用 Tekton Pipelines。这就允许了用户没有学习 Kubernetes 相关知识前提下上手和工作。...我们 Jenkins X 项目上发现了基于 GitOps 一个好方法这样我们引用 git 中已经版本化 Tekton Tasks 和 Pipelines 可以简单实现重用或者是覆盖 所以我们通过...请确保你已经 Jenkins 服务器上安装了 Tekton Client 插件。 . 使用一个可工作模板 如果想通过一个例子上手的话,你需要 从这个模板创建一个 Git 仓库。... Jenkins 服务器上添加一个新 Freestyle project。 允许 Git 源码管理器管理你 github.com 仓库。...因为需要使 Jenkins 控制器与 pod 建立通信,这样启动会变得有点慢 - 然而 Tekton pods 本地启动运行无需任何与 Jenkins 控制器之间协作。

1.2K30

nginx+jenkins部署git前端项目

技术变化,但搭建个人站点执念没有中断。 与你同行! 购买 ECS 服务器 首先前往某云买ECS服务器,先买一个月。...部署项目 这里是 vue 项目 简述: 新建 jenkins 项目并进行设置,比较重要点是安装 node 环境,git地址配置,shell 命令输入(即你需要jenkins帮你执行操作序列) 导出目录...,linux服务器找到你nginx.conf,然后更改根目录指向和端口设置,再设置云服务器出入规则(确保能访问)不懂就看 最后修改git,然后构建,就能看到效果啦!...jenkins 是自动化构建工具,最简单就是帮你执行npm install,npm run build 这些操作。...然后自行找方法去解决,大部分问题都能通过搜索引擎解决,再耐心一点,细心一点吧。 git 上提交代码(例如在 github 提交代码),然后访问 jenkins ,点击构建,就可以了。

18410

Github Actions实现项目的CICD

添加好工作流本地修改代码,push到github,就能看到我们配置Actions起作用了。 图片 图片 部署服务器版本 上面的例子是通过github pages来实现CICD。...但是,我们开发完项目更多是通过服务器来部署。下面就来搞一波自动部署服务器。 首先,先配置好nginx,并且将打包项目放到服务器上,看看有没有正常部署。...last_ssh是传输文件执行命令,包括安装依赖,启动node进程等。 first_ssh和last_ssh开头都有两个命令好像是因为我是通过nvm来使用node原因。...添加好工作流本地修改代码,push到github,就能看到我们配置Actions起作用了。 图片 图片 部署服务器版本 上面的例子是通过github pages来实现CICD。...last_ssh是传输文件执行命令,包括安装依赖,启动node进程等。 first_ssh和last_ssh开头都有两个命令好像是因为我是通过nvm来使用node原因。

1.1K30
领券