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: CONAN_PROFILE: gcc jobs: build: name: Build Clio / `libXRPL ${{ github.event.client_payload.version }}` runs-on: heavy container: image: ghcr.io/xrplf/clio-ci:c117f470f2ef954520ab5d1c8a5ed2b9e68d6f8a steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: fetch-depth: 0 - name: Prepare runner uses: XRPLF/actions/.github/actions/prepare-runner@99685816bb60a95a66852f212f382580e180df3a with: disable_ccache: true - name: Update libXRPL version requirement shell: bash 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 shell: bash run: | conan lock create . --profile:all ${{ env.CONAN_PROFILE }} - name: Run conan uses: ./.github/actions/conan with: conan_profile: ${{ env.CONAN_PROFILE }} - name: Run CMake uses: ./.github/actions/cmake with: conan_profile: ${{ env.CONAN_PROFILE }} - name: Build Clio uses: ./.github/actions/build-clio - name: Strip tests run: strip build/clio_tests - name: Upload clio_tests uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 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/clio-ci:c117f470f2ef954520ab5d1c8a5ed2b9e68d6f8a steps: - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 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@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 - name: Create an issue uses: ./.github/actions/create-issue env: GH_TOKEN: ${{ github.token }} with: labels: "compatibility,bug" 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 }} Workflow run: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}/