infrastructure/scripts/push-to-cache.sh

42 lines
810 B
Bash
Raw Permalink Normal View History

#!/usr/bin/env bash
# SPDX-FileCopyrightText: 2024 Ryan Lahfa <ryan.lahfa@dgnum.eu>
#
# SPDX-License-Identifier: EUPL-1.2
set -o errexit
set -o nounset
set -o pipefail
shopt -s lastpipe
output_path="$1"
if [ "$STORE_ENDPOINT" == "" ]; then
echo "No endpoint given for the remote cache, uploading cannot take place."
exit 0
fi
if [ "$STORE_USER" == "" ]; then
echo "No user given for the remote cache, uploading cannot take place."
exit 0
fi
if [ "$STORE_PASSWORD" == "" ]; then
echo "No password given for the remote cache, uploading cannot take place."
exit 1
fi
cat <<EOF >.netrc
default
login $STORE_USER
password $STORE_PASSWORD
EOF
nix copy \
--extra-experimental-features nix-command \
--to "$STORE_ENDPOINT?compression=none" \
--netrc-file .netrc \
"$output_path"
rm .netrc