diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..0ef8c69 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,11 @@ +version: 2 +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "daily" + time: '12:00' + open-pull-requests-limit: 10 + labels: + - task + - dependencies diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..2be958c --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,63 @@ +name: CI + +on: + pull_request: + push: + branches: [ "main" ] + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: Build + runs-on: ubuntu-22.04 + strategy: + matrix: + otp_version: ['26.2', '25.3'] + + steps: + - uses: actions/checkout@v4 + + - uses: erlef/setup-beam@v1 + with: + otp-version: ${{ matrix.otp_version }} + version-type: 'strict' + + - uses: actions/cache@v4 + with: + path: | + ~/.cache/rebar3 + _build + key: ${{ runner.os }}-erlang-${{ matrix.otp_version }}-${{ hashFiles('**/*rebar.lock') }} + + - run: make build + + test: + name: Test + runs-on: ubuntu-22.04 + strategy: + matrix: + otp_version: ['26.2', '25.3'] + + needs: + - build + + steps: + - uses: actions/checkout@v4 + + - uses: erlef/setup-beam@v1 + with: + otp-version: ${{ matrix.otp_version }} + version-type: 'strict' + + - uses: actions/cache@v4 + with: + path: | + ~/.cache/rebar3 + _build + key: ${{ runner.os }}-erlang-${{ matrix.otp_version }}-${{ hashFiles('**/*rebar.lock') }} + + - run: make test