mirror of
https://github.com/digital-asset/daml.git
synced 2024-11-10 00:35:25 +03:00
979e12fa68
* Move artifact publishing out of yaml files The current publishing process pretty much hardcodes the set of artifacts we publish in the yaml config. This is a problem because we always release from `main` so the yaml files are always identical. However, we will add new artifacts over time and this starts falling apart. This PR changes this such that the process described in the yaml files is very generic and just uploads and downloads everything in a directory whereas the details are handled in bash scripts that will come from the respective release branch and are therefore version-dependent. As usual for these type of changes, I don’t have a great way to test this. I did do some due diligence to test that at least the artifacts are published correctly and I can download them but I can’t test the actual publishing. changelog_begin changelog_end * Update ci/copy-unix-release-artifacts.sh Co-authored-by: Gary Verhaegen <gary.verhaegen@digitalasset.com> * Update ci/copy-windows-release-artifacts.sh Co-authored-by: Gary Verhaegen <gary.verhaegen@digitalasset.com> * Update ci/publish-artifactory.sh Co-authored-by: Gary Verhaegen <gary.verhaegen@digitalasset.com> Co-authored-by: Gary Verhaegen <gary.verhaegen@digitalasset.com>
53 lines
1.6 KiB
YAML
53 lines
1.6 KiB
YAML
# Copyright (c) 2021 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
parameters:
|
|
release_tag: ''
|
|
is_release: ''
|
|
|
|
steps:
|
|
- bash: ci/configure-bazel.sh
|
|
displayName: 'Configure Bazel'
|
|
env:
|
|
IS_FORK: $(System.PullRequest.IsFork)
|
|
# to upload to the bazel cache
|
|
GOOGLE_APPLICATION_CREDENTIALS_CONTENT: $(GOOGLE_APPLICATION_CREDENTIALS_CONTENT)
|
|
|
|
- powershell: '.\ci\windows-diagnostics.ps1'
|
|
displayName: 'Agent diagnostics'
|
|
|
|
- powershell: '.\build.ps1'
|
|
displayName: 'Build'
|
|
env:
|
|
DAML_SDK_RELEASE_VERSION: ${{parameters.release_tag}}
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
condition: failed()
|
|
displayName: 'Publish the bazel test logs'
|
|
inputs:
|
|
pathtoPublish: 'bazel-testlogs/'
|
|
artifactName: 'Test logs'
|
|
|
|
- template: bash-lib.yml
|
|
parameters:
|
|
var_name: bash-lib
|
|
|
|
- bash: |
|
|
set -euo pipefail
|
|
mkdir -p '$(Build.StagingDirectory)'/release
|
|
./ci/copy-windows-release-artifacts.sh ${{parameters.release_tag}} '$(Build.StagingDirectory)'/release
|
|
name: publish
|
|
env:
|
|
SIGNING_KEY: $(microsoft-code-signing)
|
|
DAML_SDK_RELEASE_VERSION: ${{parameters.release_tag}}
|
|
condition: and(succeeded(),
|
|
eq(${{parameters.is_release}}, 'true'),
|
|
eq(variables['Build.SourceBranchName'], 'main'))
|
|
- task: PublishPipelineArtifact@0
|
|
condition: and(succeeded(),
|
|
eq(${{parameters.is_release}}, 'true'),
|
|
eq(variables['Build.SourceBranchName'], 'main'))
|
|
inputs:
|
|
targetPath: $(Build.StagingDirectory)/release
|
|
artifactName: windows-release
|