daml/ci/daily-snapshot.yml

74 lines
2.0 KiB
YAML
Raw Normal View History

# Copyright (c) 2022 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
pr: none
trigger: none
schedules:
- cron: "0 1 * * *"
displayName: Daily split snapshot
branches:
include:
- main
jobs:
- job: check_for_release
dependsOn:
- git_sha
variables:
branch_sha: $[ dependencies.git_sha.outputs['out.branch'] ]
fork_sha: $[ dependencies.git_sha.outputs['out.fork_point'] ]
pool:
name: "ubuntu_20_04"
demands: assignment -equals default
steps:
- template: bash-lib.yml
parameters:
var_name: bash-lib
- bash: |
set -euo pipefail
eval "$(./dev-env/bin/dade-assist)"
source $(bash-lib)
prefix=$(cat NIGHTLY_PREFIX)
release=$(./release.sh snapshot HEAD $prefix | awk '{print $2}')
ERR=$(mktemp)
OUT=$(curl https://digitalasset.jfrog.io/artifactory/api/storage/assembly/daml/$release \
-u $AUTH \
-I \
2>$ERR)
STATUS=$(echo "$OUT" | head -1 | sed 's:HTTP/1.1 \([^ ]\+\).*:\1:')
case "$STATUS" in
200)
echo "Version $release already exists on Artifactory, aborting."
setvar is_release false
;;
404)
setvar is_release true
setvar trigger_sha "$(branch_sha)"
setvar release_sha "$(branch_sha)"
setvar release_tag "$release"
setvar split_release_process true
;;
*)
echo "Unexpected status code: $STATUS"
echo "curl stdout:"
echo "--"
echo "$OUT"
echo "--"
echo "curl stderr:"
echo "--"
echo "$ERR"
echo "--"
exit 1
;;
esac
setvar scala_2_13 true
name: out
env:
AUTH: $(ARTIFACTORY_USERNAME):$(ARTIFACTORY_PASSWORD)
- template: build.yml
- template: split-release-job.yml
- job: release
condition: false