зеркало из https://github.com/Azure/ARO-RP.git
Download aro deployer from tagged image
Pull aro deployer from tagged container instead of pipeline artifact. Signed-off-by: Petr Kotas <pkotas@redhat.com>
This commit is contained in:
Родитель
558fc5d024
Коммит
3fbcaee47d
|
@ -0,0 +1,118 @@
|
|||
# Azure DevOps Job deploying rp
|
||||
parameters:
|
||||
aroVersionStorageAccount: ''
|
||||
azureDevOpsE2EJSONSPN: ''
|
||||
azureDevOpsJSONSPN: ''
|
||||
billingE2EPipelineName: ''
|
||||
billingE2EBranchName: ''
|
||||
configFileName: ''
|
||||
e2eSubscription: ''
|
||||
environment: ''
|
||||
locations: []
|
||||
rpMode: ''
|
||||
vsoProjectID: ''
|
||||
imageTag: ''
|
||||
rpImageAcr: ''
|
||||
|
||||
jobs:
|
||||
- ${{ each location in parameters.locations }}:
|
||||
- deployment: Deploy_${{ location }}
|
||||
variables:
|
||||
- template: ../vars.yml
|
||||
pool:
|
||||
name: ARO-CI
|
||||
environment: ${{ parameters.environment }}
|
||||
strategy:
|
||||
runOnce:
|
||||
deploy:
|
||||
steps:
|
||||
- ${{ if eq(parameters.imageTag, 'latest') }}:
|
||||
- checkout: git://AzureRedHatOpenShift/RP-Config@refs/heads/master
|
||||
path: $(Agent.BuildDirectory)/s/config
|
||||
- ${{ if ne(parameters.imageTag, 'latest') }}:
|
||||
- checkout: git://AzureRedHatOpenShift/RP-Config@refs/tags/${{parameters.imageTag}}
|
||||
path: $(Agent.BuildDirectory)/s/config
|
||||
|
||||
- template: ./templates/template-az-cli-login.yml
|
||||
parameters:
|
||||
azureDevOpsJSONSPN: $(aro-v4-ci-devops-spn)
|
||||
- script: |
|
||||
set -e
|
||||
trap 'set +e; for c in $(docker ps -aq); do docker rm -f $c; done; docker image prune -af ; rm -rf ~/.docker/config.json' EXIT
|
||||
|
||||
export TAG=${{ parameters.imageTag }}
|
||||
export RP_IMAGE_ACR=${{ parameters.rpImageAcr }}
|
||||
|
||||
az acr login --name "${RP_IMAGE_ACR}"
|
||||
|
||||
docker pull "${RP_IMAGE_ACR}.azurecr.io/aro:${TAG}"
|
||||
CONTAINER=$(docker create "${RP_IMAGE_ACR}.azurecr.io/aro:${TAG}")
|
||||
docker cp $CONTAINER:/usr/local/bin/aro $(System.ArtifactsDirectory)/deployer/aro
|
||||
displayName: Download aro deployer from image
|
||||
- template: ./templates/template-az-cli-logout.yml
|
||||
|
||||
- template: ./template-deploy-azure-env.yml
|
||||
parameters:
|
||||
configDirectory: $(Agent.BuildDirectory)/s/config/deploy
|
||||
deployerDirectory: $(System.ArtifactsDirectory)/deployer/
|
||||
configFileName: ${{ parameters.configFileName }}
|
||||
location: ${{ location }}
|
||||
azureDevOpsJSONSPN: ${{ parameters.azureDevOpsJSONSPN }}
|
||||
- job: RP_E2E_${{ location }}
|
||||
dependsOn: Deploy_${{ location }}
|
||||
variables:
|
||||
- template: ../vars.yml
|
||||
timeoutInMinutes: 120
|
||||
pool:
|
||||
name: ARO-CI
|
||||
steps:
|
||||
- template: ./template-prod-e2e-steps.yml
|
||||
parameters:
|
||||
location: ${{ location }}
|
||||
subscription: ${{ parameters.e2eSubscription }}
|
||||
azureDevOpsE2EJSONSPN: ${{ parameters.azureDevOpsE2EJSONSPN }}
|
||||
aroVersionStorageAccount: ${{ parameters.aroVersionStorageAccount }}
|
||||
rpMode: ${{ parameters.rpMode }}
|
||||
- job: Billing_E2E_${{ location }}_Wait
|
||||
dependsOn: RP_E2E_${{ location }}
|
||||
timeoutInMinutes: 400
|
||||
pool: server
|
||||
steps:
|
||||
- task: Delay@1
|
||||
inputs:
|
||||
delayForMinutes: '360'
|
||||
- job: ${{ location }}_TriggerBillingBuild
|
||||
displayName: Trigger Billing E2E pipeline
|
||||
dependsOn: Billing_E2E_${{ location }}_Wait
|
||||
steps:
|
||||
- script: |
|
||||
# Pass variables between tasks: https://medium.com/microsoftazure/how-to-pass-variables-in-azure-pipelines-yaml-tasks-5c81c5d31763
|
||||
echo "##vso[task.setvariable variable=REGION]${{ location }}"
|
||||
CLUSTER="v4-e2e-V$BUILD_BUILDID-${{ location }}"
|
||||
echo "##vso[task.setvariable variable=CLUSTER]$CLUSTER"
|
||||
CLUSTER_RESOURCEGROUP="v4-e2e-V$BUILD_BUILDID-${{ location }}"
|
||||
echo "##vso[task.setvariable variable=CLUSTER_RESOURCEGROUP]$CLUSTER_RESOURCEGROUP"
|
||||
echo "E2E Cluster Resource Group Name:" $CLUSTER_RESOURCEGROUP
|
||||
echo "E2E Cluster Name:" $CLUSTER
|
||||
displayName: Pass variables into next Task
|
||||
- task: TriggerBuild@3
|
||||
inputs:
|
||||
definitionIsInCurrentTeamProject: true
|
||||
buildDefinition: ${{ parameters.billingE2EPipelineName }}
|
||||
queueBuildForUserThatTriggeredBuild: true
|
||||
ignoreSslCertificateErrors: false
|
||||
useSameSourceVersion: false
|
||||
useCustomSourceVersion: false
|
||||
useSameBranch: false
|
||||
branchToUse: ${{ parameters.billingE2EBranchName }}
|
||||
waitForQueuedBuildsToFinish: true
|
||||
storeInEnvironmentVariable: false
|
||||
buildParameters: CLUSTER_RESOURCEGROUP:$(CLUSTER_RESOURCEGROUP), CLUSTER:$(CLUSTER),
|
||||
REGION:$(REGION)
|
||||
authenticationMethod: OAuth Token
|
||||
password: $(System.AccessToken)
|
||||
enableBuildInQueueCondition: false
|
||||
dependentOnSuccessfulBuildCondition: true
|
||||
dependentOnFailedBuildCondition: true
|
||||
checkbuildsoncurrentbranch: false
|
||||
failTaskIfConditionsAreNotFulfilled: true
|
Загрузка…
Ссылка в новой задаче