50 lines
1.4 KiB
YAML
50 lines
1.4 KiB
YAML
---
|
|
|
|
name: Elixir Dependency Version Check
|
|
|
|
on:
|
|
pull_request:
|
|
|
|
jobs:
|
|
elixir_deps_check:
|
|
runs-on: ubuntu-22.04
|
|
container: ghcr.io/emqx/emqx-builder/5.1-1:1.14.5-25.3.2-1-ubuntu22.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
- name: ensure rebar
|
|
run: ./scripts/ensure-rebar3.sh
|
|
- name: Work around https://github.com/actions/checkout/issues/766
|
|
run: |
|
|
git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
|
- name: setup mix
|
|
run: |
|
|
mix local.hex --force
|
|
mix local.rebar --force
|
|
mix deps.get
|
|
# we check only enterprise because `rebar3 tree`, even if an
|
|
# enterprise app is excluded from `project_app_dirs` in
|
|
# `rebar.config.erl`, will still list dependencies from it.
|
|
# Since the enterprise profile is a superset of the
|
|
# community one and thus more complete, we use the former.
|
|
env:
|
|
MIX_ENV: emqx-enterprise
|
|
PROFILE: emqx-enterprise
|
|
- name: check elixir deps
|
|
run: ./scripts/check-elixir-deps-discrepancies.exs
|
|
env:
|
|
MIX_ENV: emqx-enterprise
|
|
PROFILE: emqx-enterprise
|
|
- name: produced lock files
|
|
uses: actions/upload-artifact@v3
|
|
if: failure()
|
|
with:
|
|
name: produced_lock_files
|
|
path: |
|
|
mix.lock
|
|
rebar.lock
|
|
retention-days: 1
|
|
|
|
...
|