Update logback-version to v1.5.27 #1123
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: PR Testing | |
| on: | |
| pull_request: {} | |
| push: | |
| branches: | |
| - main | |
| permissions: | |
| contents: read | |
| jobs: | |
| clojure-tests: | |
| name: Clojure Tests - Java ${{ matrix.version }} ${{ matrix.filter }} ${{ matrix.javaargs }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| javaargs: ['with-profile fips', ''] | |
| filter: [':singlethreaded', ':multithreaded'] | |
| version: ['17', '21'] | |
| exclude: | |
| - javaargs: 'with-profile fips' | |
| version: '21' | |
| filter: ':multithreaded' | |
| - javaargs: 'with-profile fips' | |
| version: '21' | |
| filter: ':singlethreaded' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout repo | |
| uses: actions/checkout@v6 | |
| with: | |
| submodules: recursive | |
| - name: setup java | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'temurin' | |
| java-version: ${{ matrix.version }} | |
| - name: setup ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: '3.1' | |
| - name: Install clojure tools | |
| uses: DeLaGuardo/[email protected] | |
| with: | |
| lein: latest | |
| - name: setup gems | |
| run: ./dev-setup | |
| - name: clojure tests | |
| run: lein -U ${{ matrix.javaargs }} test ${{ matrix.filter }} | |
| timeout-minutes: 120 | |
| rspec-tests: | |
| name: Rspec Tests - Java ${{ matrix.java }} Ruby ${{ matrix.ruby }} | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| java: ['17', '21'] | |
| ruby: ['3.1', '3.2', '3.3', '3.4', '4.0'] | |
| steps: | |
| - name: checkout repo | |
| uses: actions/checkout@v6 | |
| with: | |
| submodules: recursive | |
| - name: setup ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| - name: setup java | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'temurin' | |
| java-version: ${{ matrix.java }} | |
| - name: Install clojure tools | |
| uses: DeLaGuardo/[email protected] | |
| with: | |
| lein: latest | |
| - name: setup gems | |
| run: ./dev-setup | |
| - name: rspec tests | |
| run: rake spec | |
| build: | |
| name: build openvox-server | |
| runs-on: ubuntu-24.04 | |
| permissions: | |
| pull-requests: write | |
| steps: | |
| - name: checkout repo | |
| uses: actions/checkout@v6 | |
| with: | |
| submodules: recursive | |
| fetch-depth: 0 # So we fetch all history and tags and can build non-tagged versions | |
| - name: setup ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: '3.2' | |
| bundler-cache: true | |
| # uses the Dockerfile to build openvox-server in a container | |
| # the container hardcodes the java version | |
| - name: build it | |
| run: bundle exec rake vox:build | |
| - name: get version | |
| id: version | |
| run: | | |
| DESCRIBE=$(git describe --abbrev=9) | |
| echo "describe=${DESCRIBE//-/.}" >> $GITHUB_OUTPUT | |
| - name: Upload build artifacts | |
| id: upload | |
| uses: actions/upload-artifact@v6 | |
| with: | |
| name: openvoxdb-${{ steps.version.outputs.describe }} | |
| path: output/ | |
| retention-days: 1 # quite low retention, because the artifacts are quite large | |
| overwrite: true # overwrite old artifacts if a PR runs again (artifacts are per PR * per project) | |
| - name: Find existing comment | |
| uses: peter-evans/find-comment@v4 | |
| # Check if the event is not triggered by a fork | |
| # https://github.com/peter-evans/create-pull-request/blob/main/docs/concepts-guidelines.md#restrictions-on-repository-forks | |
| if: github.event.pull_request.head.repo.full_name == github.repository | |
| id: find-comment | |
| with: | |
| issue-number: ${{ github.event.pull_request.number }} | |
| comment-author: 'github-actions[bot]' | |
| body-includes: '<!-- build-artifacts -->' | |
| - name: Add or update comment | |
| uses: peter-evans/create-or-update-comment@v5 | |
| if: github.event.pull_request.head.repo.full_name == github.repository | |
| with: | |
| comment-id: ${{ steps.find-comment.outputs.comment-id }} | |
| issue-number: ${{ github.event.pull_request.number }} | |
| edit-mode: replace | |
| body: |- | |
| <!-- build-artifacts --> | |
| The rpm/deb packages and the JAR file for openvox-server are available in a zip archive: | |
| ${{ steps.upload.outputs.artifact-url }} | |
| clojure-linting: | |
| name: Clojure Linting | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: setup java | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: temurin | |
| java-version: 17 | |
| - name: checkout repo | |
| uses: actions/checkout@v6 | |
| # newer versions cause lint errors | |
| # https://github.com/clj-kondo/clj-kondo/releases | |
| - name: Install clojure tools | |
| uses: DeLaGuardo/[email protected] | |
| with: | |
| clj-kondo: 2025.02.20 | |
| - name: kondo lint | |
| run: clj-kondo --lint src test | |
| tests: | |
| if: always() | |
| needs: | |
| - clojure-tests | |
| - rspec-tests | |
| - clojure-linting | |
| - build | |
| runs-on: ubuntu-24.04 | |
| name: Test suite | |
| steps: | |
| - name: Decide whether the needed jobs succeeded or failed | |
| uses: re-actors/alls-green@release/v1 | |
| with: | |
| jobs: ${{ toJSON(needs) }} |