Compare commits

..
4 Commits
5 changed files with 53 additions and 29 deletions
+2
View File
@@ -22,6 +22,8 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
combo: combo:
- otp-version: 'OTP-27.0-rc1'
os: 'ubuntu-latest'
- otp-version: '26.0' - otp-version: '26.0'
elixir-version: 'v1.14-otp-25' elixir-version: 'v1.14-otp-25'
os: 'ubuntu-latest' os: 'ubuntu-latest'
+2
View File
@@ -22,6 +22,8 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
combo: combo:
- otp-version: 'OTP-27.0-rc1'
os: 'windows-latest'
- otp-version: '26.0' - otp-version: '26.0'
elixir-version: 'main' elixir-version: 'main'
os: 'windows-latest' os: 'windows-latest'
+9 -9
View File
@@ -53,9 +53,9 @@ and Erlang/OTP.
|- |- |- |- |- |-
| ubuntu-18.04 | 17 - 25 | ✅ | ubuntu-18.04 | 17 - 25 | ✅
| ubuntu-20.04 | 20 - 25 | ✅ | ubuntu-20.04 | 20 - 25 | ✅
| ubuntu-22.04 | 24.2 - 25 | ✅ | ubuntu-22.04 | 24.2 - 26 | ✅
| windows-2019 | 21* - 25 | ✅ | windows-2019 | 21* - 25 | ✅
| windows-2022 | 21* - 25 | ✅ | windows-2022 | 21* - 26 | ✅
**Note** *: prior to 23, Windows builds are only available for minor versions, e.g. 21.0, 21.3, 22.0, etc. **Note** *: prior to 23, Windows builds are only available for minor versions, e.g. 21.0, 21.3, 22.0, etc.
@@ -122,11 +122,11 @@ with the following correspondence.
#### `.tool-versions` format #### `.tool-versions` format
| YML | `.tool-versions` | | YML | `.tool-versions` |
|- |- |- |- |
| `otp-version` | `erlang` | `otp-version` | `erlang` |
| `elixir-version` | `elixir` | `elixir-version` | `elixir` |
| `gleam-version` | `gleam` | `gleam-version` | `gleam` |
| `rebar3-version` | `rebar` | `rebar3-version` | `rebar` |
### Example (Erlang/OTP + Elixir, on Ubuntu) ### Example (Erlang/OTP + Elixir, on Ubuntu)
@@ -248,7 +248,7 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: erlef/setup-beam@v1 - uses: erlef/setup-beam@v1
with: with:
otp-version: '25' otp-version: '26'
# Use `cdn.jsdelivr.net/hex` as an alternative to `builds.hex.pm` # Use `cdn.jsdelivr.net/hex` as an alternative to `builds.hex.pm`
hexpm-mirrors: https://cdn.jsdelivr.net/hex hexpm-mirrors: https://cdn.jsdelivr.net/hex
``` ```
@@ -266,7 +266,7 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: erlef/setup-beam@v1 - uses: erlef/setup-beam@v1
with: with:
otp-version: '25' otp-version: '26'
hexpm-mirrors: | hexpm-mirrors: |
https://builds.hex.pm https://builds.hex.pm
https://cdn.jsdelivr.net/hex https://cdn.jsdelivr.net/hex
+20 -10
View File
@@ -9885,7 +9885,7 @@ async function main() {
await maybeInstallRebar3(rebar3Spec) await maybeInstallRebar3(rebar3Spec)
// undefined is replaced by a function, post- main branch merge // undefined is replaced by a function, post- main branch merge
const setupBeamVersion = '4f55815' const setupBeamVersion = 'c36fc0c'
core.setOutput('setup-beam-version', setupBeamVersion) core.setOutput('setup-beam-version', setupBeamVersion)
} }
@@ -10562,8 +10562,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'erl' const cmd = 'erl'
const args = ['-version'] const args = ['-version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
win32: { win32: {
@@ -10579,8 +10580,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'erl.exe' const cmd = 'erl.exe'
const args = ['+V'] const args = ['+V']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -10608,8 +10610,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'elixir' const cmd = 'elixir'
const args = ['-v'] const args = ['-v']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -10648,8 +10651,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'gleam' const cmd = 'gleam'
const args = ['--version'] const args = ['--version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
win32: { win32: {
@@ -10681,8 +10685,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'gleam.exe' const cmd = 'gleam.exe'
const args = ['--version'] const args = ['--version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -10713,8 +10718,12 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'rebar3' const cmd = 'rebar3'
const args = ['version'] const args = ['version']
const env = {
REBAR_GLOBAL_CONFIG_DIR: '/fake-dir',
REBAR_CONFIG: 'fake.config',
}
return [cmd, args] return [cmd, args, env]
}, },
}, },
win32: { win32: {
@@ -10749,8 +10758,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'rebar3.cmd' const cmd = 'rebar3.cmd'
const args = ['version'] const args = ['version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -10804,8 +10814,8 @@ async function installTool(opts) {
core.exportVariable(installDirForVarName, runnerToolPath) core.exportVariable(installDirForVarName, runnerToolPath)
core.info(`Installed ${installOpts.tool} version`) core.info(`Installed ${installOpts.tool} version`)
const [cmd, args] = platformOpts.reportVersion() const [cmd, args, env] = platformOpts.reportVersion()
await exec(cmd, args) await exec(cmd, args, { env: { ...process.env, ...env } })
} }
function checkPlatform() { function checkPlatform() {
+20 -10
View File
@@ -49,7 +49,7 @@ async function main() {
await maybeInstallRebar3(rebar3Spec) await maybeInstallRebar3(rebar3Spec)
// undefined is replaced by a function, post- main branch merge // undefined is replaced by a function, post- main branch merge
const setupBeamVersion = '4f55815' const setupBeamVersion = 'c36fc0c'
core.setOutput('setup-beam-version', setupBeamVersion) core.setOutput('setup-beam-version', setupBeamVersion)
} }
@@ -731,8 +731,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'erl' const cmd = 'erl'
const args = ['-version'] const args = ['-version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
win32: { win32: {
@@ -748,8 +749,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'erl.exe' const cmd = 'erl.exe'
const args = ['+V'] const args = ['+V']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -777,8 +779,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'elixir' const cmd = 'elixir'
const args = ['-v'] const args = ['-v']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -817,8 +820,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'gleam' const cmd = 'gleam'
const args = ['--version'] const args = ['--version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
win32: { win32: {
@@ -850,8 +854,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'gleam.exe' const cmd = 'gleam.exe'
const args = ['--version'] const args = ['--version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -882,8 +887,12 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'rebar3' const cmd = 'rebar3'
const args = ['version'] const args = ['version']
const env = {
REBAR_GLOBAL_CONFIG_DIR: '/fake-dir',
REBAR_CONFIG: 'fake.config',
}
return [cmd, args] return [cmd, args, env]
}, },
}, },
win32: { win32: {
@@ -918,8 +927,9 @@ async function install(toolName, opts) {
reportVersion: () => { reportVersion: () => {
const cmd = 'rebar3.cmd' const cmd = 'rebar3.cmd'
const args = ['version'] const args = ['version']
const env = {}
return [cmd, args] return [cmd, args, env]
}, },
}, },
} }
@@ -973,8 +983,8 @@ async function installTool(opts) {
core.exportVariable(installDirForVarName, runnerToolPath) core.exportVariable(installDirForVarName, runnerToolPath)
core.info(`Installed ${installOpts.tool} version`) core.info(`Installed ${installOpts.tool} version`)
const [cmd, args] = platformOpts.reportVersion() const [cmd, args, env] = platformOpts.reportVersion()
await exec(cmd, args) await exec(cmd, args, { env: { ...process.env, ...env } })
} }
function checkPlatform() { function checkPlatform() {