Skip to content

Make fetch an Effect #1751

Make fetch an Effect

Make fetch an Effect #1751

Workflow file for this run

name: Miso CI
on:
push:
branches:
- master
pull_request:
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
jobs:
build:
runs-on: ubuntu-latest
if: github.ref != 'refs/heads/master'
steps:
- uses: DeterminateSystems/nix-installer-action@main
- uses: actions/[email protected]
- uses: cachix/install-nix-action@v25
with:
nix_path: nixpkgs=channel:nixpkgs-unstable
- name: Cancel Previous Runs
uses: styfle/[email protected]
with:
access_token: ${{ github.token }}
- uses: cachix/cachix-action@v16
with:
name: haskell-miso-cachix
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Nix channel update
run: nix-channel --update
- name: Bun install
run: nix-env -iA bun -f . && bun install
- name: Miso.ts tests
run: bun run test
- name: Bun build prod
run: bun run build && bun run prod
- name: (JS) Miso GHCJS (GHCJS 8.6)
run: nix-build -A miso-ghcjs
- name: (JS) Miso GHCJS Production (GHCJS 8.6)
run: nix-build -A miso-ghcjs-prod
- name: (x86) Miso GHC (GHC 8.6.5)
run: nix-build -A miso-ghc
- name: (JS) Miso GHCJS (GHC 9.12.2)
run: nix-build -A miso-ghcjs-9122
- name: (x86) Miso GHC (GHC 9.12.2)
run: nix-build -A miso-ghc-9122
- name: (x86) Haskell-miso.org server (GHC 8.6.5)
run: nix-build -A haskell-miso-server
- name: (JS) Haskell-miso.org client (GHCJS 8.6)
run: nix-build -A haskell-miso-client
- name: (x86) sse.haskell-miso.org server (GHC 8.6.5)
run: nix-build -A sse-server
- name: (JS) sse.haskell-miso.org client (GHCJS 8.6)
run: nix-build -A sse-client
- name: (x86) Miso examples (GHC 8.6.5)
run: nix-build -A miso-examples-ghc
- name: (x86) Miso examples (GHC 9.12.2)
run: nix-build -A miso-examples-ghc-9122
- name: (JS) Miso examples (GHCJS 9.12.2)
run: nix-build -A miso-examples-ghcjs-9122
- name: (JS) Miso third-party examples (2048, flatris, etc.) (GHCJS 8.6.5)
run: nix-build -A more-examples -j1
- name: (JS) Miso sample app (GHCJS 8.6)
run: nix-build -A sample-app-js
- name: (x86) Miso sample app jsaddle (GHC 8.6.5)
run: nix-build -A sample-app
- name: (x86) Nix garbage collect
run: nix-collect-garbage -d
- name: (WASM) Miso examples (GHC 9.12.2)
run: nix-build -A wasmExamples && ./result/bin/build.sh
- name: (x86) NixOS test runner for haskell-miso.org (GHC 8.6.5)
run: nix-build -A haskell-miso-org-test
- name: (x86) Nix garbage collect
run: nix-collect-garbage -d
- name: Miso Haddocks
run: nix-shell --run 'cabal update && cabal haddock-project'
- name: (x86) Nginx example hosting check
run: nix-build -A nginx-nixos-test --dry-run
deploy:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/master'
steps:
- uses: DeterminateSystems/nix-installer-action@v12
- uses: actions/[email protected]
- uses: cachix/install-nix-action@v25
with:
nix_path: nixpkgs=channel:nixpkgs-unstable
- uses: cachix/cachix-action@v16
with:
name: haskell-miso-cachix
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Nix channel update
run: nix-channel --update
- name: Bun install
run: nix-env -iA bun -f . && bun install
- name: Bun build
run: bun run build
- name: Build
run: nix-build -A miso-ghcjs
- name: Miso Haddocks
run: nix-shell --run 'cabal update && cabal haddock-project'
- name: Miso.ts test coverage
run: bun run test
- name: Deploy
run: nix-build -A deploy -j1 && ./result
env:
AWS_SECRET_ACCESS_KEY: '${{ secrets.AWS_SECRET_ACCESS_KEY }}'
AWS_ACCESS_KEY_ID: '${{ secrets.AWS_ACCESS_KEY_ID }}'
DEPLOY: '${{ secrets.DEPLOY }}'
EMAIL: '${{ secrets.EMAIL }}'