mirror of
https://github.com/Sea-Haven-Industries/shoc-frontend-new.git
synced 2026-09-30 16:13:12 +00:00
* feat(terraform): ship dev content CD through Terraform (SH-300) GitHub uploads immutable release prefixes; Terraform owns live publish. Push-to-dev stays off until TERRAFORM_CONTENT_CD_ENABLED is set. * fix(terraform): align release-plan guard flags and CloudFront verify IAM (SH-300)
28 lines
855 B
Bash
Executable file
28 lines
855 B
Bash
Executable file
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
: "${SENTRY_AUTH_TOKEN:?SENTRY_AUTH_TOKEN is required for source-map upload}"
|
|
|
|
SENTRY_ORG="${SENTRY_ORG:-seahaven}"
|
|
SENTRY_PROJECT="${SENTRY_PROJECT:-shoc-frontend}"
|
|
COMMIT_SHA="${VITE_APP_COMMIT_SHA:-${GITHUB_SHA:-}}"
|
|
RELEASE_LABEL="${SENTRY_RELEASE:-${RELEASE_LABEL:-}}"
|
|
|
|
if [[ -n "${RELEASE_LABEL}" ]]; then
|
|
RELEASE="${RELEASE_LABEL}"
|
|
else
|
|
if [[ ! "${COMMIT_SHA}" =~ ^[0-9a-fA-F]{40}$ ]]; then
|
|
echo "::error::Source-map upload requires a 40-character VITE_APP_COMMIT_SHA or GITHUB_SHA." >&2
|
|
exit 1
|
|
fi
|
|
COMMIT_SHA="$(printf '%s' "${COMMIT_SHA}" | tr '[:upper:]' '[:lower:]')"
|
|
RELEASE="shoc-frontend@${COMMIT_SHA}"
|
|
fi
|
|
|
|
npm exec --no -- sentry-cli sourcemaps upload \
|
|
--org "${SENTRY_ORG}" \
|
|
--project "${SENTRY_PROJECT}" \
|
|
--release "${RELEASE}" \
|
|
--url-prefix "~/" \
|
|
--validate \
|
|
dist
|