Skip to content

Comments

Re-add pyca/cryptography CI#15018

Closed
reaperhulk wants to merge 4 commits intoopenssl:masterfrom
reaperhulk:re-add-cryptography
Closed

Re-add pyca/cryptography CI#15018
reaperhulk wants to merge 4 commits intoopenssl:masterfrom
reaperhulk:re-add-cryptography

Conversation

@reaperhulk
Copy link
Contributor

@reaperhulk reaperhulk commented Apr 24, 2021

Now that cryptography has merged 3.0.0 support OpenSSL can use its test suite again.

A few notes:

  • I implemented this as a separate job both to improve parallelism and also because cryptography requires a few more things than the other extended tests (e.g. rust)
  • wycheproof has been added as a submodule since cryptography will consume wycheproof tests when available
  • The current test harness you're using in Perl appears to be eating test output. That suppression should really be turned off so we can see things like which version it linked against, whether the wycheproof tests are loading as expected, etc. It's unpleasant to debug CI when the necessary details aren't available.
  • This could be sped up a bit by introducing some caching of the rust intermediate artifacts. An exercise left for the future.

Copy link
Contributor

@paulidale paulidale left a comment

Choose a reason for hiding this comment

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

LGTM.

The run time is 13 minutes which is at the upper end of what we'd like but still okay.

@paulidale paulidale added approval: review pending This pull request needs review by a committer branch: master Applies to master branch labels Apr 26, 2021
@reaperhulk
Copy link
Contributor Author

We’re annoyed by runtime on our end too. There’s likely to be a patch to bypass RSA_check_key for (most) test cases at some point soon which will chop several minutes off wall clock time.

@paulidale
Copy link
Contributor

Sounds good. We informally chose to limit CI runs to around 15 minutes when I added the non-caching build. This build is a couple of minutes shy of that figure, so it's not a concern at the moment and I doubt it will be for a while.

@mattcaswell mattcaswell added approval: done This pull request has the required number of approvals and removed approval: review pending This pull request needs review by a committer labels Apr 26, 2021
Copy link
Member

@slontis slontis left a comment

Choose a reason for hiding this comment

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

LGTM..

Just some aside comments about the test results.
There could be some cases where we support things now..
e.g KBKDF with cmac + RSA with truncated digests..

@reaperhulk
Copy link
Contributor Author

LGTM..

Just some aside comments about the test results.
There could be some cases where we support things now..
e.g KBKDF with cmac + RSA with truncated digests..

Thank you for the pointers to those features. It is our intent to revisit our skips and capability checks for 3.0.0 so I’ll keep those in mind as well. There are also a significant number of wycheproof tests we currently skip that 3.0.0 can now run.

@reaperhulk
Copy link
Contributor Author

By the way, what do the appveyor CI jobs do that Actions does not? Is there a desire to consolidate on Actions?

@slontis
Copy link
Member

slontis commented Apr 27, 2021

By the way, what do the appveyor CI jobs do that Actions does not? Is there a desire to consolidate on Actions?

From the docs it looked like mac and windows consume more minutes (5 to 10 times). So I wasn't sure if it was a good idea to swap it over. Actions just does a minimal build currently to pick up anything stupid like compiler issues (and missing functions) that don't appear on other platforms.

@paulidale
Copy link
Contributor

We've been discussing dropping the Appveyor builds in favour of Actions. None of the fellows have had the time to do this with 3.0 being more pressing.

@openssl-machine
Copy link
Collaborator

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set. Please review the updates and set the label manually.

@paulidale paulidale added approval: ready to merge The 24 hour grace period has passed, ready to merge and removed approval: done This pull request has the required number of approvals labels Apr 27, 2021
openssl-machine pushed a commit that referenced this pull request Apr 27, 2021
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from #15018)
openssl-machine pushed a commit that referenced this pull request Apr 27, 2021
This is used with the pyca/cryptography test suite

Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from #15018)
openssl-machine pushed a commit that referenced this pull request Apr 27, 2021
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from #15018)
openssl-machine pushed a commit that referenced this pull request Apr 27, 2021
Reviewed-by: Tomas Mraz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
Reviewed-by: Shane Lontis <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from #15018)
@paulidale
Copy link
Contributor

Merged to master. Thanks for this!

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

Labels

approval: ready to merge The 24 hour grace period has passed, ready to merge branch: master Applies to master branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants