Skip to content

Commit ea37106

Browse files
committed
Update linux build pipeline
1 parent 97ebfe4 commit ea37106

File tree

2 files changed

+53
-23
lines changed

2 files changed

+53
-23
lines changed

eng/ci/linux-build.yml

+1-2
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ extends:
2828
name: 1es-pool-azfunc
2929
image: 1es-windows-2022
3030
os: windows
31-
stages:
31+
stages:
3232
- stage: BuildAndTest
3333
jobs:
3434
- template: /eng/ci/templates/official/jobs/linux-package.yml@self
35-

eng/ci/templates/official/jobs/linux-package.yml

+52-21
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,29 @@ jobs:
22
- job: LinuxPackage
33
condition: and(ne(variables['LinuxPackageBuildTag'], ''), ne(variables['ConsolidatedBuildId'], ''))
44
timeoutInMinutes: "120"
5+
56
pool:
67
name: 1es-pool-azfunc
78
image: 1es-ubuntu-22.04
89
os: linux
10+
11+
variables:
12+
drop_path: $(Build.ArtifactStagingDirectory)
13+
pkg_drop_path: $(drop_path)/drop_debian
14+
15+
templateContext:
16+
outputParentDirectory: $(drop_path)
17+
outputs:
18+
- output: pipelineArtifact
19+
displayName: Publish debian package
20+
path: $(pkg_drop_path)
21+
artifact: drop_debian
22+
923
steps:
10-
# Bash v3
11-
# Run a Bash script on macOS, Linux, or Windows.
1224
- task: Bash@3
25+
displayName: 'Build DEB package'
1326
inputs:
14-
targetType: 'inline' # Specify 'filePath' if you want to use an external script file.
27+
targetType: 'inline'
1528
script: |
1629
cd publish-scripts
1730
python3 -m venv publish-env
@@ -29,33 +42,40 @@ jobs:
2942
bashEnvValue: '~/.profile' # Set value for BASH_ENV environment variable
3043
env:
3144
linuxBuildNumber: $(LinuxPackageBuildTag)
32-
consolidatedBuildId: $(ConsolidatedBuildId)
45+
consolidatedBuildId: $(ConsolidatedBuildId)
46+
3347
- pwsh: |
34-
echo $env:LinuxPackageAccountName
3548
$majorVersion = [math]::Floor([double]$env:LinuxPackageBuildTag.Split(".")[0])
49+
echo $env:LinuxPackageBuildTag
50+
echo $majorVersion
51+
3652
az storage blob upload -f /mnt/vss/_work/1/s/publish-scripts/artifact/azure-functions-core-tools_$env:LinuxPackageBuildTag-1.deb -c unsigned -n azure-functions-core-tools_$env:LinuxPackageBuildTag-1.deb --account-name $env:LinuxPackageAccountName --account-key $env:LinuxPackageAccountKey
3753
az storage blob upload -f /mnt/vss/_work/1/s/publish-scripts/artifact/azure-functions-core-tools-$($majorVersion)_$env:LinuxPackageBuildTag-1.deb -c unsigned -n azure-functions-core-tools-$($majorVersion)_$env:LinuxPackageBuildTag-1.deb --account-name $env:LinuxPackageAccountName --account-key $env:LinuxPackageAccountKey
3854
env:
3955
LinuxPackageAccountName: $(LinuxPackageAccountName)
4056
LinuxPackageAccountKey: $(LinuxPackageAccountKey)
4157
LinuxPackageBuildTag: $(LinuxPackageBuildTag)
4258
displayName: 'Upload Core Tools Unsigned Linux Package to the storage'
43-
- template: ci/sign-files.yml@eng
44-
parameters:
45-
displayName: 'Sign'
46-
folderPath: '/mnt/vss/_work/1/s/publish-scripts/artifact'
47-
pattern: '*.deb'
48-
signType: inline
49-
inlineOperation: |
50-
[
51-
{
52-
"keyCode": "CP-450779-Pgp",
53-
"operationSetCode": "LinuxSign",
54-
"parameters": [],
55-
"toolName": "signtool.exe",
56-
"toolVersion": "1.0"
57-
}
58-
]
59+
condition: eq(variables['BuildOnly'], 'false')
60+
61+
- ${{ if eq(variables.BuildOnly, false) }}:
62+
- template: ci/sign-files.yml@eng
63+
parameters:
64+
displayName: 'Sign'
65+
folderPath: '/mnt/vss/_work/1/s/publish-scripts/artifact'
66+
pattern: '*.deb'
67+
signType: inline
68+
inlineOperation: |
69+
[
70+
{
71+
"keyCode": "CP-450779-Pgp",
72+
"operationSetCode": "LinuxSign",
73+
"parameters": [],
74+
"toolName": "signtool.exe",
75+
"toolVersion": "1.0"
76+
}
77+
]
78+
5979
- pwsh: |
6080
echo $env:LinuxPackageAccountName
6181
$majorVersion = [math]::Floor([double]$env:LinuxPackageBuildTag.Split(".")[0])
@@ -66,3 +86,14 @@ jobs:
6686
LinuxPackageAccountKey: $(LinuxPackageAccountKey)
6787
LinuxPackageBuildTag: $(LinuxPackageBuildTag)
6888
displayName: 'Upload Core Tools Signed Linux Package to the storage'
89+
condition: eq(variables['BuildOnly'], 'false')
90+
91+
- task: Bash@3
92+
displayName: 'Copy DEB package to drop'
93+
inputs:
94+
targetType: 'inline'
95+
script: |
96+
mkdir -p $drop
97+
cp -r /mnt/vss/_work/1/s/publish-scripts/artifact/* $drop
98+
env:
99+
drop: $(pkg_drop_path)

0 commit comments

Comments
 (0)