Skip to content

TECH-76: #minor Upgrades to Erlang/OTP 27, bumps jesse #303

TECH-76: #minor Upgrades to Erlang/OTP 27, bumps jesse

TECH-76: #minor Upgrades to Erlang/OTP 27, bumps jesse #303

Workflow file for this run

name: Test Erlang
on:
push:
branches:
- 'master'
- 'epic/**'
pull_request:
branches: [ '**' ]
env:
OTP_VERSION: "27.1.2"
REBAR_VERSION: "3.24"
CODEGEN_VERSION: "2.4.25"
CODEGEN_NAME: "swagger-codegen-cli.jar"
ARTIFACT_NAME: "vality-erlang-codegen-swagger-codegen-1.0.0.jar"
SPEC_PATH: "test/petstore-custom.yaml"
jobs:
generate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Get Codegen
run: |
mkdir codegen-cli
echo "DOWNLOADING ${{ env.CODEGEN_VERSION }}"
wget https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/${{ env.CODEGEN_VERSION }}/swagger-codegen-cli-${{ env.CODEGEN_VERSION }}.jar -O codegen-cli/${{ env.CODEGEN_NAME }}
- name: Build package
run: |
mvn --batch-mode package
cp target/*.jar codegen-cli/
- name: Generate stubs
run: |
java -cp codegen-cli/${{ env.ARTIFACT_NAME }}:codegen-cli/${{ env.CODEGEN_NAME }} io.swagger.codegen.SwaggerCodegen generate -l vality-erlang-client -i ${{ env.SPEC_PATH }} -o erlang-client
java -cp codegen-cli/${{ env.ARTIFACT_NAME }}:codegen-cli/${{ env.CODEGEN_NAME }} io.swagger.codegen.SwaggerCodegen generate -l vality-erlang-server -i ${{ env.SPEC_PATH }} -o erlang-server
- name: Upload server artifact
uses: actions/upload-artifact@v4
with:
name: erlang-server
path: erlang-server
- name: Upload client artifact
uses: actions/upload-artifact@v4
with:
name: erlang-client
path: erlang-client
build-client:
needs: [ generate ]
runs-on: ubuntu-latest
steps:
- name: Download code artifact
uses: actions/download-artifact@v4
with:
name: erlang-client
- name: Setup BEAM
uses: erlef/setup-beam@v1.18.2
with:
otp-version: ${{ env.OTP_VERSION }}
rebar3-version: ${{ env.REBAR_VERSION }}
- name: Compile
run: rebar3 compile
- name: Run EUnit
run: rebar3 eunit
build-server:
needs: [ generate ]
runs-on: ubuntu-latest
steps:
- name: Download code artifact
uses: actions/download-artifact@v4
with:
name: erlang-server
- name: Setup BEAM
uses: erlef/setup-beam@v1.18.2
with:
otp-version: ${{ env.OTP_VERSION }}
rebar3-version: ${{ env.REBAR_VERSION }}
- name: Compile
run: rebar3 compile
- name: Run EUnit
run: rebar3 eunit