[英]Deploy vue via gitlab ci to azure static web app (service)
[英]How can one deploy build artifacts from GitLab CI to an Azure app service?
從作業或更多作業添加具有構建依賴關系的部署階段,從而下載這些作業的工件,如下所示.gitlab-ci.yml:
stages:
- build
- ...
- deploy
buildjob:1:
stage: build
script:
- build_to_web_dir.sh
artifacts:
paths:
- web
buildjob:2:
stage: build
script:
- build_to_web_dir.sh
artifacts:
paths:
- web
deploy:
stage: deploy
GIT_STRATEGY: none
image: microsoft/azure-cli
dependencies:
- buildjob:1
- buildjob:2
script:
- export containerName=mynewcontainername
- export storageAccount=mystorageaccount
- az storage blob delete-batch --source ${containerName} --account-name ${storageAccount} --output table
- az storage blob upload-batch --source ./web --destination ${containerName} --account-name ${storageAccount} --output table --no-progress
在部署作業中,只有一個目錄位於CI_PROJECT_DIR ./web
其中包含構建作業生成的所有文件。
checkout storage quickstart azure用於創建和設置存儲容器,帳戶詳細信息等。
對於部署階段,我們可以使用microsoft/azure-cli
docker鏡像,因此我們可以從腳本中調用az
命令,有關詳細說明,請參閱storage-quickstart-blobs-cli 。
az storage blob upload-batch --source ./web --destination ${containerName} --account-name ${storageAccount} --output blobname --no-progress
將./web復制到存儲容器中
出於安全原因,我們不應在.gitlab-ci.yml
:
export AZURE_STORAGE_ACCOUNT="mystorageaccountname"
export AZURE_STORAGE_ACCESS_KEY="myStorageAccountKey"
但是它們應該在project_or_group / settings / ci_cd環境變量中定義,因此它們將出現在腳本環境中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.