[release] push to maven again (#18597)

This commit is contained in:
Gary Verhaegen 2024-02-28 17:37:30 +01:00 committed by GitHub
parent 3e18bba30b
commit 8b8e95d0e0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 38 additions and 31 deletions

View File

@ -18,10 +18,10 @@ is_intel = is_windows or is_darwin or is_linux_intel
def _os_info_impl(repository_ctx): def _os_info_impl(repository_ctx):
cpu = get_cpu_value(repository_ctx) cpu = get_cpu_value(repository_ctx)
known_cpu_values = [ known_cpu_values = [
"aarch64", # linux arm64 "aarch64", # linux arm64
"darwin", # macOS amd64 "darwin", # macOS amd64
"darwin_arm64", # macOS arm64 "darwin_arm64", # macOS arm64
"k8", # linux amd64 "k8", # linux amd64
"x64_windows", "x64_windows",
] ]
if cpu not in known_cpu_values: if cpu not in known_cpu_values:

View File

@ -3,7 +3,8 @@
parameters: parameters:
is_release: '' is_release: ''
name: '' name_str: ''
name_exp: ''
release_tag: '' release_tag: ''
scala_version: '' scala_version: ''
test_mode: '' test_mode: ''
@ -13,7 +14,7 @@ steps:
displayName: 'Build/Install the Developer Environment' displayName: 'Build/Install the Developer Environment'
condition: and(succeeded(), condition: and(succeeded(),
or(eq(${{parameters.is_release}}, 'false'), or(eq(${{parameters.is_release}}, 'false'),
ne('${{parameters.name}}', 'm1'))) ne(${{parameters.name_exp}}, 'm1')))
- bash: | - bash: |
source dev-env/lib/ensure-nix source dev-env/lib/ensure-nix
@ -22,7 +23,7 @@ steps:
condition: and(succeeded(), condition: and(succeeded(),
eq(variables['System.PullRequest.IsFork'], 'False'), eq(variables['System.PullRequest.IsFork'], 'False'),
or(eq(${{parameters.is_release}}, 'false'), or(eq(${{parameters.is_release}}, 'false'),
ne('${{parameters.name}}', 'm1'))) ne(${{parameters.name_exp}}, 'm1')))
env: env:
# to upload to the Nix cache # to upload to the Nix cache
GOOGLE_APPLICATION_CREDENTIALS_CONTENT: $(GOOGLE_APPLICATION_CREDENTIALS_CONTENT) GOOGLE_APPLICATION_CREDENTIALS_CONTENT: $(GOOGLE_APPLICATION_CREDENTIALS_CONTENT)
@ -36,11 +37,11 @@ steps:
GOOGLE_APPLICATION_CREDENTIALS_CONTENT: $(GOOGLE_APPLICATION_CREDENTIALS_CONTENT) GOOGLE_APPLICATION_CREDENTIALS_CONTENT: $(GOOGLE_APPLICATION_CREDENTIALS_CONTENT)
condition: and(succeeded(), condition: and(succeeded(),
or(eq(${{parameters.is_release}}, 'false'), or(eq(${{parameters.is_release}}, 'false'),
ne('${{parameters.name}}', 'm1'))) ne(${{parameters.name_exp}}, 'm1')))
- bash: ./fmt.sh --test - bash: ./fmt.sh --test
displayName: 'Platform-agnostic lints and checks' displayName: 'Platform-agnostic lints and checks'
condition: and(succeeded(), eq('${{parameters.name}}', 'Linux-intel')) condition: and(succeeded(), eq(${{parameters.name_exp}}, 'linux-intel'))
- bash: | - bash: |
set -euo pipefail set -euo pipefail
@ -51,7 +52,7 @@ steps:
- bash: | - bash: |
set -euo pipefail set -euo pipefail
p="_${{parameters.name}}" p="_${{parameters.name_str}}"
a="_$(Build.BuildNumber)_$(System.JobAttempt)" a="_$(Build.BuildNumber)_$(System.JobAttempt)"
t="${{parameters.test_mode}}" t="${{parameters.test_mode}}"
./build.sh $p $a $t ./build.sh $p $a $t
@ -64,19 +65,19 @@ steps:
IS_FORK: $(System.PullRequest.IsFork) IS_FORK: $(System.PullRequest.IsFork)
condition: and(succeeded(), condition: and(succeeded(),
or(eq(${{parameters.is_release}}, 'false'), or(eq(${{parameters.is_release}}, 'false'),
ne('${{parameters.name}}', 'm1'))) ne(${{parameters.name_exp}}, 'm1')))
# Do not publish dar from m1 # Do not publish dar from m1
- ${{ if ne(parameters.name, 'm1') }}: - ${{ if ne(parameters.name_exp, 'm1') }}:
- template: publish-platform-independence-dar.yml - template: publish-platform-independence-dar.yml
parameters: parameters:
platform: ${{parameters.name}} platform: ${{parameters.name_str}}
is_release: ${{parameters.is_release}} is_release: ${{parameters.is_release}}
- task: PublishBuildArtifacts@1 - task: PublishBuildArtifacts@1
condition: and(succeededOrFailed(), condition: and(succeededOrFailed(),
or(eq(${{parameters.is_release}}, 'false'), or(eq(${{parameters.is_release}}, 'false'),
ne('${{parameters.name}}', 'm1'))) ne(${{parameters.name_exp}}, 'm1')))
continueOnError: true continueOnError: true
inputs: inputs:
pathtoPublish: '$(Build.StagingDirectory)/logs' pathtoPublish: '$(Build.StagingDirectory)/logs'
@ -85,11 +86,11 @@ steps:
- task: PublishBuildArtifacts@1 - task: PublishBuildArtifacts@1
condition: and(failed(), condition: and(failed(),
or(eq(${{parameters.is_release}}, 'false'), or(eq(${{parameters.is_release}}, 'false'),
ne('${{parameters.name}}', 'm1'))) ne(${{parameters.name_exp}}, 'm1')))
displayName: 'Publish the bazel test logs' displayName: 'Publish the bazel test logs'
inputs: inputs:
pathtoPublish: 'bazel-testlogs/' pathtoPublish: 'bazel-testlogs/'
artifactName: 'Test logs ${{parameters.name}}' artifactName: 'Test logs ${{parameters.name_str}}'
- bash: | - bash: |
set -euo pipefail set -euo pipefail
@ -106,33 +107,28 @@ steps:
name: publish_npm_mvn name: publish_npm_mvn
condition: and(succeeded(), condition: and(succeeded(),
eq(${{parameters.is_release}}, 'true'), eq(${{parameters.is_release}}, 'true'),
eq('${{parameters.scala_version}}', ''), eq(${{parameters.name_exp}}, 'linux-intel'))
eq('${{parameters.name}}', 'linux-intel'),
in(variables['Build.SourceBranchName'], 'main', 'main-2.x'),
in('${{parameters.name}}', 'linux-intel', 'linux-scala-2.12'))
- template: bash-lib.yml - template: bash-lib.yml
parameters: parameters:
var_name: bash-lib var_name: bash-lib
condition: and(succeeded(), condition: and(succeeded(),
or(eq(${{parameters.is_release}}, 'false'), or(eq(${{parameters.is_release}}, 'false'),
ne('${{parameters.name}}', 'm1'))) ne(${{parameters.name_exp}}, 'm1')))
- bash: | - bash: |
set -euo pipefail set -euo pipefail
eval "$(./dev-env/bin/dade-assist)" eval "$(./dev-env/bin/dade-assist)"
mkdir -p $(Build.StagingDirectory)/release mkdir -p $(Build.StagingDirectory)/release
./ci/copy-unix-release-artifacts.sh ${{parameters.release_tag}} ${{parameters.name}} $(Build.StagingDirectory)/release ./ci/copy-unix-release-artifacts.sh ${{parameters.release_tag}} ${{parameters.name_str}} $(Build.StagingDirectory)/release
env: env:
DAML_SDK_RELEASE_VERSION: ${{parameters.release_tag}} DAML_SDK_RELEASE_VERSION: ${{parameters.release_tag}}
name: publish name: publish
condition: and(succeeded(), condition: and(succeeded(),
ne('${{parameters.name}}', 'm1'), ne(${{parameters.name_exp}}, 'm1'),
eq(${{parameters.is_release}}, 'true'), eq(${{parameters.is_release}}, 'true'))
in(variables['Build.SourceBranchName'], 'main', 'main-2.x'))
- task: PublishPipelineArtifact@0 - task: PublishPipelineArtifact@0
inputs: inputs:
targetPath: $(Build.StagingDirectory)/release targetPath: $(Build.StagingDirectory)/release
artifactName: ${{parameters.name}}-release artifactName: ${{parameters.name_str}}-release
condition: and(succeeded(), condition: and(succeeded(),
ne('${{parameters.name}}', 'm1'), ne(${{parameters.name_exp}}, 'm1'),
eq(${{parameters.is_release}}, 'true'), eq(${{parameters.is_release}}, 'true'))
in(variables['Build.SourceBranchName'], 'main', 'main-2.x'))

View File

@ -63,8 +63,17 @@ jobs:
- template: clean-up.yml - template: clean-up.yml
- template: build-unix.yml - template: build-unix.yml
parameters: parameters:
# The syntax required to inline a variable changes based on context
# (`$(var)` in strings, `variables.var` in expressions). Template
# parameters are inlined before evaluation. This is a bit like lazy
# function arguments, but at the syntax level.
#
# The result is that we need to know what context the parameter will be
# used in, which is why `release_tag` and `is_release` use different
# syntaxes, and why we need to passe `name` twice.
release_tag: $(release_tag) release_tag: $(release_tag)
name: $(name) name_str: $(name)
name_exp: variables.name
is_release: variables.is_release is_release: variables.is_release
test_mode: ${{parameters.test_mode}} test_mode: ${{parameters.test_mode}}
- template: upload-bazel-metrics.yml - template: upload-bazel-metrics.yml

View File

@ -44,7 +44,9 @@ jobs:
- template: build-unix.yml - template: build-unix.yml
parameters: parameters:
release_tag: $(release_tag) release_tag: $(release_tag)
name: ${{parameters.name}} name_str: ${{parameters.name}}
# Yes, these quotes are needed. Yes, I know.
name_exp: "'${{parameters.name}}'"
is_release: variables.is_release is_release: variables.is_release
test_mode: ${{parameters.test_mode}} test_mode: ${{parameters.test_mode}}
# Do not upload metrics for m1 # Do not upload metrics for m1