diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 048e51a..601d55e 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -7,6 +7,9 @@ on: schedule: - cron: "21 14 * * *" +#concurrency: +# cancel-in-progress: true + defaults: run: shell: bash @@ -17,7 +20,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v6 + uses: actions/checkout@v3 with: submodules: true fetch-depth: 0 @@ -40,28 +43,41 @@ jobs: tar -xvzf hugo.tar.gz sudo mv hugo /usr/local/bin + - name: Install SSH Key + run: | + install -m 600 -D /dev/null ~/.ssh/id_rsa + echo "${{ secrets.BUILD_SSH_KEY }}" > ~/.ssh/id_rsa + echo "${{ secrets.HOST_KEY }}" > ~/.ssh/known_hosts + cat < ~/.ssh/config + Host Rozek-Nimbus + Hostname 158.69.216.99 + User build + IdentityFile ~/.ssh/id_rsa + EOL + - name: Build Hugo Website - run: hugo + id: build + run: | + hugo - name: Deploy - env: - AWS_ACCESS_KEY_ID: ${{ secrets.S3_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.S3_APP_KEY }} - AWS_ENDPOINT_URL: ${{ secrets.S3_ENDPOINT }} - S3_BUCKET: rozek-websites - S3_PATH: var/www/brandonrozek run: ./deploy.sh + - name: Install Onion SSH Key + run: | + install -m 600 -D /dev/null ~/.ssh/id_onion + echo "${{ secrets.ONION_BUILD_SSH_KEY }}" > ~/.ssh/id_onion + cat <> ~/.ssh/config + Host Rozek-Nimbus-Onion + Hostname 158.69.216.99 + User build + IdentityFile ~/.ssh/id_onion + EOL + - name: Build Onion Website run: | - rm -rf public/ - hugo --baseURL "http://brozek63j22jry6gof2vszo27vh2ed327bqismqu3somrqu622z73eid.onion/" + hugo --baseURL "http://brozek63j22jry6gof2vszo27vh2ed327bqismqu3somrqu622z73eid.onion/" --destination "public-onion" - - name: Deploy Onion Website - env: - AWS_ACCESS_KEY_ID: ${{ secrets.S3_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.S3_APP_KEY }} - AWS_ENDPOINT_URL: ${{ secrets.S3_ENDPOINT }} - S3_BUCKET: rozek-websites - S3_PATH: var/www/brandonrozek-onion - run: ./deploy.sh + - name: Deploy onion website + run: | + rsync -Pazc --exclude=*.bak --delete public-onion/ build@Rozek-Nimbus-Onion:brandonrozek-onion/ diff --git a/deploy.sh b/deploy.sh index 1ec59c9..aeba2b0 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,17 +1,3 @@ #!/usr/bin/env sh -set -e +rsync -Pazc --exclude=*.bak --delete public/ build@Rozek-Nimbus:brandonrozek/ -: "${AWS_ACCESS_KEY_ID:?AWS_ACCESS_KEY_ID is not set}" -: "${AWS_SECRET_ACCESS_KEY:?AWS_SECRET_ACCESS_KEY is not set}" -: "${AWS_ENDPOINT_URL:?AWS_ENDPOINT_URL is not set}" -: "${S3_BUCKET:?S3_BUCKET is not set}" -: "${S3_PATH:?S3_PATH is not set}" - -if [ ! -d "public" ] || [ -z "$(ls -A public)" ]; then - echo "public/ is empty or missing" - exit 1 -fi - -aws s3 sync public/ "s3://${S3_BUCKET}/${S3_PATH}/" \ - --delete \ - --exclude "*.bak" \ No newline at end of file