daml/ci/build-local-canton.yml
2023-07-19 12:18:58 +00:00

46 lines
1.6 KiB
YAML

# Copyright (c) 2023 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
jobs:
- job: build_canton
timeoutInMinutes: 60
pool:
name: 'ubuntu_20_04'
demands: assignment -equals default
steps:
- checkout: self
- bash: |
set -euo pipefail
touch canton_sha
if [ -f arbitrary_canton_sha ]; then
cp arbitrary_canton_sha canton_sha
fi
- task: Cache@2
inputs:
key: '"canton-v3-" | ./canton_sha'
path: $(Build.StagingDirectory)/canton_lib
- bash: |
set -euo pipefail
mkdir -p "$(Build.StagingDirectory)/canton_lib"
touch "$(Build.StagingDirectory)/canton_lib/.keep"
if [ -f arbitrary_canton_sha ] && ! [ -f "$(Build.StagingDirectory)/canton_lib/canton.jar" ]; then
sha=$(cat arbitrary_canton_sha)
cd $(mktemp -d)
git clone https://$GITHUB_TOKEN@github.com/DACH-NY/canton
cd canton
git checkout $sha
sed -i 's|git@github.com:|https://github.com/|' .gitmodules
git submodule init
git submodule update
nix-shell --max-jobs 2 --run "sbt community-app/assembly"
cp community/app/target/scala-*/canton-open-source-*.jar "$(Build.StagingDirectory)/canton_lib/canton.jar"
nix-shell --max-jobs 2 --run "sbt enterprise-app/assembly"
cp enterprise/app/target/scala-*/canton-enterprise-*.jar "$(Build.StagingDirectory)/canton_lib/canton-ee.jar"
fi
env:
GITHUB_TOKEN: $(CANTON_READONLY_TOKEN)
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: $(Build.StagingDirectory)/canton_lib
artifactName: canton_jar