add migrations to usage page #669
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: [develop] | |
pull_request: | |
branches: [develop] | |
env: | |
MIX_ENV: test | |
KUBECONFIG: /home/runner/.kube/config | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
k8s_version: [v1.27.1] | |
steps: | |
- uses: actions/[email protected] | |
- uses: engineerd/[email protected] | |
id: kind | |
with: | |
version: v0.18.0 | |
image: kindest/node:${{ matrix.k8s_version }} | |
- name: Setup elixir | |
uses: erlef/setup-beam@v1 | |
with: | |
version-file: .tool-versions | |
version-type: strict | |
install-rebar: true | |
install-hex: true | |
- name: Retrieve Build Cache | |
uses: actions/cache@v3 | |
id: build-folder-cache | |
with: | |
path: _build | |
key: ${{ runner.os }}-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}-build-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }} | |
- name: Retrieve Mix Dependencies Cache | |
uses: actions/cache@v3 | |
id: mix-cache | |
with: | |
path: deps | |
key: ${{ runner.os }}-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}-mix-${{ hashFiles(format('{0}{1}', github.workspace, '/mix.lock')) }} | |
- name: Restore PLT Cache | |
uses: actions/cache@v3 | |
id: plt-cache | |
with: | |
key: | | |
${{ runner.os }}-${{ steps.beam.outputs.elixir-version }}-${{ steps.beam.outputs.otp-version }}-plt | |
restore-keys: | | |
${{ runner.os }}-${{ steps.beam.outputs.elixir-version }}-${{ steps.beam.outputs.otp-version }}-plt | |
path: | | |
priv/plts | |
- name: Install Mix Dependencies | |
if: steps.mix-cache.outputs.cache-hit != 'true' | |
run: | | |
mix local.rebar --force | |
mix local.hex --force | |
mix deps.get | |
- name: Check Formatting | |
run: mix format --check-formatted | |
- name: Run Credo | |
run: mix credo --strict | |
- name: Run Coverage | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: TEST_WAIT_TIMEOUT=110 mix coveralls.github --timeout 120000 --include integration --max-failures 1 | |
# Create PLTs if no cache was found | |
- name: Create PLTs | |
if: steps.plt-cache.outputs.cache-hit != 'true' | |
run: | | |
mkdir -p priv/plts | |
mix dialyzer | |
- name: Run dialyzer | |
run: mix dialyzer --format github |