1
0
Fork 0
mirror of https://github.com/Ellpeck/MLEM.git synced 2024-11-22 20:58:34 +01:00
MLEM/.github/workflows/web.yml

70 lines
2.9 KiB
YAML
Raw Normal View History

on: [push, pull_request]
jobs:
build-demo:
runs-on: windows-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '8.0.x'
- name: Restore tools
run: dotnet tool restore
- name: Run PublishWeb
run: dotnet cake --target PublishWeb --ref ${{ github.ref }} --buildNum ${{ github.run_number }}
- name: Upload demo artifact
uses: actions/upload-artifact@v4
with:
path: Demos.Web/bin/Release/net8.0/publish/wwwroot
name: demo
include-hidden-files: true
if-no-files-found: error
2024-09-15 23:18:17 +02:00
deploy-demo:
if: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/')
2024-09-15 23:18:17 +02:00
needs: [build-demo]
runs-on: ubuntu-latest
steps:
- name: Download demo artifact
uses: actions/download-artifact@v4
with:
name: demo
path: demo
- name: Deploy demo
# this is a beautiful way to deploy a website and i will not take any criticism
run: |
curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && sudo dpkg -i cloudflared.deb
mkdir ~/.ssh && echo "${{ secrets.ELLBOT_KEY }}" > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa
rsync -rv --delete -e 'ssh -o "ProxyCommand cloudflared access ssh --hostname %h" -o "StrictHostKeyChecking=no"' demo/. ellbot@ssh.ellpeck.de:/var/www/MLEM/demo
build-deploy-docs:
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '8.0.x'
- name: Restore tools
run: dotnet tool restore
- name: Run Document
run: dotnet cake --target Document --ref ${{ github.ref }} --buildNum ${{ github.run_number }}
- name: Upload docs artifact
uses: actions/upload-artifact@v4
with:
path: Docs/_site
name: docs
include-hidden-files: true
if-no-files-found: error
2024-09-15 23:18:17 +02:00
- name: Deploy docs
if: startsWith(github.ref, 'refs/tags/')
# this is a beautiful way to deploy a website and i will not take any criticism
run: |
curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && sudo dpkg -i cloudflared.deb
mkdir ~/.ssh && echo "${{ secrets.ELLBOT_KEY }}" > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa
2024-09-15 23:18:17 +02:00
rsync -rv --delete -e 'ssh -o "ProxyCommand cloudflared access ssh --hostname %h" -o "StrictHostKeyChecking=no"' --exclude /demo Docs/_site/. ellbot@ssh.ellpeck.de:/var/www/MLEM