mirror of
https://github.com/erlef/setup-beam.git
synced 2026-07-23 07:06:07 +00:00
c80fdc938c
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.2 to 7.0.0. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v6.0.2...v7.0.0) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 7.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
161 lines
5.2 KiB
YAML
161 lines
5.2 KiB
YAML
---
|
|
name: windows
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
branches:
|
|
- "*"
|
|
workflow_dispatch: {}
|
|
|
|
jobs:
|
|
integration_test:
|
|
name: >
|
|
OS ${{matrix.combo.os}},
|
|
OTP ${{matrix.combo.otp-version}},
|
|
Elixir ${{matrix.combo.elixir-version}},
|
|
Gleam ${{matrix.combo.gleam-version}},
|
|
rebar3 ${{matrix.combo.rebar3-version}}
|
|
runs-on: ${{matrix.combo.os}}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
combo:
|
|
# Windows 2022 - per README
|
|
- otp-version: '26' # 21 is "so old", at this moment, we can't find it in latest 100
|
|
os: 'windows-2022'
|
|
- otp-version: '29'
|
|
os: 'windows-2022'
|
|
# Windows 2025 - per README
|
|
- otp-version: '26' # 21 is "so old", at this moment, we can't find it in latest 100
|
|
os: 'windows-2025'
|
|
- otp-version: '29'
|
|
os: 'windows-2025'
|
|
# Windows latest
|
|
- otp-version: '<26'
|
|
elixir-version: '<1.17'
|
|
os: 'windows-latest'
|
|
- otp-version: '27'
|
|
elixir-version: 'v1.17.0'
|
|
rebar3-version: '3.23'
|
|
os: 'windows-latest'
|
|
- otp-version: '26.0'
|
|
elixir-version: 'main'
|
|
os: 'windows-latest'
|
|
version-type: 'strict'
|
|
- otp-version: '26.0'
|
|
elixir-version: 'v1.14-otp-25'
|
|
os: 'windows-latest'
|
|
version-type: 'strict'
|
|
- otp-version: '26.0'
|
|
elixir-version: '1.14.5'
|
|
os: 'windows-latest'
|
|
version-type: 'strict'
|
|
- elixir-version: 'v1.10'
|
|
otp-version: '23'
|
|
rebar3-version: '3.14'
|
|
os: 'windows-latest'
|
|
- elixir-version: 'v1.16'
|
|
otp-version: '24'
|
|
rebar3-version: '3.15'
|
|
os: 'windows-latest'
|
|
- gleam-version: '1.9.0'
|
|
otp-version: '27'
|
|
os: 'windows-latest'
|
|
- elixir-version: 'v1.16'
|
|
otp-version: '24'
|
|
escript_packages: 'hex protobuf'
|
|
escript_script: 'protoc-gen-elixir --version'
|
|
os: 'windows-latest'
|
|
steps:
|
|
- uses: actions/checkout@v7.0.0
|
|
- name: Use erlef/setup-beam
|
|
id: setup-beam
|
|
uses: ./
|
|
with:
|
|
otp-version: ${{matrix.combo.otp-version}}
|
|
elixir-version: ${{matrix.combo.elixir-version}}
|
|
gleam-version: ${{matrix.combo.gleam-version}}
|
|
rebar3-version: ${{matrix.combo.rebar3-version}}
|
|
version-type: ${{matrix.combo.version-type}}
|
|
- name: Erlang/OTP version (action)
|
|
run: echo "Erlang/OTP ${{steps.setup-beam.outputs.otp-version}}"
|
|
- name: Elixir version (action)
|
|
run: echo "Elixir ${{steps.setup-beam.outputs.elixir-version}}"
|
|
if: ${{matrix.combo.elixir-version}}
|
|
- name: Gleam version (action)
|
|
run: echo "Gleam ${{steps.setup-beam.outputs.gleam-version}}"
|
|
if: ${{matrix.combo.gleam-version}}
|
|
- name: rebar3 version (action)
|
|
run: echo "rebar3 ${{steps.setup-beam.outputs.rebar3-version}}"
|
|
- name: Run rebar3 and rebar3.cmd
|
|
run: |
|
|
# Should not fail
|
|
rebar3 version
|
|
rebar3.cmd version
|
|
if: ${{matrix.combo.rebar3-version}}
|
|
- name: rebar3 from Rust
|
|
run: |
|
|
cd test/projects/rust_rebar3_cmd
|
|
cargo test -- --nocapture
|
|
if: ${{matrix.combo.rebar3-version}}
|
|
- name: mix version and help (CLI)
|
|
run: |
|
|
mix -v
|
|
mix help local.rebar
|
|
mix help local.hex
|
|
if: ${{matrix.combo.elixir-version}}
|
|
- name: Run Elixir/Mix project tests
|
|
run: |
|
|
cd test/projects/elixir_mix
|
|
mix deps.get
|
|
mix test
|
|
if: ${{matrix.combo.elixir-version}}
|
|
- name: Run Erlang/rebar3 project tests
|
|
run: |
|
|
cd test/projects/erlang_rebar3
|
|
rebar3 ct
|
|
if: ${{matrix.combo.rebar3-version}}
|
|
- name: Run escript
|
|
run: |
|
|
mix escript.install --force ${{matrix.combo.escript_packages}}
|
|
${{matrix.combo.escript_script}}
|
|
if: ${{matrix.combo.escript_packages && matrix.combo.escript_script}}
|
|
|
|
environment_variables:
|
|
name: Environment variables
|
|
runs-on: ${{matrix.combo.os}}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
combo:
|
|
- otp-version: 27
|
|
elixir-version: 1.19
|
|
gleam-version: 1.10
|
|
rebar3-version: 3.24
|
|
os: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v7.0.0
|
|
- name: Use erlef/setup-beam
|
|
id: setup-beam
|
|
uses: ./
|
|
with:
|
|
otp-version: ${{matrix.combo.otp-version}}
|
|
elixir-version: ${{matrix.combo.elixir-version}}
|
|
gleam-version: ${{matrix.combo.gleam-version}}
|
|
rebar3-version: ${{matrix.combo.rebar3-version}}
|
|
- run: env
|
|
- name: Check environment variables
|
|
run: |
|
|
& "$Env:INSTALL_DIR_FOR_ELIXIR/bin/elixir" "-v"
|
|
& "$Env:INSTALL_DIR_FOR_GLEAM/bin/gleam.exe" "--version"
|
|
& "$Env:INSTALL_DIR_FOR_OTP/bin/erl.exe" "+V"
|
|
& "$Env:INSTALL_DIR_FOR_REBAR3/bin/rebar3.cmd" "version"
|
|
& "$Env:INSTALL_DIR_FOR_REBAR3/bin/rebar3.ps1" "version"
|
|
shell: pwsh
|