name: Build and Deploy on: push: branches: - master workflow_dispatch: jobs: build_and_deploy: runs-on: ubuntu-latest container: image: mcr.microsoft.com/devcontainers/dotnet steps: - name: Install APT dependencies run: apt update -y && apt install -y \ git \ nodejs \ libglib2.0-0 \ libnss3 \ libnspr4 \ libdbus-1-3 \ libatk1.0-0 \ libatk-bridge2.0-0 \ libcups2 \ libdrm2 \ libxcb1 \ libxkbcommon0 \ libx11-6 \ libxcomposite1 \ libxdamage1 \ libxext6 \ libxfixes3 \ libxrandr2 \ libgbm1 \ libpango-1.0-0 \ libcairo2 \ libasound2 \ libatspi2.0-0 - name: Install .NET Tools run: dotnet tool update -g docfx - name: Checkout Repository uses: actions/checkout@v4 with: submodules: recursive token: ${{secrets.REFUEL_API_KEY}} - name: Compile Web Pages run: $HOME/.dotnet/tools/docfx - name: SFTP Deploy uses: wlixcc/SFTP-Deploy-Action@v1.2.5 with: username: '${{ vars.SSH_USER }}' server: '${{ vars.SSH_SERVER }}' port: '${{ vars.SSH_PORT }}' ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }} local_path: './_site/*' remote_path: '${{ vars.DESTINATION }}' sftpArgs: -o ConnectTimeout=10 rsyncArgs: --exclude=.*