Skip to content

Commit 4a53340

Browse files
committed
Use erlef in ci
Using mise to install erlang in CI makes our CI very very slow Painfully slow This is because it builds erlang every single time it can't find a cached version, which can be every build on a slower moving project. Erlef/setup-beam, on the other hand, uses precompiled binaries wherever possible, and is therefore much faster.
1 parent b20ecc2 commit 4a53340

File tree

4 files changed

+14
-6
lines changed

4 files changed

+14
-6
lines changed

.github/workflows/ci.yaml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,12 @@ jobs:
1414
steps:
1515
- uses: actions/checkout@v2
1616
- uses: jdx/mise-action@v2
17+
env:
18+
MISE_ENV: ci
19+
- uses: erlef/setup-beam@v1
20+
with:
21+
version-file: .tool-versions
22+
version-type: strict
1723
- name: Deps Cache
1824
id: deps-cache
1925
uses: actions/cache@v3
@@ -22,8 +28,8 @@ jobs:
2228
deps
2329
_build
2430
.mix/archives/
25-
key: test-${{hashFiles('.mise.toml')}}-${{hashFiles('mix.lock')}}
26-
restore-keys: test-${{hashFiles('.mise.toml')}}-
31+
key: test-${{hashFiles('.tool-versions')}}-${{hashFiles('mix.lock')}}
32+
restore-keys: test-${{hashFiles('.tool-versions')}}-
2733
- name: Install Dependencies
2834
run: |
2935
mix local.hex --force --if-missing

.mise.ci.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[settings]
2+
# Mise installer for elixir/erlang is _slooow_, so we use erlef/setup-beam to get tool versions instead
3+
disable_tools = ['elixir', 'erlang']

.mise.toml

Lines changed: 0 additions & 4 deletions
This file was deleted.

.tool-versions

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
rust 1.78.0
2+
elixir 1.17.2-otp-27
3+
erlang 27.0.1

0 commit comments

Comments
 (0)