Skip to content

Commit aacea2c

Browse files
committed
test: archiveVersionValid
1 parent cf5d09b commit aacea2c

File tree

2 files changed

+24
-3
lines changed

2 files changed

+24
-3
lines changed

.pipelines/build/image.steps.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,18 +45,21 @@ parameters:
4545

4646
steps:
4747
- task: DownloadPipelineArtifact@2
48+
condition: and( succeeded(), eq(variables['archiveVersionValid'], 'true'))
4849
inputs:
4950
targetPath: $(Build.SourcesDirectory)/dst/artifacts
5051
artifact: ${{ parameters.source }}
5152

5253
- task: onebranch.pipeline.containercontrol@1
54+
condition: and( succeeded(), eq(variables['archiveVersionValid'], 'true'))
5355
displayName: "Login to ACR"
5456
inputs:
5557
command: login
5658
endpoint: $(ACR_ARM_SERVICE_CONNECTION)
5759

5860
# Build and push the Docker image
5961
- task: onebranch.pipeline.imagebuildinfo@1
62+
condition: and( succeeded(), eq(variables['archiveVersionValid'], 'true'))
6063
displayName: Image Build
6164
retryCountOnTaskFailure: 3
6265
timeoutInMinutes: 30

.pipelines/build/images.jobs.yaml

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ jobs:
77
- ${{ each job_data in parameters.images }}:
88
- job: pkg_${{ job_data.job }}
99
displayName: "Prepare Image Package - ${{ job_data.displayName }} -"
10-
condition: and(succeeded(), contains(variables['archiveVersion'], 'v'))
1110
${{ if job_data.strategy }}:
1211
strategy: ${{ job_data.strategy }}
1312
${{ if job_data.dependsOn }}:
@@ -45,16 +44,30 @@ jobs:
4544
ARCH: arm64
4645
GOARCH: arm64
4746
steps:
47+
- script: |
48+
if [ -z "$(archiveVersion)" ] || [ "$(archiveVersion)" = "undefined" ] || [ "$(archiveVersion)" = "null" ]; then
49+
echo "##vso[task.logissue type=error]archiveVersion is invalid or empty: '$(archiveVersion)'"
50+
echo "##vso[task.setvariable variable=archiveVersionValid]false"
51+
else
52+
echo "archiveVersion is valid: $(archiveVersion)"
53+
echo "##vso[task.setvariable variable=archiveVersionValid]true"
54+
fi
55+
displayName: "Validate Archive Version"
56+
continueOnError: true
57+
4858
- task: DownloadPipelineArtifact@2
59+
condition: and( succeeded(), eq(variables['archiveVersionValid'], 'true'))
4960
inputs:
5061
targetPath: $(REPO_ROOT)
5162
artifact: '${{ job_data.templateContext.repositoryArtifact }}'
5263

5364
- task: GoTool@0
65+
condition: and( succeeded(), eq(variables['archiveVersionValid'], 'true'))
5466
inputs:
5567
version: '$(GOVERSION)'
5668

5769
- task: ShellScript@2
70+
condition: and( succeeded(), eq(variables['archiveVersionValid'], 'true'))
5871
inputs:
5972
scriptPath: $(REPO_ROOT)/${{ job_data.templateContext.buildScript }}
6073

@@ -65,8 +78,10 @@ jobs:
6578
env:
6679
SOURCE: $(REPO_ROOT)/${{ job_data.templateContext.obDockerfile }}
6780
DEST: $(OUT_DIR)/Dockerfile
81+
condition: and( succeeded(), eq(variables['archiveVersionValid';isOutput=true], 'true'))
6882
6983
- task: onebranch.pipeline.signing@1
84+
condition: and( succeeded(), eq(variables['archiveVersionValid';isOutput=true], 'true'))
7085
inputs:
7186
command: 'sign'
7287
signing_profile: 'external_distribution'
@@ -78,15 +93,17 @@ jobs:
7893
displayName: "Package with DropGZ"
7994
condition: and(
8095
succeeded(),
81-
eq(variables.packageWithDropGZ, 'True'))
96+
eq(variables.packageWithDropGZ, 'True'),
97+
eq(variables['archiveVersionValid'], 'true'))
8298
inputs:
8399
scriptPath: $(REPO_ROOT)/.pipelines/build/scripts/dropgz.sh
84100

85101
- ${{ if not(contains(job_data.job, 'linux')) }}:
86102
- task: onebranch.pipeline.signing@1
87103
condition: and(
88104
succeeded(),
89-
eq(variables.packageWithDropGZ, 'True'))
105+
eq(variables.packageWithDropGZ, 'True'),
106+
eq(variables['archiveVersionValid'], 'true'))
90107
inputs:
91108
command: 'sign'
92109
signing_profile: 'external_distribution'
@@ -122,6 +139,7 @@ jobs:
122139
ob_artifactSuffix: _$(name)
123140
ob_git_checkout: false
124141
ob_extract_root_artifact: true
142+
archiveVersionValid: $[ dependencies.pkg_${{ job_data.job }}.outputs['validateArchive.archiveVersionValid'] ]
125143
${{ if eq(job_data.job, 'linux_amd64') }}:
126144
LinuxContainerImage: 'mcr.microsoft.com/onebranch/azurelinux/build:3.0'
127145
ARCH: amd64

0 commit comments

Comments
 (0)