Install just via curl instead of extractions/setup-just #1194
Workflow file for this run
This file contains hidden or 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: | |
| branches: [master] | |
| pull_request: ~ | |
| workflow_dispatch: ~ | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| javaversion: | |
| ['8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25'] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install just | |
| shell: bash | |
| run: | | |
| mkdir -p "$HOME/.local/bin" | |
| curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to "$HOME/.local/bin" | |
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | |
| - uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'zulu' | |
| java-version: '25' # Always use the most recent LTS JDK for building | |
| cache: 'maven' | |
| - name: Install dependencies | |
| run: just install | |
| - name: Build Library | |
| run: just build | |
| - name: Set up Java ${{ matrix.javaversion }} | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'zulu' | |
| java-version: ${{ matrix.javaversion }} | |
| cache: 'maven' | |
| - name: Run test with Java ${{ matrix.javaversion }} | |
| run: EASYPOST_TEST_API_KEY=123 EASYPOST_PROD_API_KEY=123 just test-ci | |
| coverage: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install just | |
| shell: bash | |
| run: | | |
| mkdir -p "$HOME/.local/bin" | |
| curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to "$HOME/.local/bin" | |
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | |
| - uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'zulu' | |
| java-version: '25' # Always use the most recent LTS JDK for building | |
| cache: 'maven' | |
| - name: Install dependencies | |
| run: just install | |
| - name: Test coverage | |
| run: EASYPOST_TEST_API_KEY=123 EASYPOST_PROD_API_KEY=123 just coverage | |
| - name: Load Rust cache | |
| if: github.ref == 'refs/heads/master' | |
| uses: Swatinem/rust-cache@v2 | |
| - name: Install grcov | |
| if: github.ref == 'refs/heads/master' | |
| run: cargo install grcov --version 0.8.13 | |
| - name: Convert coverage report | |
| if: github.ref == 'refs/heads/master' | |
| run: grcov target/site/jacoco/jacoco.xml --source-dir ./ --ignore "target/*" > coverage.lcov | |
| - name: Coverage | |
| if: github.ref == 'refs/heads/master' | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install just | |
| shell: bash | |
| run: | | |
| mkdir -p "$HOME/.local/bin" | |
| curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to "$HOME/.local/bin" | |
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | |
| - uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'zulu' | |
| java-version: '25' # Always use the most recent LTS JDK for building | |
| cache: 'maven' | |
| - name: Install checkstyle and style guide | |
| run: just install-checkstyle | |
| - name: Lint | |
| run: just lint | |
| - name: Upload Test results | |
| uses: actions/upload-artifact@master | |
| with: | |
| name: DependencyCheck report | |
| path: ${{github.workspace}}/target/dependency-check-report.html | |
| docs: | |
| if: github.ref == 'refs/heads/master' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install just | |
| shell: bash | |
| run: | | |
| mkdir -p "$HOME/.local/bin" | |
| curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to "$HOME/.local/bin" | |
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | |
| - uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'zulu' | |
| java-version: '25' # Always use the most recent LTS JDK for building | |
| cache: 'maven' | |
| - name: Install Dependencies | |
| run: just install | |
| - name: Generate Docs | |
| run: just docs | |
| - name: Deploy docs | |
| uses: peaceiris/actions-gh-pages@v3 | |
| with: | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| publish_dir: docs |