#!/bin/sh # Get the owner of the current folder (prevents permission problems when running with sudo) user=$(stat -c "%u" .) group=$(stat -c "%g" .) if [ ! -d ./data ]; then mkdir ./data chown "$user:$group" ./data fi docker build sync -t coursier-sync docker run \ --rm \ --user="$user:$group" \ -v "$PWD/full-package-list.txt:/packages.txt" \ -v "$PWD/data:/workdir" \ coursier-sync SYNCRET=$? if [ $SYNCRET -eq 0 ]; then echo "Creating a tarball of the Releases" # Coursier splits the packages into directories per mirror, so we use a loop # to add each directory as a -C argument to tar tar zcvf \ ./maven-releases-packages.tar.gz \ $(for p in ./data/*/*/*/; do echo "-C $p ."; done) \ 2>/dev/null chown "$user:$group" ./maven-releases-packages.tar.gz echo "NEXT: mirror *.tar.gz and import into Artifactory." else echo "The sync failed, no tarballs created" exit 255 fi