使用Hashicorp Packer构建自定义管道构建平面虚拟机映像
可以构建自定义pipeline构建平面VM映像包括您自己的工件。在这个例子中,我们将引用Hashicorp打包器和Ubuntu 20,但是任何虚拟机映像构建过程(AWS云形成,PowerShell或其他)都可以与我们支持的任何操作系统一起使用。
来构建自定义构建平面VM映像:
下载buildplane包(用于Centos的RPM或用于Windows的tar文件)到将用于构建VM映像.
此API只能由经过身份验证的用户使用。
例子curl——request GET——url https://my-pipelines-api-url/v1/passthrough/artifacts/buildPlane-x86_64-Ubuntu_20.04.deb——output buildPlane-x86_64- ubuntu_20 .04 deb buildPlane包名称:buildPlane-x86_64- ubuntu_18 .04 buildPlane-x86_64- ubuntu_20 .04 deb buildPlane-x86_64- centos_7 .04。rpm buildPlane-x86_64-CentOS_8。rpm buildPlane-x86_64-WindowsServer_2019.tar.gz
- 更新你的封隔器(或云的形成)模板:
- 将buildplane文件复制到
/ tmp /
- 安装它(使用dpkg、yum或untar,具体取决于类型)
- 运行
boot.sh
(或boot.ps1
如果创建W19图像)。该文件的路径为/var/opt/jfrog/pipelines/nodeInit/x86_64/ < OS > / boot.sh
- 将buildplane文件复制到
- 构建虚拟机映像。
- 在下一步中使用生成的虚拟机映像id。
对于每个新的管道版本,都应该执行此步骤。
使用Ubuntu 20构建平面的地形模板文件的示例“provisioning”部分
" provisiers ": [{"type": "file", "source": "buildPlane-x86_64-Ubuntu_20.04.deb", "destination": "/tmp/buildPlane-x86_64-Ubuntu_20.04.deb"}, {"type": "shell", "inline": ["sudo dpkg -i /tmp/buildPlane-x86_64-Ubuntu_20.04.deb", "sudo /var/opt/jfrog/pipelines/ nodeinit /x86_64/ ubuntu_20 .04/boot.sh"]}
使用API将虚拟机镜像添加到管道中
要将虚拟机映像添加到Pipelines,请执行以下操作se的POST / v1 / buildPlaneImages
API.
示例请求:
curl——location——request POST 'http://:8082/pipelines/api/v1/buildPlaneImages' \——header 'Authorization: Bearer ' \——header 'Content-Type: application/json' \——data-raw '{"name": "eu-central-1 image for x86_64 Ubuntu_20.04", "masterIntegrationId": 46, "imageId": "ami-07f469736e6545c8a", "region": "eu-central-1", "isAvailable": true, "architecture": "x86_64", "operatingSystem": "Ubuntu_20.04"} "
示例响应:
{"metadataPropertyBag": {}, "id": 8, "name": " euu -central-1 image for x86_64 Ubuntu_20.04", "masterIntegrationId": 46, "imageId": "ami-07f469736e6545c8a", "region": " euu -central-1", "isAvailable": true, "architecture": "x86_64", "operatingSystem": "Ubuntu_20.04", "createdAt": "2021-01-06T00:00:00.000Z", "updatedAt": "2021-01-06T00:00:00.000Z"}
使用UI将虚拟机镜像添加到管道中
请执行以下步骤,通过UI将虚拟机映像添加到pipeline中:
- 去政府→管道→节点池然后点击构建图像选项卡。
点击添加构建映像.
在生成的“创建构建映像”屏幕中,提供以下信息:名字
节点池的字母数字友好型名称 云提供商类型
AWS、Azure或GCP 形象标识
虚拟机镜像id。在AWS中,这将是AMI id 地区
虚拟机镜像可用的云提供商区域 体系结构
x86_64架构 操作系统
我们支持的操作系统 - 点击保存.
新添加的构建映像将出现在列表中。 现在使用上面的构建平面映像Id创建一个节点池。您创建的生成映像可在build image下拉列表中选择。有关更多信息,请参见管理管道节点池.