diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index 8b12972..321b8f5 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -9,6 +9,73 @@ on: jobs: +jobs: + + new-builds: + name: Erlang ${{ matrix.otp-version }} build + runs-on: ubuntu-latest + + strategy: + matrix: + otp-version: ['27'] + + steps: + - uses: actions/checkout@v4 + - uses: erlef/setup-beam@v1 + with: + otp-version: ${{ matrix.otp-version }} + rebar3-version: '3.24' + - name: Check rebar3 Version + run: DEBUG=1 rebar3 --version + - name: Compile + run: rebar3 compile +# - name: Xref Checks +# run: rebar3 xref +# - name: Dialyzer +# run: rebar3 dialyzer + - name: Run Unit Tests + run: rebar3 as test eunit + - name: Run Proper Tests + run: rebar3 as test do proper -c + - name: Check Coverage + run: rebar3 as test cover -v --min_coverage=0 + - name: Get Supported 'new' Templates + run: cd priv/testing && rebar3 new + - name: Create LFE Library Project + run: cd priv/testing && rebar3 new lfe-lib example-lib + - name: Compile LFE Library Project + run: cd priv/testing/example-lib && DEBUG=1 rebar3 lfe compile + - name: Create LFE Main Project + run: cd priv/testing && rebar3 new lfe-main example-main + - name: Run LFE Main Project's Script + run: cd priv/testing/example-main && rebar3 lfe run -- 42 + - name: Create LFE/OTP Application Project + run: cd priv/testing && rebar3 new lfe-app example-app + - name: Compile LFE Application Project + run: cd priv/testing/example-app && DEBUG=1 rebar3 lfe compile + - name: Create LFE escript Project + run: cd priv/testing && rebar3 new lfe-escript example-escript + - name: Escriptize LFE escript Project + run: cd priv/testing/example-escript && rebar3 lfe escriptize + - name: Run LFE escript Project + run: cd priv/testing/example-escript && rebar3 lfe run-escript 1 2 5 + - name: Create LFE/OTP Release Project + run: cd priv/testing && rebar3 new lfe-release example-release + - name: Build LFE/OTP Release + run: cd priv/testing/example-release && rebar3 release + # XXX Startup keeps hanging in Github Actions ... probably need to do somehting + # different. + # - name: Start LFE/OTP Release + # run: cd priv/testing/example-release && rebar3 lfe run-release start && sleep 5 + # - name: Ping LFE/OTP Release + # run: cd priv/testing/example-release && rebar3 lfe run-release ping + - name: Versions Command Output + run: cd priv/testing/example-release && rebar3 lfe versions + - name: Clean Command + run: cd priv/testing/example-lib && rebar3 lfe clean + - name: Clean-build Command + run: cd priv/testing/example-app && rebar3 lfe clean-build + builds: name: Erlang ${{ matrix.otp-version }} build runs-on: ubuntu-latest