У меня возникла проблема с выяснением проблемы в этом конвейере.
У меня есть репозиторий GitHub, содержащий одну папку с именем dist
. В этой папке есть несколько файлов и папок. Вот структура моего git-хаба:
├── README.md
├── client_pipeline.yaml
├── client_template.yaml
└── dist
├── ReportPhishingOutlookAddIn.xml
└── ReportPhishingOutlookAddInWeb
├── Content
├── Dialog.html
├── Functions
├── Images
└── Scripts
Что я хочу сделать, так это когда я создаю новую папку в этом репо, мой конвейер должен запускать и загружать содержимое папки dist в эту новую папку и сохранять его в хранилище Azure.
Поэтому я решил сначала использовать шаблон конвейера Azure, чтобы определить логику конвейера:
Client_template.yaml
parameters:
storageaccount: ''
client: []
steps:
- ${{ each client in parameters.client }}:
- task: AzureCLI@2
displayName: 'Azure CLI'
inputs:
AzureSubscription: '<mysubscription>'
scriptType: bash
scriptLocation: inlineScript
inlineScript: |
az storage blob upload-batch --source dist --destination '$web/${client}' --account-name ${{ parameters.storageaccount}} --output table --no-progress
И я создал еще один конвейер для вызова этого шаблона.
client_pipeline.yaml
variables:
- name: storageaccount
value: <mystorageaccount>
steps:
- template: client_template.yaml
parameters:
storageaccount: ${{ variables.storageaccount }}
client: ["folder","folder1"]
Второй конвейер, который я использую, дает мне свободу добавлять столько клиентов, сколько я хочу, и конвейер должен просто создавать их в учетной записи хранения Azure.
Когда я запускаю свой конвейер, он строит все без каких-либо проблем, но когда я захожу в свою учетную запись хранения, у меня возникают 2 проблемы.
Во-первых, имя папки ${client}
, а не фактическое имя имени, которое я указал в своем массиве.
Вторая проблема заключается в том, что при загрузке загружается только основная папка и ни одна из вложенных папок.
Любая помощь, ребята, пожалуйста?
РЕДАКТИРОВАТЬ: я решил проблему №1, теперь я могу создавать несколько папок. Но все же он не копирует все подпапки и файл в папку внутри dist