diff --git a/.forgejo/workflows/web.yml b/.forgejo/workflows/web.yml new file mode 100644 index 0000000..1f30bbd --- /dev/null +++ b/.forgejo/workflows/web.yml @@ -0,0 +1,27 @@ +on: [push, pull_request] +jobs: + web: + runs-on: ubuntu-latest + steps: + - name: Clone repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Setup Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: 3.2.2 + bundler-cache: true + - name: Build + run: cd web && bundle exec jekyll build + + # this is a beautiful way to deploy a website and i will not take any criticism + - name: Setup cloudflared + run: | + curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && sudo dpkg -i cloudflared.deb + nohup cloudflared access ssh --hostname ssh.ellpeck.de --listener localhost:222 & + - name: Deploy + run: | + echo "${{ secrets.ELLBOT_KEY }}" > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa + rsync -e "ssh -o StrictHostKeyChecking=no -P 222" -r --delete web/_site/. ellbot@localhost:/var/www/tinylifegame