Skip to content
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

CI: Add OpenSSL master branch head non-FIPS and FIPS cases. #658

Merged
merged 1 commit into from
Aug 9, 2023

Conversation

junaruga
Copy link
Member

@junaruga junaruga commented Aug 8, 2023

This PR is to add the cases to test Ruby OpenSSL binding (ruby/openssl) on OpenSSL master branch non-FIPS and FIPS cases.

Motivation

My motivation for this PR is that we can immediately test Ruby OpenSSL binding with the OpenSSL where a PR to fix the issues related to our unit test was merged. There is a time lag until the next OpenSSL stable version including the fixes.

I reported one issue openssl/openssl#21493 that caused some test failures in our unit test in FIPS case to the OpenSSL project (openssl/openssl), and the PR openssl/openssl#21519 (comment) fixing the issue was merged to the master branch (openssl-3.2.0-dev), (and openssl-3.1 and openssl-3.0 branches too) recently. Adding these CI cases by this PR, I can check the Ruby OpenSSL binding's unit tests on the fixed versions of the OpenSSL.

Description

I added an option to download OpenSSL from their Git repository. I added the set -x to enable Bash debugging option and set +x to disable Bash debugging option. Because it was convenient to debug the bash script error, and it is convenient to check which commands are actually executed in the CI log.

@@ -93,17 +93,28 @@ jobs:
include:
- { os: ubuntu-latest, ruby: "3.0", openssl: openssl-3.0.10, fips-enabled: true, append-configure: 'enable-fips', name-extra: 'fips' }
- { os: ubuntu-latest, ruby: "3.0", openssl: openssl-3.1.2, fips-enabled: true, append-configure: 'enable-fips', name-extra: 'fips' }
- { os: ubuntu-latest, ruby: "3.0", openssl: openssl-head, git: 'git://git.openssl.org/openssl.git', branch: 'master' }
- { os: ubuntu-latest, ruby: "3.0", openssl: openssl-head, git: 'git://git.openssl.org/openssl.git', branch: 'master', fips-enabled: true, append-configure: 'enable-fips', name-extra: 'fips' }
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the added new hash keys git and branch, I referred to the syntax of Bundler's Gemfile using the git and branch for similar purpose. - https://bundler.io/guides/git.html

@junaruga
Copy link
Member Author

junaruga commented Aug 8, 2023

You can see the added "openssl-head" and "openssl-head fips" cases in the following log.
https://github.com/ruby/openssl/actions/runs/5797634568/job/15714032345?pr=658

You can also check the printed "OpenSSL 3.2.0-dev" by rake debug.
https://github.com/ruby/openssl/actions/runs/5797634568/job/15714032345?pr=658#step:13:21

.github/workflows/test.yml Outdated Show resolved Hide resolved
To confirm if the Ruby OpenSSL works on the OpenSSL master branch non-FIPS and
FIPS cases that may include some bug fixes or new features.
@junaruga
Copy link
Member Author

junaruga commented Aug 8, 2023

@rhenium Rebasing this PR, with removing the set +x. So, do you have anything else to comment? If there is no additional comments, I would like to merge this PR.

@rhenium
Copy link
Member

rhenium commented Aug 9, 2023

Looks good to me!

@rhenium rhenium merged commit db633c5 into ruby:master Aug 9, 2023
43 checks passed
@junaruga junaruga deleted the wip/ci-openssl-head branch August 9, 2023 19:59
@junaruga
Copy link
Member Author

junaruga commented Aug 9, 2023

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants