asdf based setup #45
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "CI" | |
on: ["push", "pull_request"] | |
env: | |
OTP_TAG: OTP-25.0.4 | |
OTP_SOURCE: https://github.com/erlang/otp | |
jobs: | |
build: | |
name: "Build Android runtimes" | |
runs-on: "ubuntu-latest" | |
strategy: | |
matrix: | |
arch: ["arm", "arm64", "x86_64"] | |
steps: | |
- name: Setup elixir | |
uses: erlef/setup-beam@v1 | |
with: | |
otp-version: 24.3.3 | |
elixir-version: 1.13.4 | |
- uses: actions/checkout@v2 | |
- run: | | |
scripts/install_elixir.sh "$HOME/elixir" | |
echo "$HOME/elixir/bin" >> $GITHUB_PATH | |
- name: Build Android ${{ matrix.arch }} runtimes | |
run: | | |
mix deps.get | |
ARCH=${{ matrix.arch }} mix package.android.runtime | |
ARCH=${{ matrix.arch }} mix package.android.nif | |
- name: Archive Android runtimes | |
uses: actions/upload-artifact@v2 | |
with: | |
name: ${{ matrix.arch }}-runtime | |
path: _build/*.zip | |
- name: Android ${{ matrix.arch }} release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: _build/*.zip | |
ios: | |
name: "Build iOS runtime" | |
runs-on: "macos-latest" | |
steps: | |
- name: Setup elixir | |
run: | | |
git clone https://github.com/asdf-vm/asdf.git ~/.asdf | |
. $HOME/.asdf/asdf.sh | |
asdf plugin add erlang | |
asdf plugin add elixir | |
echo "erlang 24.3.3" >> .tool-versions | |
echo "elixir 1.13.4-otp24" >> .tool-versions | |
asdf install | |
- run: brew install git carthage coreutils | |
- uses: actions/checkout@v2 | |
- name: Build runtime | |
run: | | |
. $HOME/.asdf/asdf.sh | |
mix package.ios.runtime | |
- name: Archive runtimes | |
uses: actions/upload-artifact@v2 | |
with: | |
name: iOS-runtime | |
path: _build/liberlang.xcframework | |
- name: iOS release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: _build/liberlang.xcframework |