[英]Deploy project using git With (Respository with different folder estructure than local)
我正在學習一些關於 git 和 devops 的知識,我正在嘗試使用 azure devops 管道部署幾個腳本。
我想到的流程是這樣的:
Git 觸發器 -> git 拉命令 -> 運行測試命令
在存儲庫中,我有這個文件夾結構:
project
|
└───folder1
│ file111.txt
│ file112.txt
│ ...
│
└───folder2
│ file111.txt
│ file112.txt
│ ...
│
└───folder3
│ file111.txt
│ file112.txt
│ ...
但是,對於部署,folder1 是 1 個 VM 的一部分(這個 VM 只會有這個文件夾),其他 2 個文件夾將在另一個 VM 中。
最后,folder3 需要進入 VM 中的 folder2。
VM 中的結構將是:
虛擬機1:
folder1
│ file111.txt
│ file112.txt
虛擬機2:
folder2
│ file011.txt
│ file012.txt
│ │
│ └───folder3
│ │ file111.txt
│ │ file112.txt
知道我如何使用 git 杜絕這個嗎? 根據您的經驗,這是執行此操作的最佳方法?
我想我可以使用復制文件任務,但我不確定我是否只能復制在回購中添加/修改的文件。
提前致謝
構建代理工作目錄是您將用來完成您的要求的文件夾。 當您將 Azure pipeline.yml 文件添加到 github 存儲庫時,源代碼將自動下載到 sourcesDirectory 中。 devOps 代理的默認工作目錄是C:\agent\work
。
如果您沒有多次簽出,您的存儲庫將被下載到$(Pipeline.Workspace)/s/
在 .YML 文件中,您可以添加AzureFileCopy
任務以在選定的 VM 上進行復制。 例如,根據您的文案需要,您可以有兩個或三個任務。
- task: AzureFileCopy@4
inputs:
SourcePath: '$(Pipeline.Workspace)/s/folder2'
azureSubscription: 'subscription'
Destination: 'AzureVMs'
storage: 'rmstaccount'
resourceGroup: 'rg'
MachineNames: 'vmName'
vmsAdminUserName: 'username'
vmsAdminPassword: 'password'
TargetPath: 'destinationFolder'
skipCACheck: false
Azure 文件副本 arguments:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.