kou commented on code in PR #49564:
URL: https://github.com/apache/arrow/pull/49564#discussion_r2998426370
##########
.github/workflows/cpp_extra.yml:
##########
@@ -336,6 +336,62 @@ jobs:
cd cpp/examples/minimal_build
../minimal_build.build/arrow-example
+ odbc-linux:
+ needs: check-labels
+ name: ODBC Linux
+ runs-on: ubuntu-latest
+ if: >-
+ needs.check-labels.outputs.force == 'true' ||
+ contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'),
'CI: Extra') ||
+ contains(fromJSON(needs.check-labels.outputs.ci-extra-labels || '[]'),
'CI: Extra: C++')
+ timeout-minutes: 75
+ strategy:
+ fail-fast: false
+ env:
+ ARCH: amd64
+ ARCHERY_DEBUG: 1
+ ARROW_ENABLE_TIMING_TESTS: OFF
+ DOCKER_VOLUME_PREFIX: ".docker/"
+ UBUNTU: 24.04
+ steps:
+ - name: Checkout Arrow
+ uses: actions/checkout@v6
+ with:
+ fetch-depth: 0
+ submodules: recursive
+ - name: Cache Docker Volumes
+ uses: actions/cache@v5
+ with:
+ path: .docker
+ key: ubuntu-cpp-odbc-${{ hashFiles('cpp/**') }}
+ restore-keys: ubuntu-cpp-odbc-
+ - name: Setup Python on hosted runner
+ uses: actions/setup-python@v6
+ with:
+ python-version: 3
+ - name: Setup Archery
+ run: python3 -m pip install -e dev/archery[docker]
+ - name: Execute Docker Build
+ env:
+ ARCHERY_DOCKER_USER: ${{ secrets.DOCKERHUB_USER }}
+ ARCHERY_DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
+ run: |
+ # GH-40558: reduce ASLR to avoid ASAN/LSAN crashes
+ sudo sysctl -w vm.mmap_rnd_bits=28
+ source ci/scripts/util_enable_core_dumps.sh
+ archery docker run ubuntu-cpp-odbc
+ - name: Docker Push
+ if: >-
+ success() &&
+ github.event_name == 'push' &&
+ github.repository == 'apache/arrow' &&
+ github.ref_name == 'main'
+ env:
+ ARCHERY_DOCKER_USER: ${{ secrets.DOCKERHUB_USER }}
+ ARCHERY_DOCKER_PASSWORD: ${{ secrets.DOCKERHUB_TOKEN }}
+ continue-on-error: true
+ run: archery docker push ubuntu-cpp-odbc
Review Comment:
Your approach is correct. I also think that I want to create a new service
(`ubuntu-cpp-odbc`) from an existing service (`ubuntu-cpp`) with different
`command:` but we can't do it with Docker Compose. So we can create
`ubuntu-cpp-odbc` for this. But the built image by `ubuntu-cpp-odbc` has the
same name (`${REPO}:${ARCH}-ubuntu-${UBUNTU}-cpp`) and build options. So we
don't need to overwrite existing `${REPO}:${ARCH}-ubuntu-${UBUNTU}-cpp` image
by this.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]