-
Notifications
You must be signed in to change notification settings - Fork 4k
GH-36456: [CI][R] Unlink system OpenSSL to avoid mixing OpenSSL versions #36522
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
f28684d
20b1ba7
bf9bf44
67f7d7d
a1e0265
9ea5823
42dd623
e79c31e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -35,14 +35,20 @@ jobs: | |
| - "{{ macros.r_oldrel.ver }}" | ||
| steps: | ||
| {{ macros.github_checkout_arrow()|indent }} | ||
| - name: Setup hosted | ||
| if: matrix.platform != 'macos-10.13' | ||
| run: | | ||
| # minio and sccache are pre-installed on the self-hosted 10.13 runner. | ||
| # Install minio for tests. | ||
| brew install minio | ||
| brew install sccache | ||
|
|
||
| # Ensure removing OpenSSL from the default paths to avoid | ||
| # mixing OpenSSL in the default paths and OpenSSL installed | ||
| # by autobrew. | ||
| brew unlink openssl || : | ||
| - name: Configure autobrew script | ||
| run: | | ||
| # minio and sccache are pre-installed on the self-hosted 10.13 runner | ||
| if [ {{ '${{ matrix.platform }}' }} != macos-10.13 ]; then | ||
| # install minio for tests | ||
| brew install minio | ||
| brew install sccache | ||
| fi | ||
| cd arrow/r | ||
| {{ macros.pin_brew_formulae(is_fork)|indent }} | ||
| - uses: r-lib/actions/setup-r@v2 | ||
|
|
@@ -57,7 +63,7 @@ jobs: | |
| # between pre-installed R version on the self-hosted runners | ||
| rig default {{ '${{ matrix.r-version }}' }} | ||
| rig system setup-user-lib | ||
| rig system add-pak | ||
| rig system add-pak | ||
| - uses: r-lib/actions/setup-r-dependencies@v2 | ||
| with: | ||
| working-directory: 'arrow/r' | ||
|
|
@@ -72,8 +78,10 @@ jobs: | |
| ARROW_USE_PKG_CONFIG: false | ||
| ARROW_R_DEV: true | ||
| FORCE_AUTOBREW: true | ||
| {{ macros.github_set_sccache_envvars()|indent(8)}} | ||
| run: arrow/ci/scripts/r_test.sh arrow | ||
| {{ macros.github_set_sccache_envvars()|indent(8)}} | ||
| run: | | ||
| find / 2>&1 | grep include/openssl || : | ||
| arrow/ci/scripts/r_test.sh arrow | ||
|
Comment on lines
+83
to
+84
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm a bit embarassed, but I don't understand what these two lines do...
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think the first line is just for debug purposes printing all find hits of include/openssl or nothing. The script setup an env for r testing and then test/checks the r package.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes. It's just a debug print. |
||
| - name: Dump install logs | ||
| run: cat arrow/r/check/arrow.Rcheck/00install.out | ||
| if: always() | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm... can we instead make sure our build chain selects OpenSSL consistently? Users will otherwise probably encounter a similar problem if they try compiling Arrow themselves.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That would also be my preference though it seems to be tricky and I haven't had the time to investigate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that it's difficult.
For example, please consider the following case:
/usr/local/opt/openssl/usr/local-I/usr/local/includefrom c-ares and-I/opt/openssl/includefrom OpenSSL 3-I/opt/openssl/include -I/usr/local/includewill work but-I/usr/local/include -I/opt/openssl/includewill not work because OpenSSl 1.1 headers in/usr/local/includeare used