Merge pull request #1744 from bors-ng/dependabot/npm_and_yarn/assets/β¦ #2
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: | |
# Only run when merging to master, or open/synchronize/reopen a PR. | |
push: | |
branches: | |
- master | |
- staging | |
- trying | |
pull_request: | |
merge_group: | |
jobs: | |
test: | |
name: Test | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
elixir: ["1.12.3", "1.13.4", "1.14.5"] | |
otp_release: ["24.3.4.13", "25.3.2.4"] | |
os: [ubuntu-latest] | |
database: [postgresql, mysql] | |
exclude: | |
- elixir: "1.12.3" | |
otp_release: "25.3.2.4" | |
# #- elixir: "1.14.1" | |
# # otp_release: "23.2" | |
steps: | |
- uses: actions/checkout@master | |
- uses: erlef/setup-beam@v1 | |
with: | |
otp-version: ${{ matrix.otp_release }} | |
elixir-version: ${{ matrix.elixir }} | |
- run: mix deps.get | |
env: | |
BORS_DATABASE: ${{ matrix.database }} | |
- name: Create Mysql Repo | |
if: matrix.database == 'mysql' | |
run: | | |
echo "running mysql database creation" | |
mix ecto.create -r BorsNG.Database.RepoMysql | |
env: | |
BORS_DATABASE: ${{ matrix.database }} | |
MIX_ENV: test | |
- name: Migrate Mysql Repo | |
if: matrix.database == 'mysql' | |
run: | | |
echo "running mysql migration" | |
mix ecto.migrate -r BorsNG.Database.RepoMysql | |
env: | |
BORS_DATABASE: ${{ matrix.database }} | |
MIX_ENV: test | |
- name: Create Postgres Repo | |
if: matrix.database == 'postgresql' | |
run: | | |
echo "running postgres database creation" | |
mix ecto.create -r BorsNG.Database.RepoPostgres | |
env: | |
BORS_DATABASE: ${{ matrix.database }} | |
MIX_ENV: test | |
- name: Migrate Postgres Repo | |
if: matrix.database == 'postgresql' | |
run: | | |
echo "running postgres migration" | |
mix ecto.migrate -r BorsNG.Database.RepoPostgres | |
env: | |
BORS_DATABASE: ${{ matrix.database }} | |
MIX_ENV: test | |
- run: mix test | |
env: | |
BORS_DATABASE: ${{ matrix.database }} | |
services: | |
postgresql: | |
image: postgres:13 | |
env: | |
POSTGRES_PASSWORD: "Postgres1234" | |
POSTGRES_USER: postgres | |
POSTGRES_DB: bors_test | |
ports: | |
- 5432:5432 | |
mysql: | |
image: borsng/mysqlnd | |
env: | |
MYSQL_ALLOW_EMPTY_PASSWORD: true | |
MYSQL_ROOT_PASSWORD: "" | |
MYSQL_DATABASE: bors_test | |
ports: | |
- 3306:3306 | |
exfmt: | |
name: exfmt | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@master | |
- uses: erlef/setup-beam@v1 | |
with: | |
otp-version: "25.1" | |
elixir-version: "1.14.1" | |
- run: mix format --check-formatted | |
ci-success: | |
name: ci | |
if: always() | |
needs: | |
- exfmt | |
- test | |
runs-on: ubuntu-latest | |
steps: | |
- run: jq --exit-status 'all(.result == "success")' <<< '${{ toJson(needs) }}' | |
- name: Done | |
run: exit 0 | |
lint-test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Set up Helm | |
uses: azure/setup-helm@v1 | |
with: | |
version: v3.5.3 | |
- uses: actions/setup-python@v2 | |
with: | |
python-version: 3.8 | |
- name: Set up chart-testing | |
uses: helm/[email protected] | |
- name: Run chart-testing (list-changed) | |
id: list-changed | |
run: | | |
changed=$(ct list-changed --config .github/workflows/config/chart-lint.yaml) | |
if [[ -n "$changed" ]]; then | |
echo "changed=true" >> "$GITHUB_OUTPUT" | |
fi | |
- name: Run chart-testing (lint) | |
run: ct lint --config .github/workflows/config/chart-lint.yaml | |
# Disable for now because Bors requires the GitHub application to exists | |
# - name: Create kind cluster | |
# uses: helm/[email protected] | |
# if: steps.list-changed.outputs.changed == 'true' | |
# | |
# - name: Run chart-testing (install) | |
# run: ct install --config .github/workflows/config/chart-lint.yaml |