Some checks failed
Cache: Publish Nix / Publish Nix Cache (push) Waiting to run
Build Rust / Cargo Test (push) Successful in 4m14s
Build Site / Next.js Build (push) Failing after 6s
Infra: OpenTofu / OpenTofu (grafana) (push) Successful in 5s
Lint Governance / BEP Metadata (push) Successful in 0s
Build: Android / Android Rust Core Stub (push) Failing after 23s
28 lines
886 B
Bash
Executable file
28 lines
886 B
Bash
Executable file
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
repo_root="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
cd "${repo_root}"
|
|
|
|
prefix="${BURROW_PACKAGE_GCS_PREFIX:-}"
|
|
source_dir="${BURROW_PACKAGE_REPOSITORY_DIR:-${repo_root}/publish/repositories}"
|
|
|
|
if [[ ! -d "$source_dir" ]]; then
|
|
echo "package repository directory not found: $source_dir" >&2
|
|
exit 1
|
|
fi
|
|
|
|
bucket="${BURROW_PACKAGE_GCS_BUCKET:-burrow-net-packages}"
|
|
if ! command -v gcloud >/dev/null 2>&1; then
|
|
echo "gcloud is required for GCS package repository upload" >&2
|
|
exit 127
|
|
fi
|
|
gcloud auth list --filter=status:ACTIVE --format='value(account)' | grep -q . || {
|
|
echo "gcloud has no active account; run Scripts/ci/google-wif-auth.sh first" >&2
|
|
exit 1
|
|
}
|
|
destination="gs://${bucket}"
|
|
if [[ -n "$prefix" ]]; then
|
|
destination="${destination}/${prefix}"
|
|
fi
|
|
gcloud storage rsync --recursive "$source_dir" "$destination"
|