name: Check new libXRPL on: repository_dispatch: types: [check_libxrpl] concurrency: # Only cancel in-progress jobs or runs for the current workflow - matches against branch & tags group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true env: COMPILER: gcc defaults: run: shell: bash jobs: build: name: Build Clio / `libXRPL ${{ github.event.client_payload.version }}` runs-on: heavy container: image: ghcr.io/xrplf/xrpld/nix-ubuntu:sha-cb2642b steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 - name: Prepare runner uses: XRPLF/actions/prepare-runner@7bf7ceca5932114abdd0d43493c3c30c5a654e13 with: enable_ccache: false - name: Print build environment uses: XRPLF/actions/print-build-env@59dec886e4afb05a1724443af08baccbc045b574 - name: Set compiler environment uses: ./.github/actions/set-compiler-env with: compiler: ${{ env.COMPILER }} - name: Setup conan run: conan/init.sh - name: Update libXRPL version requirement run: | sed -i.bak -E "s|'xrpl/[a-zA-Z0-9\\.\\-]+'|'xrpl/${{ github.event.client_payload.conan_ref }}'|g" conanfile.py rm -f conanfile.py.bak - name: Update conan lockfile run: | conan lock create . --profile:all ci - name: Run conan uses: ./.github/actions/conan - name: Run CMake uses: ./.github/actions/cmake - name: Build Clio uses: ./.github/actions/build-clio - name: Strip tests run: strip build/clio_tests - name: Upload clio_tests uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: clio_tests_check_libxrpl path: build/clio_tests run_tests: name: Run tests needs: build runs-on: heavy container: image: ghcr.io/xrplf/xrpld/nix-ubuntu:sha-cb2642b steps: - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: clio_tests_check_libxrpl - name: Run clio_tests run: | chmod +x ./clio_tests ./clio_tests create_issue_on_failure: name: Create an issue on failure needs: [build, run_tests] if: ${{ always() && contains(needs.*.result, 'failure') }} runs-on: ubuntu-latest permissions: contents: write issues: write steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Create an issue uses: XRPLF/actions/create-issue@2b8bc36af85b88bca0dd7bfac2e2dc05f94ad712 with: title: "Proposed libXRPL check failed" body: > Clio build or tests failed against `libXRPL ${{ github.event.client_payload.conan_ref }}`. PR: ${{ github.event.client_payload.pr_url }} labels: "compatibility,bug" assignees: "godexsoft,kuznetsss,mathbunnyru"