add copy canton script (#18329)

* add copy canton script

* cleanup

* remove old comments

* make sure the script runs from anywhere
This commit is contained in:
Paul Brauner 2024-01-31 14:03:39 +01:00 committed by GitHub
parent 3e8c168316
commit 9c4cccc9d3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 32 additions and 15 deletions

28
ci/copy-canton.sh Executable file
View File

@ -0,0 +1,28 @@
#!/usr/bin/env bash
# Copyright (c) 2024 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
set -euo pipefail
DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
if [ "$#" -ne 1 ]; then
echo "Usage: $0 <canton_directory>"
exit 1
else
canton_dir=$1
fi
code_drop_dir=$DIR/../canton
for path in community daml-common-staging README.md; do
rm -rf $code_drop_dir/$path
for f in $(git -C "$canton_dir" ls-files $path); do
# we're only interested in copying files, not directories, as git-ls has
# explicitly expanded all directories
if [[ -f $canton_dir/$f ]]; then
# we create the parent directories of f under canton/ if they don't exist
mkdir -p $code_drop_dir/$(dirname $f)
cp $canton_dir/$f $code_drop_dir/$f
fi
done
git add $code_drop_dir/$path
done

View File

@ -238,24 +238,13 @@ jobs:
### code drop ###
copy_canton_code() {
canton_version=$1
canton_dir=$2
commitish=$(canton_version_to_commitish $canton_version)
tmp=$(mktemp -d)
trap "rm -rf ${tmp}" EXIT
git clone https://$GITHUB_TOKEN@github.com/DACH-NY/canton $tmp
git -C $tmp checkout $commitish
for path in community daml-common-staging README.md; do
src=$tmp/$path
dst=$canton_dir/$path
rm -rf $dst
mkdir -p $(dirname $dst)
cp -rf $src $dst
git add $dst
done
git -C $tmp checkout $(canton_version_to_commitish $canton3_version)
ci/copy-canton.sh $tmp
}
copy_canton_code $canton3_version canton