Azure DevOps (六) 通过FTP上传流水线制品到Linux服务器
上一篇我们实现了把流水线的制品保存到azure的流水线制品仓库里去,本篇我们会开始研究azure的发布流水线。
本篇要研究的是把流水线仓库的制品发布到任意一台公网的linux服务器上去,所以我们先研究FTP和流水线的联动。
首先我们需要创建一条发布流水线,点击左侧的Releases,创建新的流水线,选择我们在前几篇文章中发布到仓库的制品。

创建好流水线后,点击Stages添加第一个步骤,这里我们选择Empty Job,填入一下基础的信息,然后点击我们创建好的步骤进行任务的编辑,
进来之后azure会默认给我们添加了一个agent,我们可以理解为agent就是我们的执行器,他会去帮我执行接下来我们定义的各种自动化任务,
因为我们的目的是要执行linux的命令并且上传文件到linux服务器上,所以我们要选择agent的类型为ubantu.


agent设置好之后,我们接下来创建两个task,他们的作用分别为:
1.查看从流水线仓库下载过来的制品是否正确。
2.使用Ftp上传到一个公网的服务器上去。
首先创建第一个task,我们点击agent上的加号,在右侧搜索bash,点击add,添加一个bash操作到我们的流水线上。

然后我们选中Bash选择模式为online,然后在里面写一些简单的脚本来查看我们的流水线制品。

然后我们添加第二个task,我们在右侧搜索FTP

然后填写一下FTP的信息, 这里Authentication Method我们选择输入验证,然后填入我们的FTP信息,注意URL要带上ftp://

填写好之后保存并一下我们的发布流水线,这里顺道贴一下FTP的安装命令
1、查看是否已经安装了vsftpd
vsftpd -version 2、安装vsftpd(CentOS7)
yum install -y vsftpd 3.创建一个目录
mkdor /home/ftp 4.授权
chmod 777 /home/ftp 5.创建用户
useradd -d /home/ftp -s /bin/bash myftp 6.设置密码
passwd myftp
发布流水线创建好之后,我们稍微回去改造一下之前的编译流水线,毕竟总不能每次都把全量的代码传过去,我们让制品每次只上传编译出来的jar包。
我们修改一下targetPath,指定到我们要上传的文件上去。
- task: PublishPipelineArtifact@1
inputs:
targetPath: '$(Pipeline.Workspace)/s/webhook/target/demo-app.jar'
artifact: 'webhook'
publishLocation: 'pipeline'
接下来运行一下我们的流水线,点击Create a new release,然后进入就会看见已经开始运行了。

点击logs,我们可以看到,流水线已经开始把制品上传到了服务器,我们同时去服务器上验证一下上传的结果


上传成功,完美。
到这里打通流水线和FTP就结束了,虽然文章看着很短,但是中间采坑的过程很长,不过摸着过来了就好,下一篇我们会继续研究azure的功能。
Azure DevOps (六) 通过FTP上传流水线制品到Linux服务器的更多相关文章
- windows上python上传下载文件到linux服务器指定路径【转】
从windows上传文件到linux,目录下的文件夹自动创建 #!/usr/bin/env python # coding: utf-8 import paramiko import datetime ...
- SecureCRT 上传/下载文件到Linux服务器
1. 安装上传/.下载软件 a) cd /tmp wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz tar zxvf lrzsz-0. ...
- 上传下载文件到Linux服务器
转自链接:https://blog.csdn.net/drdongshiye/article/details/89430535Mac的终端是十分强大 , 可以通过命令进行上传下载下载文件夹 scp - ...
- FTP上传与下载
1.连接 先假设一个ftp地址 用户名 密码 FTP Server: 192.168.1.125 User: administrator Password: abc123 2. 打开win ...
- windows系统下ftp上传下载和一些常用命令
先假设一个ftp地址 用户名 密码 FTP Server: home4u.at.china.com User: yepanghuang Password: abc123 打开windows的开始菜单, ...
- windows下ftp上传下载和一些常用命令
先假设一个ftp地址 用户名 密码 FTP Server: home4u.at.china.com User: yepanghuang Password: abc123 打开windows的开始菜单, ...
- PHP使用FTP上传文件到服务器(实战篇)
我们在做开发的过程中,上传文件肯定是避免不了的,平常我们的程序和上传的文件都在一个服务器上,我们也可以使用第三方sdk上传文件,但是文件在第三方服务器上.现在我们使用PHP的ftp功能把文件上传到我们 ...
- PHP FTP上传文件
第一步:建立一个新的 FTP 连接. ftp_connect(host,port,timeout); host必需,规定要连接的 FTP 服务器,可以是域名或 IP 地址,后面不应以斜线结 ...
- .net FTP上传文件
FTP上传文件代码实现: private void UploadFileByWebClient() { WebClient webClient = new WebClient(); webClient ...
随机推荐
- Oracle用户创建、删除和授权等方法总结
一.查看用户及权限 1.查询所有用户: 1.1.查看所有用户基本信息 select * from all_users; 1.2.查看所有用户相信信息 select * from dba_users; ...
- 神奇小证明之——世界上只有5个正多面体+构造x3=2a3
今天我彻底放飞自我了...作业还没写完...但就是要总结一些好玩的小性质...谁给我的勇气呢?
- Solution -「ABC 213G」Connectivity 2
\(\mathcal{Description}\) Link. 给定简单无向图 \(G=(V,E)\),点的编号从 \(1\) 到 \(|V|=n\).对于 \(k=2..n\),求 \(H= ...
- GitLab API使用小结
GitLab API使用小结 背景描述 需求描述: 最近因为工作上的需求,需要对GitLab进行大批量的操作,又因为服务器不在境内,所以所有的操作都需要连接VPN来进行FQ访问.目前大概有6000多个 ...
- jenkins持续集成go应用
上文讲到使用supervisor管理我们的终端应用,这次讲一下使用jenkins持续集成 下面分别讲一下pipeline里每一个段落的含义 agent any 使用任意节点构建 parameters ...
- IDEA中快速排除maven中的依赖
选中该模块 点击show dependenties 切换试图 选中要排除的依赖,右击 选择Execlude,然后选择需要在哪个模块添加排除依赖 完成
- 【windows 访问控制】一、访问令牌
访问令牌(Access tokens) 访问令牌是描述进程或线程的安全上下文的对象.令牌中的信息包括与进程或线程关联的用户帐户的标识和特权信息.当用户登录时,系统通过将用户密码与安全数据库(如域认证中 ...
- 解构函数(Deconstruct)
元组的解构是C#内置支持的. var countrInfo = ("Malawi", "Lilongwe", io); (string name, string ...
- 60天shell脚本计划-10/12-渐入佳境
--作者:飞翔的小胖猪 --创建时间:2021年3月13日 --修改时间:2021年3月17日 说明 每日上传更新一个shell脚本,周期为60天.如有需求的读者可根据自己实际情况选用合适的脚本,也可 ...
- WPS:在Word中插入Visio绘制的流程图
在Word菜单栏 插入->对象 如果Visio绘图已经保存为了文件,可以选择由文件创建