Author: dsahlberg Date: Sat Mar 1 22:56:42 2025 New Revision: 1924122 URL: http://svn.apache.org/viewvc?rev=1924122&view=rev Log: Try to get the backport conflict detection GitHub Action working. It was suggested in the #asfinfra Slack channel[1] that workflows must exist in all branches to work so let's try to add them.
Technically merging all revisions affecting the .github/ subtree from trunk. * .github/ Add subtree (This commit technically breaks the backporting requirements, but it won't even distributed downstream so I'm bending the rules this time). [1]: https://the-asf.slack.com/archives/CBX4TSBQ8/p1740835005043529 Added: subversion/branches/1.14.x/.github/ - copied from r1920766, subversion/trunk/.github/ subversion/branches/1.14.x/.github/workflows/autoconf.yml - copied, changed from r1920929, subversion/trunk/.github/workflows/autoconf.yml subversion/branches/1.14.x/.github/workflows/detect-backport-conflicts.yml - copied unchanged from r1924106, subversion/trunk/.github/workflows/detect-backport-conflicts.yml Modified: subversion/branches/1.14.x/ (props changed) subversion/branches/1.14.x/.github/workflows/cmake.yml (contents, props changed) Propchange: subversion/branches/1.14.x/ ------------------------------------------------------------------------------ Merged /subversion/trunk:r1920766,1920770,1920772,1920783-1920785,1920843,1920903,1920928-1920929,1921103,1921151,1922026,1922087,1922197,1922203,1922205,1922263,1922646,1922652-1922653,1922984,1923514,1923964-1923965,1924106 Copied: subversion/branches/1.14.x/.github/workflows/autoconf.yml (from r1920929, subversion/trunk/.github/workflows/autoconf.yml) URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/.github/workflows/autoconf.yml?p2=subversion/branches/1.14.x/.github/workflows/autoconf.yml&p1=subversion/trunk/.github/workflows/autoconf.yml&r1=1920929&r2=1924122&rev=1924122&view=diff ============================================================================== --- subversion/trunk/.github/workflows/autoconf.yml (original) +++ subversion/branches/1.14.x/.github/workflows/autoconf.yml Sat Mar 1 22:56:42 2025 @@ -19,11 +19,13 @@ # autoconf.yml -- Configuration for autoconf GitHub Action workflow. # -name: Build and Test Subversion using autoconf build system +name: autoconf on: push: branches: ["*"] + pull_request: + branches: ["*"] concurrency: group: ${{ github.workflow }}-${{ github.ref }} @@ -34,27 +36,30 @@ jobs: strategy: fail-fast: false matrix: - include: - - name: Default - os: ubuntu-latest + check-target: [check, davautocheck] + os: [ubuntu-latest, ubuntu-22.04-arm] runs-on: ${{ matrix.os }} - name: ${{ matrix.name }} + name: ${{ matrix.os }}, target ${{ matrix.check-target }} steps: - - name: Install dependecies (Linux, apt-get) + - name: Install dependencies (Linux, apt-get) if: runner.os == 'Linux' run: > + sudo apt-get update && sudo apt-get install libtool libtool-bin libapr1-dev libaprutil1-dev + libserf-dev libexpat1-dev zlib1g-dev libsqlite3-dev liblz4-dev libutf8proc-dev + apache2-dev + libsecret-1-dev - name: Use LF for Git checkout run: | @@ -72,8 +77,15 @@ jobs: - name: Build (make) run: make -j - - name: Run tests (make check) - run: make check + - name: Run tests + run: make ${{matrix.check-target}} PARALLEL=16 APACHE_MPM=event + + - name: Archive test log + if: always() + uses: actions/upload-artifact@v4 + with: + name: tests-${{matrix.os}}-${{matrix.check-target}}.log + path: tests.log - name: Install (make install) run: sudo make install Modified: subversion/branches/1.14.x/.github/workflows/cmake.yml URL: http://svn.apache.org/viewvc/subversion/branches/1.14.x/.github/workflows/cmake.yml?rev=1924122&r1=1920766&r2=1924122&view=diff ============================================================================== --- subversion/branches/1.14.x/.github/workflows/cmake.yml (original) +++ subversion/branches/1.14.x/.github/workflows/cmake.yml Sat Mar 1 22:56:42 2025 @@ -1,119 +1,186 @@ -name: Build and Test Subversion with CMake - -on: - push: - branches: ["*"] - -concurrency: - group: ${{ github.ref }} - cancel-in-progress: false - -defaults: - run: - shell: pwsh - -jobs: - build: - strategy: - fail-fast: false - matrix: - include: - - name: Windows, shared, x64 - os: windows-latest - build_shared: ON - vcpkg_triplet: x64-windows - arch: x64 - - name: Windows, shared, x86 - os: windows-latest - build_shared: ON - vcpkg_triplet: x86-windows - arch: x86 - - name: Windows, static, x64, with tests - os: windows-latest - build_shared: OFF - vcpkg_triplet: x64-windows-static - arch: x64 - run_tests: true - - name: Linux, shared, with tests - os: ubuntu-latest - build_shared: ON - run_tests: true - - runs-on: ${{ matrix.os }} - name: ${{ matrix.name }} - - env: - VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" - - steps: - - name: Prepare Enviroment (Windows) - if: runner.os == 'Windows' - run: | - $root = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" - Import-Module "$root\Common7\Tools\Microsoft.VisualStudio.DevShell.dll" - Enter-VsDevShell -VsInstallPath $root -DevCmdArguments "-arch=${{ matrix.arch }}" - - ls env: | foreach { "$($_.Name)=$($_.Value)" >> $env:GITHUB_ENV } - - - name: Prepare Enviroment (Linux) - if: runner.os == 'Windows' - run: | - # nothing yet - - - name: Export GitHub Actions cache environment variables - if: runner.os == 'Windows' - uses: actions/github-script@v7 - with: - script: | - core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); - core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || ''); - - - name: Install dependecies (Windows, vcpkg) - if: runner.os == 'Windows' - run: | - C:\vcpkg\vcpkg.exe install --triplet ${{ matrix.vcpkg_triplet }} ` - apr apr-util expat zlib sqlite3 - - "CMAKE_PREFIX_PATH=C:\vcpkg\installed\${{ matrix.vcpkg_triplet }}" >> $env:GITHUB_ENV - - - name: Install dependecies (Linux, apt-get) - if: runner.os == 'Linux' - run: > - sudo apt-get install - libtool - libtool-bin - libapr1-dev - libaprutil1-dev - libexpat1-dev - zlib1g-dev - libsqlite3-dev - ninja-build - - - uses: actions/checkout@v4 - - - name: gen-make - run: python ./gen-make.py -t cmake - - - name: Configure CMake - run: > - cmake -B out -G Ninja - -DBUILD_SHARED_LIBS=${{ matrix.build_shared }} - -DSVN_ENABLE_TESTS=ON - -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/installdir - - - name: Build CMake - run: cmake --build out - - - name: Install - run: cmake --install out - - - name: Run all tests - id: run_all_tests - if: matrix.run_tests - working-directory: out - run: ctest --output-on-failure --verbose - - - name: Rerun failed tests - if: ${{ matrix.run_tests && failure() && steps.run_all_tests.conclusion == 'failure' }} - working-directory: out - run: ctest --output-on-failure --verbose --rerun-failed +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +# cmake.yml -- Configuration for CMake GitHub Action workflow. +# + +name: CMake + +on: + push: + branches: ["*"] + pull_request: + branches: ["*"] + +concurrency: + group: ${{ github.ref }} + cancel-in-progress: false + +defaults: + run: + shell: pwsh + +jobs: + build: + strategy: + fail-fast: false + matrix: + include: + - name: Windows, shared, x64, with tests + os: windows-latest + build_shared: ON + cmake_generator: Ninja + vcpkg_triplet: x64-windows + arch: x64 + run_tests: true + - name: Windows, shared, x64, vs2022, with tests + os: windows-latest + build_shared: ON + cmake_generator: 'Visual Studio 17 2022' + vcpkg_triplet: x64-windows + arch: x64 + run_tests: true + - name: Windows, shared, x86 + os: windows-latest + build_shared: ON + cmake_generator: Ninja + vcpkg_triplet: x86-windows + arch: x86 + - name: Windows, static, x64, with tests + os: windows-latest + build_shared: OFF + cmake_generator: Ninja + vcpkg_triplet: x64-windows-static-md + arch: x64 + run_tests: true + - name: Linux, shared, with tests + os: ubuntu-latest + cmake_generator: Ninja + build_shared: ON + run_tests: true + extra_config_opts: > + -DSVN_ENABLE_AUTH_KWALLET=ON + -DSVN_ENABLE_AUTH_GNOME_KEYRING=ON + extra_packages: > + libkf5wallet-dev + libkf5coreaddons-dev + libkf5i18n-dev + libdbus-1-dev + qtbase5-dev + libsecret-1-dev + + runs-on: ${{ matrix.os }} + name: ${{ matrix.name }} + + env: + VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" + CMAKE_GENERATOR: ${{ matrix.cmake_generator }} + + steps: + - name: Prepare Environment (Windows) + if: runner.os == 'Windows' + run: | + $root = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" + Import-Module "$root\Common7\Tools\Microsoft.VisualStudio.DevShell.dll" + Enter-VsDevShell -VsInstallPath $root -DevCmdArguments "-arch=${{ matrix.arch }}" + + ls env: | foreach { "$($_.Name)=$($_.Value)" >> $env:GITHUB_ENV } + + - name: Prepare Environment (Linux) + if: runner.os == 'Windows' + run: | + # nothing yet + + - name: Export GitHub Actions cache environment variables + if: runner.os == 'Windows' + uses: actions/github-script@v7 + with: + script: | + core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); + core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || ''); + + - name: Install dependencies (Windows, vcpkg) + if: runner.os == 'Windows' + run: | + C:\vcpkg\vcpkg.exe install --triplet ${{ matrix.vcpkg_triplet }} ` + apr apr-util serf expat zlib sqlite3 + + "CMAKE_TOOLCHAIN_FILE=C:/vcpkg/scripts/buildsystems/vcpkg.cmake" >> $env:GITHUB_ENV + + - name: Install dependencies (Linux, apt-get) + if: runner.os == 'Linux' + run: > + sudo apt-get update && + sudo apt-get install + libtool + libtool-bin + libapr1-dev + libaprutil1-dev + libserf-dev + libexpat1-dev + zlib1g-dev + libsqlite3-dev + ninja-build + ${{ matrix.extra_packages }} + + - name: Use LF for Git checkout + run: | + git config --global core.autocrlf false + git config --global core.eol lf + + - uses: actions/checkout@v4 + + - name: gen-make + run: python ./gen-make.py -t cmake + + - name: Configure CMake + run: > + cmake -B out + -DBUILD_SHARED_LIBS=${{ matrix.build_shared }} + -DSVN_ENABLE_TESTS=ON + -DSVN_ENABLE_RA_SERF=ON + -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/installdir + -DVCPKG_TARGET_TRIPLET=${{ matrix.vcpkg_triplet }} + -DSVN_TEST_CONFIGURE_FOR_PARALLEL=ON + ${{ matrix.extra_config_opts }} + + - name: Build CMake + run: cmake --build out --config Release + + - name: Install + run: cmake --install out --config Release + + - name: Run all tests + id: run_all_tests + if: matrix.run_tests + working-directory: out + run: ctest --output-on-failure --verbose -C Release --parallel 16 + + - name: Test shelf2 + if: matrix.run_tests + working-directory: out + env: + SVN_EXPERIMENTAL_COMMANDS: shelf2 + run: ctest -R shelf2 --verbose -C Release + + - name: Test shelf3 + if: matrix.run_tests + working-directory: out + env: + SVN_EXPERIMENTAL_COMMANDS: shelf3 + run: ctest -R shelf3 --verbose -C Release Propchange: subversion/branches/1.14.x/.github/workflows/cmake.yml ------------------------------------------------------------------------------ svn:eol-style = native
