diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 807502598..dd0ea91be 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -21,6 +21,7 @@ on: options: - masters - staging + - falk2 - falk1 target_subdomain: description: "Deployment Subdomain" @@ -94,6 +95,7 @@ jobs: env: SERVER_HOST_MASTERS: ${{ secrets.SERVER_HOST_MASTERS }} SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SERVER_HOST_STAGING: ${{ secrets.SERVER_HOST_STAGING }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} run: | @@ -102,6 +104,7 @@ jobs: echo "${SSH_PRIVATE_KEY}" > ~/.ssh/id_rsa test -n "$SERVER_HOST_MASTERS" && ssh-keyscan -H "$SERVER_HOST_MASTERS" >> ~/.ssh/known_hosts test -n "$SERVER_HOST_FALK1" && ssh-keyscan -H "$SERVER_HOST_FALK1" >> ~/.ssh/known_hosts + test -n "$SERVER_HOST_FALK2" && ssh-keyscan -H "$SERVER_HOST_FALK2" >> ~/.ssh/known_hosts test -n "$SERVER_HOST_STAGING" && ssh-keyscan -H "$SERVER_HOST_STAGING" >> ~/.ssh/known_hosts chmod 600 ~/.ssh/id_rsa - name: 🚢 Deploy @@ -118,6 +121,7 @@ jobs: API_KEY: ${{ secrets.API_KEY }} SERVER_HOST_MASTERS: ${{ secrets.SERVER_HOST_MASTERS }} SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SERVER_HOST_STAGING: ${{ secrets.SERVER_HOST_STAGING }} SSH_KEY: ~/.ssh/id_rsa VERSION_TAG: latest diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 6a09e6072..be979218c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -105,13 +105,13 @@ jobs: - uses: actions/checkout@v4 - name: 🔑 Create SSH private key env: - SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} run: | set -euxo pipefail mkdir -p ~/.ssh echo "${SSH_PRIVATE_KEY}" > ~/.ssh/id_rsa - test -n "$SERVER_HOST_FALK1" && ssh-keyscan -H "$SERVER_HOST_FALK1" >> ~/.ssh/known_hosts + test -n "$SERVER_HOST_FALK2" && ssh-keyscan -H "$SERVER_HOST_FALK2" >> ~/.ssh/known_hosts chmod 600 ~/.ssh/id_rsa - name: 🚀 Deploy image env: @@ -125,11 +125,11 @@ jobs: OTEL_AUTH_HEADER: ${{ secrets.OTEL_AUTH_HEADER }} TURNSTILE_SECRET_KEY: ${{ secrets.TURNSTILE_SECRET_KEY }} API_KEY: ${{ secrets.API_KEY }} - SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SSH_KEY: ~/.ssh/id_rsa run: | set -euxo pipefail - ./deploy.sh prod falk1 "${IMAGE_ID}" beta + ./deploy.sh prod falk2 "${IMAGE_ID}" beta - name: ⏳ Wait for deployment to start env: FQDN: beta.${{ vars.DOMAIN }} @@ -156,13 +156,13 @@ jobs: - uses: actions/checkout@v4 - name: 🔑 Create SSH private key env: - SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} run: | set -euxo pipefail mkdir -p ~/.ssh echo "${SSH_PRIVATE_KEY}" > ~/.ssh/id_rsa - test -n "$SERVER_HOST_FALK1" && ssh-keyscan -H "$SERVER_HOST_FALK1" >> ~/.ssh/known_hosts + test -n "$SERVER_HOST_FALK2" && ssh-keyscan -H "$SERVER_HOST_FALK2" >> ~/.ssh/known_hosts chmod 600 ~/.ssh/id_rsa - name: 🚀 Deploy image env: @@ -176,11 +176,11 @@ jobs: OTEL_AUTH_HEADER: ${{ secrets.OTEL_AUTH_HEADER }} TURNSTILE_SECRET_KEY: ${{ secrets.TURNSTILE_SECRET_KEY }} API_KEY: ${{ secrets.API_KEY }} - SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SSH_KEY: ~/.ssh/id_rsa run: | set -euxo pipefail - ./deploy.sh prod falk1 "${IMAGE_ID}" blue + ./deploy.sh prod falk2 "${IMAGE_ID}" blue - name: ⏳ Wait for deployment to start env: FQDN: blue.${{ vars.DOMAIN }} @@ -207,13 +207,13 @@ jobs: - uses: actions/checkout@v4 - name: 🔑 Create SSH private key env: - SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} run: | set -euxo pipefail mkdir -p ~/.ssh echo "${SSH_PRIVATE_KEY}" > ~/.ssh/id_rsa - test -n "$SERVER_HOST_FALK1" && ssh-keyscan -H "$SERVER_HOST_FALK1" >> ~/.ssh/known_hosts + test -n "$SERVER_HOST_FALK2" && ssh-keyscan -H "$SERVER_HOST_FALK2" >> ~/.ssh/known_hosts chmod 600 ~/.ssh/id_rsa - name: 🚀 Deploy image env: @@ -227,11 +227,11 @@ jobs: OTEL_AUTH_HEADER: ${{ secrets.OTEL_AUTH_HEADER }} TURNSTILE_SECRET_KEY: ${{ secrets.TURNSTILE_SECRET_KEY }} API_KEY: ${{ secrets.API_KEY }} - SERVER_HOST_FALK1: ${{ secrets.SERVER_HOST_FALK1 }} + SERVER_HOST_FALK2: ${{ secrets.SERVER_HOST_FALK2 }} SSH_KEY: ~/.ssh/id_rsa run: | set -euxo pipefail - ./deploy.sh prod falk1 "${IMAGE_ID}" green + ./deploy.sh prod falk2 "${IMAGE_ID}" green - name: ⏳ Wait for deployment to start env: FQDN: green.${{ vars.DOMAIN }} diff --git a/.gitignore b/.gitignore index b84cea885..f97753a02 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,8 @@ CLAUDE.md .idea/ # this is autogenerated by script src/assets/ + +# Debug / Log Outputs +*.log +*debug*.txt +eslint_out.txt diff --git a/.vscode/settings.json b/.vscode/settings.json index c0c69aab9..8d6f5a203 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,5 @@ { - "html.validate.scripts": false + "html.validate.scripts": false, + "tailwindCSS.lint.suggestCanonicalClasses": "ignore", + "lit-plugin.rules.suggestCanonicalClasses": "off" } diff --git a/CREDITS.md b/CREDITS.md index eb95cfe99..abd51a4c0 100644 --- a/CREDITS.md +++ b/CREDITS.md @@ -49,6 +49,16 @@ Copyright © opentopography.org. All Rights Reserved. [Terms of Use](https://ope [USA Hawaii relief location map](https://commons.wikimedia.org/wiki/File:USA_Hawaii_relief_location_map.svg) by NordNordWest Licensed under [CC BY-SA 3.0 DE](https://creativecommons.org/licenses/by-sa/3.0/de/deed.en) +### Nile Delta Map + +[Niledelta 33](https://commons.wikimedia.org/wiki/File:Niledelta_33.svg) by John187 +Licensed under [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/) + +### Arctic Map + +[Arctic SDI](https://catalogue.arctic-sdi.org/geonetwork/srv/spa/catalog.search#/metadata/8b4f2b34-2d0d-4744-ae0f-d7989b9f7a02) +Licensed under [CC0 1.0.](https://creativecommons.org/publicdomain/zero/1.0/legalcode.en) + ## Icons ### [The Noun Project](https://thenounproject.com/) diff --git a/build-deploy.sh b/build-deploy.sh index e4190cf8f..6471fcc51 100755 --- a/build-deploy.sh +++ b/build-deploy.sh @@ -15,34 +15,34 @@ print_header "BUILD AND DEPLOY WRAPPER" echo "This script will run build.sh and deploy.sh in sequence." echo "You can also run them separately:" echo " ./build.sh [prod|staging] [version_tag]" -echo " ./deploy.sh [prod|staging] [falk1|nbg1|staging|masters] [version_tag] [subdomain]" +echo " ./deploy.sh [prod|staging] [falk1|falk2|nbg1|staging|masters] [version_tag] [subdomain]" echo "" # Check command line arguments if [ $# -lt 3 ] || [ $# -gt 5 ]; then echo "Error: Please specify environment, host, and subdomain" - echo "Usage: $0 [prod|staging] [falk1|nbg1|staging|masters] [subdomain]" + echo "Usage: $0 [prod|staging] [falk1|falk2|nbg1|staging|masters] [subdomain]" exit 1 fi # Validate first argument (environment) if [ "$1" != "prod" ] && [ "$1" != "staging" ]; then echo "Error: First argument must be either 'prod' or 'staging'" - echo "Usage: $0 [prod|staging] [falk1|nbg1|staging|masters] [subdomain]" + echo "Usage: $0 [prod|staging] [falk1|falk2|nbg1|staging|masters] [subdomain]" exit 1 fi # Validate second argument (host) -if [ "$2" != "falk1" ] && [ "$2" != "nbg1" ] && [ "$2" != "staging" ] && [ "$2" != "masters" ]; then +if [ "$2" != "falk1" ] && [ "$2" != "falk2" ] && [ "$2" != "nbg1" ] && [ "$2" != "staging" ] && [ "$2" != "masters" ]; then echo "Error: Second argument must be either 'falk1', 'nbg1', 'staging', or 'masters'" - echo "Usage: $0 [prod|staging] [falk1|nbg1|staging|masters] [subdomain]" + echo "Usage: $0 [prod|staging] [falk1|falk2|nbg1|staging|masters] [subdomain]" exit 1 fi # Validate third argument (subdomain) if [ -z "$3" ]; then echo "Error: Subdomain is required" - echo "Usage: $0 [prod|staging] [falk1|nbg1|staging|masters] [subdomain]" + echo "Usage: $0 [prod|staging] [falk1|falk2|nbg1|staging|masters] [subdomain]" exit 1 fi diff --git a/deploy.sh b/deploy.sh index 6e0c6727a..dc2f9edac 100755 --- a/deploy.sh +++ b/deploy.sh @@ -28,9 +28,9 @@ if [ "$1" != "prod" ] && [ "$1" != "staging" ]; then fi # Validate second argument (host) -if [ "$2" != "falk1" ] && [ "$2" != "nbg1" ] && [ "$2" != "staging" ] && [ "$2" != "masters" ]; then - echo "Error: Second argument must be either 'falk1', 'nbg1', 'staging', or 'masters'" - echo "Usage: $0 [prod|staging] [falk1|nbg1|staging|masters] [version_tag] [subdomain]" +if [ "$2" != "falk1" ] && [ "$2" != "falk2" ] && [ "$2" != "nbg1" ] && [ "$2" != "staging" ] && [ "$2" != "masters" ]; then + echo "Error: Second argument must be either 'falk1', 'falk2', 'nbg1', 'staging', or 'masters'" + echo "Usage: $0 [prod|staging] [falk1|falk2|nbg1|staging|masters] [version_tag] [subdomain]" exit 1 fi @@ -75,6 +75,9 @@ elif [ "$HOST" == "nbg1" ]; then elif [ "$HOST" == "masters" ]; then print_header "DEPLOYING TO MASTERS HOST" SERVER_HOST=$SERVER_HOST_MASTERS +elif [ "$HOST" == "falk2" ]; then + print_header "DEPLOYING TO FALK2 HOST" + SERVER_HOST=$SERVER_HOST_FALK2 else print_header "DEPLOYING TO FALK1 HOST" SERVER_HOST=$SERVER_HOST_FALK1 diff --git a/index.html b/index.html index 9a6bbd573..90f2e229b 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ />