more checks of overloaded specs #322
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
jobs: | |
linux-ci: | |
runs-on: ubuntu-20.04 | |
name: Linux CI (OTP ${{matrix.otp}}) | |
strategy: | |
matrix: | |
otp: ['26.2'] | |
steps: | |
- name: Checkout eqWAlizer | |
uses: "actions/checkout@v3" | |
- name: Checkout ELP | |
uses: "actions/checkout@v3" | |
with: | |
repository: WhatsApp/erlang-language-platform | |
path: elp | |
- name: Set up GraalVM | |
uses: graalvm/setup-graalvm@v1 | |
with: | |
java-version: '17' | |
distribution: 'graalvm' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Install musl-tools for rust toolchain | |
uses: awalsh128/cache-apt-pkgs-action@latest | |
with: | |
packages: musl-tools | |
version: 1.0 | |
- name: Set up rust toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
target: x86_64-unknown-linux-musl | |
- name: Install OTP | |
uses: erlef/setup-beam@v1 | |
with: | |
otp-version: ${{matrix.otp}} | |
install-rebar: false | |
install-hex: false | |
- name: Install rebar3 | |
run: "curl https://s3.amazonaws.com/rebar3/rebar3 -o rebar3 && chmod +x rebar3" | |
- name: "add rebar3 to path" | |
run: 'echo "$GITHUB_WORKSPACE/rebar3" >> $GITHUB_PATH' | |
- name: Assemble eqwalizer.jar | |
run: "cd eqwalizer; sbt assembly" | |
- name: Assemble eqwalizer binary | |
run: "cd eqwalizer && native-image -H:IncludeResources=application.conf --no-server --no-fallback -jar target/scala-2.13/eqwalizer.jar eqwalizer" | |
- name: Test elp | |
working-directory: elp | |
run: "cargo test --no-default-features --workspace --target x86_64-unknown-linux-musl" | |
- name: Assemble elp | |
working-directory: elp | |
run: "cargo build --release --target x86_64-unknown-linux-musl" | |
- name: Add elp to path | |
run: 'echo "$GITHUB_WORKSPACE/elp/target/x86_64-unknown-linux-musl/release" >> $GITHUB_PATH' | |
- name: Upload eqwalizer.jar | |
if: matrix.otp == '26.2' | |
uses: "actions/upload-artifact@v3" | |
with: | |
name: eqwalizer.jar | |
path: eqwalizer/target/scala-2.13/eqwalizer.jar | |
macos-ci: | |
needs: | |
- linux-ci | |
runs-on: macos-latest | |
name: MacOS CI (${{matrix.brew-otp-version}}) | |
strategy: | |
matrix: | |
brew-otp-version: ['26'] | |
steps: | |
- name: Checkout eqWAlizer | |
uses: "actions/checkout@v3" | |
- name: Checkout ELP | |
uses: "actions/checkout@v3" | |
with: | |
repository: WhatsApp/erlang-language-platform | |
path: elp | |
- name: Set up GraalVM | |
uses: graalvm/setup-graalvm@v1 | |
with: | |
java-version: '17' | |
distribution: 'graalvm' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Install Erlang | |
run: brew install erlang@${{matrix.brew-otp-version}} | |
- name: Add erl to path | |
run: "echo '/opt/homebrew/opt/erlang@${{ matrix.brew-otp-version }}/bin' >> $GITHUB_PATH" | |
- name: Install rebar3 | |
run: "mkdir rebar3 && curl https://s3.amazonaws.com/rebar3/rebar3 -o rebar3/rebar3 && chmod +x rebar3/rebar3" | |
- name: Add rebar3 to path | |
run: 'echo "$GITHUB_WORKSPACE/rebar3" >> $GITHUB_PATH' | |
- name: Set up rust toolchain | |
uses: dtolnay/rust-toolchain@stable | |
- name: Download eqwalizer.jar | |
uses: "actions/download-artifact@v3" | |
with: | |
name: eqwalizer.jar | |
path: eqwalizer/target/scala-2.13 | |
- name: Assemble eqwalizer binary | |
run: "cd eqwalizer && native-image -H:IncludeResources=application.conf --no-server --no-fallback -jar target/scala-2.13/eqwalizer.jar eqwalizer" | |
- name: Test elp | |
working-directory: elp | |
run: "cargo test --no-default-features --workspace" | |
- name: Assemble elp | |
working-directory: elp | |
run: "cargo build --release" | |
name: eqWAlizer CI | |
on: | |
push: {} | |
env: | |
EQWALIZER_DIR: ${{ github.workspace }}/eqwalizer | |
ELP_EQWALIZER_PATH: ${{ github.workspace }}/eqwalizer/eqwalizer |