neiam
/action-setup-beam
action-setup-beam
public · Issues · Pulls · Labels · Forks · Compare · Actions queued
⭐
Log in to mark this repository.
Tweak our test combos (#31)
d2707f3 · Paulo F. Oliveira · 2021-04-19 22:17
Files changed
modified
.github/workflows/test.yml
+78
−63
@@ -21,99 +21,114 @@ jobs:
| 21 | 21 | integration_test: |
| 22 | 22 | name: > |
| 23 | 23 | Pre-release integration tests |
| 24 | − (Erlang/OTP ${{matrix.pair.otp-version}}, | |
| 25 | − Elixir ${{matrix.pair.elixir-version}}, | |
| 26 | − rebar3 ${{matrix.pair.rebar3-version}}) | |
| 27 | − runs-on: ubuntu-18.04 | |
| 24 | + (Ubuntu ${{matrix.combo.os}}, | |
| 25 | + Erlang/OTP ${{matrix.combo.otp-version}}, | |
| 26 | + Elixir ${{matrix.combo.elixir-version}}, | |
| 27 | + rebar3 ${{matrix.combo.rebar3-version}}) | |
| 28 | + runs-on: ${{matrix.combo.os}} | |
| 28 | 29 | strategy: |
| 29 | 30 | fail-fast: false |
| 30 | 31 | matrix: |
| 31 | − pair: | |
| 32 | − # Full Versions | |
| 33 | − - otp-version: '22.0' | |
| 34 | − elixir-version: '1.9.1' | |
| 35 | − - otp-version: '22.3.4' | |
| 36 | − rebar3-version: '3.14.4' | |
| 37 | − # Semver ranges | |
| 38 | − - otp-version: '21.x' | |
| 39 | − elixir-version: '<1.9.1' | |
| 40 | − - otp-version: '21.x' | |
| 41 | − rebar3-version: '3.14.4' | |
| 42 | − # Branches | |
| 43 | − - otp-version: '22.0' | |
| 44 | − elixir-version: master | |
| 45 | − - otp-version: 'master' | |
| 46 | − elixir-version: '1.11.3' | |
| 47 | − # Pre-releases | |
| 48 | − - otp-version: '23.0' | |
| 49 | − elixir-version: '1.11.0-rc.0' | |
| 50 | − # Fallback to Elixir (with no OTP) | |
| 51 | − - otp-version: '24.0-rc1' | |
| 52 | − elixir-version: '1.9.3' | |
| 53 | − # Miscellaneous combos | |
| 54 | − - elixir-version: 'master' | |
| 55 | − otp-version: '22.3' | |
| 56 | − - elixir-version: 'master' | |
| 32 | + combo: | |
| 33 | + - elixir-version: 'v1.0' | |
| 34 | + otp-version: '17' | |
| 35 | + os: 'ubuntu-16.04' | |
| 36 | + - elixir-version: 'v1.0' | |
| 37 | + otp-version: '17' | |
| 38 | + os: 'ubuntu-18.04' | |
| 39 | + - elixir-version: 'v1.1' | |
| 40 | + otp-version: '18' | |
| 41 | + os: 'ubuntu-16.04' | |
| 42 | + - elixir-version: 'v1.1' | |
| 43 | + otp-version: '18' | |
| 44 | + os: 'ubuntu-18.04' | |
| 45 | + - elixir-version: 'v1.2' | |
| 46 | + otp-version: '19' | |
| 47 | + rebar3-version: '3.10' | |
| 48 | + os: 'ubuntu-16.04' | |
| 49 | + - elixir-version: 'v1.2' | |
| 50 | + otp-version: '19' | |
| 51 | + rebar3-version: '3.10' | |
| 52 | + os: 'ubuntu-18.04' | |
| 53 | + - elixir-version: 'v1.4' | |
| 54 | + otp-version: '20' | |
| 55 | + rebar3-version: '3.11' | |
| 56 | + os: 'ubuntu-16.04' | |
| 57 | + - elixir-version: 'v1.4' | |
| 58 | + otp-version: '20' | |
| 59 | + rebar3-version: '3.11' | |
| 60 | + os: 'ubuntu-18.04' | |
| 61 | + - elixir-version: 'v1.4' | |
| 62 | + otp-version: '20' | |
| 63 | + rebar3-version: '3.11' | |
| 64 | + os: 'ubuntu-20.04' | |
| 65 | + - elixir-version: 'v1.6' | |
| 66 | + otp-version: '21' | |
| 67 | + rebar3-version: '3.12' | |
| 68 | + os: 'ubuntu-16.04' | |
| 69 | + - elixir-version: 'v1.6' | |
| 70 | + otp-version: '21' | |
| 71 | + rebar3-version: '3.12' | |
| 72 | + os: 'ubuntu-18.04' | |
| 73 | + - elixir-version: 'v1.6' | |
| 74 | + otp-version: '21' | |
| 75 | + rebar3-version: '3.12' | |
| 76 | + os: 'ubuntu-20.04' | |
| 77 | + - elixir-version: 'v1.7' | |
| 57 | 78 | otp-version: '22' |
| 58 | − - elixir-version: 'master' | |
| 59 | − otp-version: '^22' | |
| 60 | − - elixir-version: 'master' | |
| 79 | + rebar3-version: '3.13' | |
| 80 | + os: 'ubuntu-16.04' | |
| 81 | + - elixir-version: 'v1.7' | |
| 61 | 82 | otp-version: '22' |
| 62 | − - elixir-version: '1.6.5' | |
| 63 | − otp-version: 'maint-21' | |
| 64 | − - elixir-version: 'v1.6.5' | |
| 65 | − otp-version: 'maint-21' | |
| 66 | − - elixir-version: 'v1.9.x' | |
| 67 | − otp-version: '21.1' | |
| 68 | − - elixir-version: '1.9.x' | |
| 69 | − otp-version: '21' | |
| 70 | − - elixir-version: 'v1.8.x' | |
| 83 | + rebar3-version: '3.13' | |
| 84 | + os: 'ubuntu-18.04' | |
| 85 | + - elixir-version: 'v1.7' | |
| 71 | 86 | otp-version: '22' |
| 72 | − - elixir-version: 'v1.8.x' | |
| 73 | − otp-version: '23.1' | |
| 74 | − - elixir-version: 'v1.8' | |
| 75 | − otp-version: '^22.3' | |
| 87 | + rebar3-version: '3.13' | |
| 88 | + os: 'ubuntu-20.04' | |
| 89 | + - elixir-version: 'v1.10' | |
| 90 | + otp-version: '23' | |
| 91 | + rebar3-version: '3.14' | |
| 92 | + os: 'ubuntu-16.04' | |
| 93 | + - elixir-version: 'v1.10' | |
| 94 | + otp-version: '23' | |
| 95 | + rebar3-version: '3.14' | |
| 96 | + os: 'ubuntu-18.04' | |
| 76 | 97 | - elixir-version: 'v1.10' |
| 77 | − otp-version: '21.x' | |
| 78 | − - elixir-version: 'v1.x' | |
| 79 | − otp-version: 'master' | |
| 80 | − - elixir-version: 'v1.11.0-rc.0' | |
| 81 | 98 | otp-version: '23' |
| 82 | − - elixir-version: 'v1.11.0-rc.0' | |
| 83 | − otp-version: '23.0' | |
| 84 | − - elixir-version: 'v1.11.0-rc.0' | |
| 85 | − otp-version: 'master' | |
| 99 | + rebar3-version: '3.14' | |
| 100 | + os: 'ubuntu-20.04' | |
| 86 | 101 | steps: |
| 87 | 102 | - uses: actions/checkout@v2 |
| 88 | 103 | - name: Use erlef/setup-beam |
| 89 | 104 | id: setup-beam |
| 90 | 105 | uses: ./ |
| 91 | 106 | with: |
| 92 | − otp-version: ${{matrix.pair.otp-version}} | |
| 93 | − elixir-version: ${{matrix.pair.elixir-version}} | |
| 94 | − rebar3-version: ${{matrix.pair.rebar3-version}} | |
| 107 | + otp-version: ${{matrix.combo.otp-version}} | |
| 108 | + elixir-version: ${{matrix.combo.elixir-version}} | |
| 109 | + rebar3-version: ${{matrix.combo.rebar3-version}} | |
| 95 | 110 | - name: Erlang/OTP version (action) |
| 96 | 111 | run: echo "Erlang/OTP ${{steps.setup-beam.outputs.otp-version}}" |
| 97 | 112 | - name: Elixir version (action) |
| 98 | 113 | run: echo "Elixir ${{steps.setup-beam.outputs.elixir-version}}" |
| 99 | − if: ${{matrix.pair.elixir-version}} | |
| 114 | + if: ${{matrix.combo.elixir-version}} | |
| 100 | 115 | - name: rebar3 version (action) |
| 101 | 116 | run: echo "rebar3 ${{steps.setup-beam.outputs.rebar3-version}}" |
| 102 | − if: ${{matrix.pair.rebar3-version}} | |
| 117 | + if: ${{matrix.combo.rebar3-version}} | |
| 103 | 118 | - name: mix version and help (CLI) |
| 104 | 119 | run: | |
| 105 | 120 | mix -v |
| 106 | 121 | mix help local.rebar |
| 107 | 122 | mix help local.hex |
| 108 | − if: ${{matrix.pair.elixir-version}} | |
| 123 | + if: ${{matrix.combo.elixir-version}} | |
| 109 | 124 | - name: Run Mix project tests |
| 110 | 125 | run: | |
| 111 | 126 | cd test-projects/mix |
| 112 | 127 | mix deps.get |
| 113 | 128 | mix test |
| 114 | − if: ${{matrix.pair.elixir-version}} | |
| 129 | + if: ${{matrix.combo.elixir-version}} | |
| 115 | 130 | - name: Run rebar3 project tests |
| 116 | 131 | run: | |
| 117 | 132 | cd test-projects/rebar3 |
| 118 | − rebar3 as test do xref,dialyzer,ct,cover | |
| 119 | − if: ${{matrix.pair.rebar3-version}} | |
| 133 | + rebar3 ct | |
| 134 | + if: ${{matrix.combo.rebar3-version}} |
modified
README.md
+2
−2
@@ -37,12 +37,12 @@ not match a pre-release.
| 37 | 37 | ### Compatibility between Ubuntu and Erlang/OTP |
| 38 | 38 | |
| 39 | 39 | This list presents the known working version combos between Ubuntu |
| 40 | −and Erlang/OTP. Non-listed combos are not guaranteed to work. | |
| 40 | +and Erlang/OTP. | |
| 41 | 41 | |
| 42 | 42 | | Ubuntu | Erlang/OTP | Status |
| 43 | 43 | |- |- |- |
| 44 | 44 | | ubuntu-16.04 | 17 - 23 | ✅ |
| 45 | −| ubuntu-18.04 | 20 - 23 | ✅ | |
| 45 | +| ubuntu-18.04 | 17 - 23 | ✅ | |
| 46 | 46 | | ubuntu-20.04 | 20 - 23 | ✅ |
| 47 | 47 | |
| 48 | 48 | ### Basic example (Elixir) |
modified
test-projects/mix/test/test_test.exs
+4
−0
@@ -6,4 +6,8 @@ defmodule TestTest do
| 6 | 6 | out = Logfmt.encode(foo: "bar") |
| 7 | 7 | assert out == "foo=bar" |
| 8 | 8 | end |
| 9 | + | |
| 10 | + test "ensures ssl" do | |
| 11 | + assert {:ok, _} = Application.ensure_all_started(:ssl) | |
| 12 | + end | |
| 9 | 13 | end |
modified
test-projects/rebar3/test/mylib_SUITE.erl
+4
−1
@@ -5,7 +5,10 @@
| 5 | 5 | -compile([export_all, nowarn_export_all]). |
| 6 | 6 | |
| 7 | 7 | all() -> |
| 8 | − [hello_world]. | |
| 8 | + [hello_world, ssl_ok]. | |
| 9 | 9 | |
| 10 | 10 | hello_world(_Config) -> |
| 11 | 11 | ?assertEqual(world, mylib:hello()). |
| 12 | + | |
| 13 | +ssl_ok(_Config) -> | |
| 14 | + {ok, _} = application:ensure_all_started(ssl). |
Parents: 78d10b5