# This workflow uses actions that are not certified by GitHub. # They are provided by a third-party and are governed by # separate terms of service, privacy policy, and support # documentation. # This workflow will install Deno then run `deno lint` and `deno test`. # For more information see: https://github.com/denoland/setup-deno name: Deno on: push: branches: ["main"] pull_request: branches: ["main"] env: TEST_NOTIFICATION_PUBKEY: ${{ vars.TEST_NOTIFICATION_PUBKEY }} permissions: contents: read jobs: test: timeout-minutes: 3 runs-on: ubuntu-latest strategy: matrix: deno-version: [1.38.2] steps: - name: Setup repo uses: actions/checkout@v3 with: submodules: 'true' - name: Setup Deno uses: denoland/setup-deno@v1 - name: Verify formatting run: make fmt-check - name: Run tests run: make test - name: UI test run: cd UI && make compile-all-tests deploy: timeout-minutes: 1 runs-on: ubuntu-latest permissions: id-token: write # Needed for auth with Deno Deploy contents: read # Needed to clone the repository steps: - name: Clone repository uses: actions/checkout@v3 with: submodules: 'true' - name: Setup Deno uses: denoland/setup-deno@v1 - name: Bundle run: cd UI && make build-pwa - name: Upload to Deno Deploy uses: denoland/deployctl@v1 with: project: "blowater" entrypoint: https://raw.githubusercontent.com/denoland/deno_std/0.196.0/http/file_server.ts root: UI/build-pwa