@@ -1,295 +0,0 @@ | |||
Checks: '*,-llvm-header-guard,-hicpp-*,-readability-function-size,-google-readability-todo,-google-readability-casting,-readability-magic-numbers,-cppcoreguidelines-avoid-magic-numbers,-cppcoreguidelines-init-variables,-readability-isolate-declaration,-readability-uppercase-literal-suffix,-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,-clang-analyzer-valist.*,-llvmlibc-*,-bugprone-reserved-identifier,-cert-dcl37-c,-cert-dcl51-cpp' | |||
WarningsAsErrors: '*' | |||
HeaderFilterRegex: '.*' | |||
AnalyzeTemporaryDtors: false | |||
FormatStyle: file | |||
User: thom | |||
CheckOptions: | |||
- key: abseil-string-find-startswith.AbseilStringsMatchHeader | |||
value: absl/strings/match.h | |||
- key: abseil-string-find-startswith.IncludeStyle | |||
value: llvm | |||
- key: abseil-string-find-startswith.StringLikeClasses | |||
value: '::std::basic_string' | |||
- key: bugprone-argument-comment.StrictMode | |||
value: '0' | |||
- key: bugprone-assert-side-effect.AssertMacros | |||
value: assert | |||
- key: bugprone-assert-side-effect.CheckFunctionCalls | |||
value: '0' | |||
- key: bugprone-dangling-handle.HandleClasses | |||
value: 'std::basic_string_view;std::experimental::basic_string_view' | |||
- key: bugprone-exception-escape.FunctionsThatShouldNotThrow | |||
value: '' | |||
- key: bugprone-exception-escape.IgnoredExceptions | |||
value: '' | |||
- key: bugprone-misplaced-widening-cast.CheckImplicitCasts | |||
value: '0' | |||
- key: bugprone-sizeof-expression.WarnOnSizeOfCompareToConstant | |||
value: '1' | |||
- key: bugprone-sizeof-expression.WarnOnSizeOfConstant | |||
value: '1' | |||
- key: bugprone-sizeof-expression.WarnOnSizeOfIntegerExpression | |||
value: '0' | |||
- key: bugprone-sizeof-expression.WarnOnSizeOfThis | |||
value: '1' | |||
- key: bugprone-string-constructor.LargeLengthThreshold | |||
value: '8388608' | |||
- key: bugprone-string-constructor.WarnOnLargeLength | |||
value: '1' | |||
- key: bugprone-suspicious-enum-usage.StrictMode | |||
value: '0' | |||
- key: bugprone-suspicious-missing-comma.MaxConcatenatedTokens | |||
value: '5' | |||
- key: bugprone-suspicious-missing-comma.RatioThreshold | |||
value: '0.200000' | |||
- key: bugprone-suspicious-missing-comma.SizeThreshold | |||
value: '5' | |||
- key: bugprone-suspicious-string-compare.StringCompareLikeFunctions | |||
value: '' | |||
- key: bugprone-suspicious-string-compare.WarnOnImplicitComparison | |||
value: '1' | |||
- key: bugprone-suspicious-string-compare.WarnOnLogicalNotComparison | |||
value: '0' | |||
- key: bugprone-unused-return-value.CheckedFunctions | |||
value: '::std::async;::std::launder;::std::remove;::std::remove_if;::std::unique;::std::unique_ptr::release;::std::basic_string::empty;::std::vector::empty' | |||
- key: cert-dcl59-cpp.HeaderFileExtensions | |||
value: ',h,hh,hpp,hxx' | |||
- key: cert-err09-cpp.CheckThrowTemporaries | |||
value: '1' | |||
- key: cert-err61-cpp.CheckThrowTemporaries | |||
value: '1' | |||
- key: cert-msc32-c.DisallowedSeedTypes | |||
value: 'time_t,std::time_t' | |||
- key: cert-msc51-cpp.DisallowedSeedTypes | |||
value: 'time_t,std::time_t' | |||
- key: cert-oop11-cpp.IncludeStyle | |||
value: llvm | |||
- key: cppcoreguidelines-no-malloc.Allocations | |||
value: '::malloc;::calloc' | |||
- key: cppcoreguidelines-no-malloc.Deallocations | |||
value: '::free' | |||
- key: cppcoreguidelines-no-malloc.Reallocations | |||
value: '::realloc' | |||
- key: cppcoreguidelines-owning-memory.LegacyResourceConsumers | |||
value: '::free;::realloc;::freopen;::fclose' | |||
- key: cppcoreguidelines-owning-memory.LegacyResourceProducers | |||
value: '::malloc;::aligned_alloc;::realloc;::calloc;::fopen;::freopen;::tmpfile' | |||
- key: cppcoreguidelines-pro-bounds-constant-array-index.GslHeader | |||
value: '' | |||
- key: cppcoreguidelines-pro-bounds-constant-array-index.IncludeStyle | |||
value: '0' | |||
- key: cppcoreguidelines-pro-type-member-init.IgnoreArrays | |||
value: '0' | |||
- key: cppcoreguidelines-special-member-functions.AllowMissingMoveFunctions | |||
value: '0' | |||
- key: cppcoreguidelines-special-member-functions.AllowSoleDefaultDtor | |||
value: '0' | |||
- key: fuchsia-header-anon-namespaces.HeaderFileExtensions | |||
value: ',h,hh,hpp,hxx' | |||
- key: fuchsia-restrict-system-includes.Includes | |||
value: '*' | |||
- key: google-build-namespaces.HeaderFileExtensions | |||
value: ',h,hh,hpp,hxx' | |||
- key: google-global-names-in-headers.HeaderFileExtensions | |||
value: ',h,hh,hpp,hxx' | |||
- key: google-readability-braces-around-statements.ShortStatementLines | |||
value: '1' | |||
- key: google-readability-function-size.BranchThreshold | |||
value: '4294967295' | |||
- key: google-readability-function-size.LineThreshold | |||
value: '4294967295' | |||
- key: google-readability-function-size.NestingThreshold | |||
value: '4294967295' | |||
- key: google-readability-function-size.ParameterThreshold | |||
value: '4294967295' | |||
- key: google-readability-function-size.StatementThreshold | |||
value: '1000' | |||
- key: google-readability-function-size.VariableThreshold | |||
value: '4294967295' | |||
- key: google-readability-namespace-comments.ShortNamespaceLines | |||
value: '10' | |||
- key: google-readability-namespace-comments.SpacesBeforeComments | |||
value: '2' | |||
- key: google-runtime-int.SignedTypePrefix | |||
value: int | |||
- key: google-runtime-int.TypeSuffix | |||
value: '' | |||
- key: google-runtime-int.UnsignedTypePrefix | |||
value: uint | |||
- key: google-runtime-references.WhiteListTypes | |||
value: '' | |||
- key: hicpp-braces-around-statements.ShortStatementLines | |||
value: '0' | |||
- key: hicpp-member-init.IgnoreArrays | |||
value: '0' | |||
- key: hicpp-move-const-arg.CheckTriviallyCopyableMove | |||
value: '1' | |||
- key: hicpp-multiway-paths-covered.WarnOnMissingElse | |||
value: '0' | |||
- key: hicpp-named-parameter.IgnoreFailedSplit | |||
value: '0' | |||
- key: hicpp-no-malloc.Allocations | |||
value: '::malloc;::calloc' | |||
- key: hicpp-no-malloc.Deallocations | |||
value: '::free' | |||
- key: hicpp-no-malloc.Reallocations | |||
value: '::realloc' | |||
- key: hicpp-special-member-functions.AllowMissingMoveFunctions | |||
value: '0' | |||
- key: hicpp-special-member-functions.AllowSoleDefaultDtor | |||
value: '0' | |||
- key: hicpp-use-auto.MinTypeNameLength | |||
value: '5' | |||
- key: hicpp-use-auto.RemoveStars | |||
value: '0' | |||
- key: hicpp-use-emplace.ContainersWithPushBack | |||
value: '::std::vector;::std::list;::std::deque' | |||
- key: hicpp-use-emplace.SmartPointers | |||
value: '::std::shared_ptr;::std::unique_ptr;::std::auto_ptr;::std::weak_ptr' | |||
- key: hicpp-use-emplace.TupleMakeFunctions | |||
value: '::std::make_pair;::std::make_tuple' | |||
- key: hicpp-use-emplace.TupleTypes | |||
value: '::std::pair;::std::tuple' | |||
- key: hicpp-use-equals-default.IgnoreMacros | |||
value: '1' | |||
- key: hicpp-use-noexcept.ReplacementString | |||
value: '' | |||
- key: hicpp-use-noexcept.UseNoexceptFalse | |||
value: '1' | |||
- key: hicpp-use-nullptr.NullMacros | |||
value: '' | |||
- key: llvm-namespace-comment.ShortNamespaceLines | |||
value: '1' | |||
- key: llvm-namespace-comment.SpacesBeforeComments | |||
value: '1' | |||
- key: misc-definitions-in-headers.HeaderFileExtensions | |||
value: ',h,hh,hpp,hxx' | |||
- key: misc-definitions-in-headers.UseHeaderFileExtension | |||
value: '1' | |||
- key: misc-throw-by-value-catch-by-reference.CheckThrowTemporaries | |||
value: '1' | |||
- key: misc-unused-parameters.StrictMode | |||
value: '0' | |||
- key: modernize-loop-convert.MaxCopySize | |||
value: '16' | |||
- key: modernize-loop-convert.MinConfidence | |||
value: reasonable | |||
- key: modernize-loop-convert.NamingStyle | |||
value: CamelCase | |||
- key: modernize-make-shared.IgnoreMacros | |||
value: '1' | |||
- key: modernize-make-shared.IncludeStyle | |||
value: '0' | |||
- key: modernize-make-shared.MakeSmartPtrFunction | |||
value: 'std::make_shared' | |||
- key: modernize-make-shared.MakeSmartPtrFunctionHeader | |||
value: memory | |||
- key: modernize-make-unique.IgnoreMacros | |||
value: '1' | |||
- key: modernize-make-unique.IncludeStyle | |||
value: '0' | |||
- key: modernize-make-unique.MakeSmartPtrFunction | |||
value: 'std::make_unique' | |||
- key: modernize-make-unique.MakeSmartPtrFunctionHeader | |||
value: memory | |||
- key: modernize-pass-by-value.IncludeStyle | |||
value: llvm | |||
- key: modernize-pass-by-value.ValuesOnly | |||
value: '0' | |||
- key: modernize-raw-string-literal.ReplaceShorterLiterals | |||
value: '0' | |||
- key: modernize-replace-auto-ptr.IncludeStyle | |||
value: llvm | |||
- key: modernize-replace-random-shuffle.IncludeStyle | |||
value: llvm | |||
- key: modernize-use-auto.MinTypeNameLength | |||
value: '5' | |||
- key: modernize-use-auto.RemoveStars | |||
value: '0' | |||
- key: modernize-use-default-member-init.IgnoreMacros | |||
value: '1' | |||
- key: modernize-use-default-member-init.UseAssignment | |||
value: '0' | |||
- key: modernize-use-emplace.ContainersWithPushBack | |||
value: '::std::vector;::std::list;::std::deque' | |||
- key: modernize-use-emplace.SmartPointers | |||
value: '::std::shared_ptr;::std::unique_ptr;::std::auto_ptr;::std::weak_ptr' | |||
- key: modernize-use-emplace.TupleMakeFunctions | |||
value: '::std::make_pair;::std::make_tuple' | |||
- key: modernize-use-emplace.TupleTypes | |||
value: '::std::pair;::std::tuple' | |||
- key: modernize-use-equals-default.IgnoreMacros | |||
value: '1' | |||
- key: modernize-use-noexcept.ReplacementString | |||
value: '' | |||
- key: modernize-use-noexcept.UseNoexceptFalse | |||
value: '1' | |||
- key: modernize-use-nullptr.NullMacros | |||
value: 'NULL' | |||
- key: modernize-use-transparent-functors.SafeMode | |||
value: '0' | |||
- key: modernize-use-using.IgnoreMacros | |||
value: '1' | |||
- key: objc-forbidden-subclassing.ForbiddenSuperClassNames | |||
value: 'ABNewPersonViewController;ABPeoplePickerNavigationController;ABPersonViewController;ABUnknownPersonViewController;NSHashTable;NSMapTable;NSPointerArray;NSPointerFunctions;NSTimer;UIActionSheet;UIAlertView;UIImagePickerController;UITextInputMode;UIWebView' | |||
- key: objc-property-declaration.Acronyms | |||
value: '' | |||
- key: objc-property-declaration.IncludeDefaultAcronyms | |||
value: '1' | |||
- key: performance-faster-string-find.StringLikeClasses | |||
value: 'std::basic_string' | |||
- key: performance-for-range-copy.WarnOnAllAutoCopies | |||
value: '0' | |||
- key: performance-inefficient-string-concatenation.StrictMode | |||
value: '0' | |||
- key: performance-inefficient-vector-operation.VectorLikeClasses | |||
value: '::std::vector' | |||
- key: performance-move-const-arg.CheckTriviallyCopyableMove | |||
value: '1' | |||
- key: performance-move-constructor-init.IncludeStyle | |||
value: llvm | |||
- key: performance-type-promotion-in-math-fn.IncludeStyle | |||
value: llvm | |||
- key: performance-unnecessary-value-param.IncludeStyle | |||
value: llvm | |||
- key: portability-simd-intrinsics.Std | |||
value: '' | |||
- key: portability-simd-intrinsics.Suggest | |||
value: '0' | |||
- key: readability-braces-around-statements.ShortStatementLines | |||
value: '0' | |||
- key: readability-function-size.BranchThreshold | |||
value: '4294967295' | |||
- key: readability-function-size.LineThreshold | |||
value: '4294967295' | |||
- key: readability-function-size.NestingThreshold | |||
value: '4294967295' | |||
- key: readability-function-size.ParameterThreshold | |||
value: '4294967295' | |||
- key: readability-function-size.StatementThreshold | |||
value: '800' | |||
- key: readability-function-size.VariableThreshold | |||
value: '4294967295' | |||
- key: readability-identifier-naming.IgnoreFailedSplit | |||
value: '0' | |||
- key: readability-implicit-bool-conversion.AllowIntegerConditions | |||
value: '0' | |||
- key: readability-implicit-bool-conversion.AllowPointerConditions | |||
value: '0' | |||
- key: readability-inconsistent-declaration-parameter-name.IgnoreMacros | |||
value: '1' | |||
- key: readability-inconsistent-declaration-parameter-name.Strict | |||
value: '0' | |||
- key: readability-inconsistent-declaration-parameter-name.Strict | |||
value: '0' | |||
- key: readability-simplify-boolean-expr.ChainedConditionalReturn | |||
value: '0' | |||
- key: readability-simplify-subscript-expr.Types | |||
value: '::std::basic_string;::std::basic_string_view;::std::vector;::std::array' | |||
- key: readability-static-accessed-through-instance.NameSpecifierNestingThreshold | |||
value: '3' | |||
- key: zircon-temporary-objects.Names | |||
value: '' | |||
... |
@@ -1,15 +0,0 @@ | |||
<!-- This template will help you get your code into PQClean. --> | |||
<!-- Type some lines about your submission --> | |||
<!-- !! If you are not submitting a new scheme, we suggest removing the following lines!! --> | |||
#### Manually checked properties | |||
* [ ] Generated Github workflow (run ``.github/workflows/generate_workflows.py``) (new schemes) | |||
* [ ] No stringification macros | |||
* [ ] Output-parameter pointers in functions are on the left | |||
* [ ] Negative return values on failure of API functions (within restrictions of FO transform). | |||
* [ ] variable declarations at the beginning (except in `for (size_t i=...`) | |||
* Optional: | |||
* [ ] All integer types are of fixed size, using `stdint.h` types (including `uint8_t` instead of `unsigned char`) | |||
* [ ] Integers used for indexing are of size `size_t` |
@@ -1,91 +0,0 @@ | |||
![Test sphincs-haraka-128f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-128f-robust/badge.svg?branch=master) | |||
![Test rainbowV-circumzenithal](https://github.com/PQClean/PQClean/workflows/Test%20rainbowV-circumzenithal/badge.svg?branch=master) | |||
![Test rainbowIII-circumzenithal](https://github.com/PQClean/PQClean/workflows/Test%20rainbowIII-circumzenithal/badge.svg?branch=master) | |||
![Test sphincs-haraka-192f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-192f-simple/badge.svg?branch=master) | |||
![Test sphincs-sha256-128f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-128f-simple/badge.svg?branch=master) | |||
![Test rainbowIII-classic](https://github.com/PQClean/PQClean/workflows/Test%20rainbowIII-classic/badge.svg?branch=master) | |||
![Test sphincs-shake256-192s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-192s-simple/badge.svg?branch=master) | |||
![Test rainbowI-circumzenithal](https://github.com/PQClean/PQClean/workflows/Test%20rainbowI-circumzenithal/badge.svg?branch=master) | |||
![Test rainbowI-classic](https://github.com/PQClean/PQClean/workflows/Test%20rainbowI-classic/badge.svg?branch=master) | |||
![Test sphincs-haraka-256f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-256f-robust/badge.svg?branch=master) | |||
![Test sphincs-sha256-192f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-192f-simple/badge.svg?branch=master) | |||
![Test sphincs-haraka-192f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-192f-robust/badge.svg?branch=master) | |||
![Test sphincs-haraka-256s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-256s-robust/badge.svg?branch=master) | |||
![Test sphincs-shake256-192s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-192s-robust/badge.svg?branch=master) | |||
![Test sphincs-haraka-192s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-192s-simple/badge.svg?branch=master) | |||
![Test sphincs-haraka-256s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-256s-simple/badge.svg?branch=master) | |||
![Test sphincs-sha256-128s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-128s-robust/badge.svg?branch=master) | |||
![Test sphincs-shake256-256f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-256f-simple/badge.svg?branch=master) | |||
![Test sphincs-sha256-192f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-192f-robust/badge.svg?branch=master) | |||
![Test dilithium3](https://github.com/PQClean/PQClean/workflows/Test%20dilithium3/badge.svg?branch=master) | |||
![Test rainbowI-compressed](https://github.com/PQClean/PQClean/workflows/Test%20rainbowI-compressed/badge.svg?branch=master) | |||
![Test dilithium2](https://github.com/PQClean/PQClean/workflows/Test%20dilithium2/badge.svg?branch=master) | |||
![Test sphincs-sha256-256s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-256s-robust/badge.svg?branch=master) | |||
![Test sphincs-shake256-256s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-256s-robust/badge.svg?branch=master) | |||
![Test dilithium5](https://github.com/PQClean/PQClean/workflows/Test%20dilithium5/badge.svg?branch=master) | |||
![Test sphincs-haraka-256f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-256f-simple/badge.svg?branch=master) | |||
![Test sphincs-haraka-128s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-128s-robust/badge.svg?branch=master) | |||
![Test sphincs-shake256-128s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-128s-simple/badge.svg?branch=master) | |||
![Test sphincs-sha256-256f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-256f-simple/badge.svg?branch=master) | |||
![Test sphincs-shake256-128f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-128f-robust/badge.svg?branch=master) | |||
![Test sphincs-shake256-192f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-192f-simple/badge.svg?branch=master) | |||
![Test rainbowV-classic](https://github.com/PQClean/PQClean/workflows/Test%20rainbowV-classic/badge.svg?branch=master) | |||
![Test sphincs-sha256-192s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-192s-robust/badge.svg?branch=master) | |||
![Test sphincs-shake256-256s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-256s-simple/badge.svg?branch=master) | |||
![Test rainbowV-compressed](https://github.com/PQClean/PQClean/workflows/Test%20rainbowV-compressed/badge.svg?branch=master) | |||
![Test sphincs-sha256-256s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-256s-simple/badge.svg?branch=master) | |||
![Test dilithium5aes](https://github.com/PQClean/PQClean/workflows/Test%20dilithium5aes/badge.svg?branch=master) | |||
![Test dilithium2aes](https://github.com/PQClean/PQClean/workflows/Test%20dilithium2aes/badge.svg?branch=master) | |||
![Test sphincs-sha256-128s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-128s-simple/badge.svg?branch=master) | |||
![Test sphincs-sha256-192s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-192s-simple/badge.svg?branch=master) | |||
![Test rainbowIII-compressed](https://github.com/PQClean/PQClean/workflows/Test%20rainbowIII-compressed/badge.svg?branch=master) | |||
![Test sphincs-sha256-256f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-256f-robust/badge.svg?branch=master) | |||
![Test falcon-512](https://github.com/PQClean/PQClean/workflows/Test%20falcon-512/badge.svg?branch=master) | |||
![Test sphincs-shake256-192f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-192f-robust/badge.svg?branch=master) | |||
![Test falcon-1024](https://github.com/PQClean/PQClean/workflows/Test%20falcon-1024/badge.svg?branch=master) | |||
![Test sphincs-haraka-128s-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-128s-simple/badge.svg?branch=master) | |||
![Test sphincs-shake256-256f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-256f-robust/badge.svg?branch=master) | |||
![Test sphincs-shake256-128f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-128f-simple/badge.svg?branch=master) | |||
![Test sphincs-shake256-128s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-shake256-128s-robust/badge.svg?branch=master) | |||
![Test sphincs-haraka-192s-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-192s-robust/badge.svg?branch=master) | |||
![Test sphincs-sha256-128f-robust](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-sha256-128f-robust/badge.svg?branch=master) | |||
![Test sphincs-haraka-128f-simple](https://github.com/PQClean/PQClean/workflows/Test%20sphincs-haraka-128f-simple/badge.svg?branch=master) | |||
![Test dilithium3aes](https://github.com/PQClean/PQClean/workflows/Test%20dilithium3aes/badge.svg?branch=master) | |||
![Test kyber512-90s](https://github.com/PQClean/PQClean/workflows/Test%20kyber512-90s/badge.svg?branch=master) | |||
![Test firesaber](https://github.com/PQClean/PQClean/workflows/Test%20firesaber/badge.svg?branch=master) | |||
![Test frodokem1344aes](https://github.com/PQClean/PQClean/workflows/Test%20frodokem1344aes/badge.svg?branch=master) | |||
![Test sntrup653](https://github.com/PQClean/PQClean/workflows/Test%20sntrup653/badge.svg?branch=master) | |||
![Test mceliece6688128](https://github.com/PQClean/PQClean/workflows/Test%20mceliece6688128/badge.svg?branch=master) | |||
![Test ntrulpr761](https://github.com/PQClean/PQClean/workflows/Test%20ntrulpr761/badge.svg?branch=master) | |||
![Test frodokem976aes](https://github.com/PQClean/PQClean/workflows/Test%20frodokem976aes/badge.svg?branch=master) | |||
![Test hqc-rmrs-192](https://github.com/PQClean/PQClean/workflows/Test%20hqc-rmrs-192/badge.svg?branch=master) | |||
![Test sntrup857](https://github.com/PQClean/PQClean/workflows/Test%20sntrup857/badge.svg?branch=master) | |||
![Test frodokem640aes](https://github.com/PQClean/PQClean/workflows/Test%20frodokem640aes/badge.svg?branch=master) | |||
![Test hqc-rmrs-128](https://github.com/PQClean/PQClean/workflows/Test%20hqc-rmrs-128/badge.svg?branch=master) | |||
![Test mceliece6960119](https://github.com/PQClean/PQClean/workflows/Test%20mceliece6960119/badge.svg?branch=master) | |||
![Test frodokem1344shake](https://github.com/PQClean/PQClean/workflows/Test%20frodokem1344shake/badge.svg?branch=master) | |||
![Test mceliece6688128f](https://github.com/PQClean/PQClean/workflows/Test%20mceliece6688128f/badge.svg?branch=master) | |||
![Test mceliece8192128f](https://github.com/PQClean/PQClean/workflows/Test%20mceliece8192128f/badge.svg?branch=master) | |||
![Test kyber1024](https://github.com/PQClean/PQClean/workflows/Test%20kyber1024/badge.svg?branch=master) | |||
![Test mceliece348864f](https://github.com/PQClean/PQClean/workflows/Test%20mceliece348864f/badge.svg?branch=master) | |||
![Test sntrup761](https://github.com/PQClean/PQClean/workflows/Test%20sntrup761/badge.svg?branch=master) | |||
![Test ntruhps4096821](https://github.com/PQClean/PQClean/workflows/Test%20ntruhps4096821/badge.svg?branch=master) | |||
![Test ntruhrss701](https://github.com/PQClean/PQClean/workflows/Test%20ntruhrss701/badge.svg?branch=master) | |||
![Test mceliece348864](https://github.com/PQClean/PQClean/workflows/Test%20mceliece348864/badge.svg?branch=master) | |||
![Test ntrulpr653](https://github.com/PQClean/PQClean/workflows/Test%20ntrulpr653/badge.svg?branch=master) | |||
![Test kyber1024-90s](https://github.com/PQClean/PQClean/workflows/Test%20kyber1024-90s/badge.svg?branch=master) | |||
![Test ntruhps2048509](https://github.com/PQClean/PQClean/workflows/Test%20ntruhps2048509/badge.svg?branch=master) | |||
![Test kyber768-90s](https://github.com/PQClean/PQClean/workflows/Test%20kyber768-90s/badge.svg?branch=master) | |||
![Test mceliece6960119f](https://github.com/PQClean/PQClean/workflows/Test%20mceliece6960119f/badge.svg?branch=master) | |||
![Test saber](https://github.com/PQClean/PQClean/workflows/Test%20saber/badge.svg?branch=master) | |||
![Test kyber768](https://github.com/PQClean/PQClean/workflows/Test%20kyber768/badge.svg?branch=master) | |||
![Test kyber512](https://github.com/PQClean/PQClean/workflows/Test%20kyber512/badge.svg?branch=master) | |||
![Test lightsaber](https://github.com/PQClean/PQClean/workflows/Test%20lightsaber/badge.svg?branch=master) | |||
![Test mceliece460896f](https://github.com/PQClean/PQClean/workflows/Test%20mceliece460896f/badge.svg?branch=master) | |||
![Test mceliece8192128](https://github.com/PQClean/PQClean/workflows/Test%20mceliece8192128/badge.svg?branch=master) | |||
![Test mceliece460896](https://github.com/PQClean/PQClean/workflows/Test%20mceliece460896/badge.svg?branch=master) | |||
![Test ntruhps2048677](https://github.com/PQClean/PQClean/workflows/Test%20ntruhps2048677/badge.svg?branch=master) | |||
![Test ntrulpr857](https://github.com/PQClean/PQClean/workflows/Test%20ntrulpr857/badge.svg?branch=master) | |||
![Test hqc-rmrs-256](https://github.com/PQClean/PQClean/workflows/Test%20hqc-rmrs-256/badge.svg?branch=master) | |||
![Test frodokem976shake](https://github.com/PQClean/PQClean/workflows/Test%20frodokem976shake/badge.svg?branch=master) | |||
![Test frodokem640shake](https://github.com/PQClean/PQClean/workflows/Test%20frodokem640shake/badge.svg?branch=master) |
@@ -1,152 +0,0 @@ | |||
on: ['push', 'pull_request'] | |||
name: Test common files and sanity checks | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 test_common.py --numprocesses=auto | |||
python3 test_workflows.py | |||
test-emulated: | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 test_common.py --numprocesses=auto" | |||
test-windows: | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
python test_common.py --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
env: | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: ${{ matrix.compiler == 'gcc9' }} | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python test_common.py --numprocesses=auto | |||
@@ -1,62 +0,0 @@ | |||
#!/usr/bin/env python3 | |||
import sys | |||
import difflib | |||
from pathlib import Path | |||
import jinja2 | |||
def render_workflow(scheme_path): | |||
result = 0 | |||
scheme_name = scheme_path.name | |||
scheme_type = str(scheme_path.parent.name).split("_")[1] | |||
target_name = f"{scheme_type}_{scheme_name}.yml" | |||
tpl = TPL_ENV.get_template("template.yml.j2") | |||
new_contents = tpl.render(scheme_type=scheme_type, scheme_name=scheme_name) | |||
if not TEST_MODE: | |||
with open(target_name, "w") as f: | |||
f.write(new_contents) | |||
with open("BADGES.md", "a") as f: | |||
f.write( | |||
f"![Test {scheme_name}]" | |||
f"(https://github.com/PQClean/PQClean/workflows/Test%20{scheme_name}/badge.svg?branch=master)\n") | |||
else: | |||
if (Path(".") / target_name).exists(): | |||
with open(target_name, "r") as f: | |||
file_contents = f.read() | |||
else: | |||
file_contents = "" | |||
if file_contents != new_contents: | |||
sys.stdout.writelines(difflib.unified_diff( | |||
file_contents.splitlines(keepends=True), new_contents.splitlines(keepends=True), | |||
fromfile=f"old/{target_name}", tofile=f"new/{target_name}") | |||
) | |||
result = 1 | |||
return result | |||
if __name__ == "__main__": | |||
TEST_MODE = len(sys.argv) > 1 and sys.argv[1] == "test" | |||
loader = jinja2.FileSystemLoader(".") | |||
TPL_ENV = jinja2.Environment( | |||
loader=loader, variable_start_string="{-", variable_end_string="-}" | |||
) | |||
if not TEST_MODE: | |||
with open("BADGES.md", "w") as f: | |||
f.truncate() | |||
with open("template.yml.j2") as f: | |||
TEMPLATE = f.read() | |||
root = Path("../..") | |||
paths = root.glob("crypto_*/*") | |||
for path in paths: | |||
result = render_workflow(path) | |||
sys.exit(result) |
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/firesaber*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/firesaber/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_firesaber.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/firesaber*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/firesaber/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_firesaber.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test firesaber | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: firesaber | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=firesaber -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: firesaber | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: firesaber | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem1344aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem1344aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem1344aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem1344aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem1344aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem1344aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test frodokem1344aes | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem1344aes | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=frodokem1344aes -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem1344aes | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem1344aes | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem1344shake*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem1344shake/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem1344shake.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem1344shake*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem1344shake/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem1344shake.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test frodokem1344shake | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem1344shake | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=frodokem1344shake -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem1344shake | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem1344shake | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem640aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem640aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem640aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem640aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem640aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem640aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test frodokem640aes | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem640aes | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=frodokem640aes -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem640aes | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem640aes | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem640shake*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem640shake/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem640shake.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem640shake*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem640shake/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem640shake.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test frodokem640shake | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem640shake | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=frodokem640shake -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem640shake | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem640shake | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem976aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem976aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem976aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem976aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem976aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem976aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test frodokem976aes | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem976aes | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=frodokem976aes -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem976aes | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem976aes | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem976shake*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem976shake/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem976shake.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/frodokem976shake*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/frodokem976shake/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_frodokem976shake.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test frodokem976shake | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem976shake | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=frodokem976shake -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem976shake | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: frodokem976shake | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test hqc-128 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-128 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=hqc-128 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-128 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-128 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-192*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-192/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-192.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-192*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-192/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-192.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test hqc-192 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-192 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=hqc-192 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-192 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-192 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-256*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-256/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-256.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-256*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-256/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-256.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test hqc-256 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-256 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=hqc-256 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-256 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-256 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-rmrs-128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-rmrs-128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-rmrs-128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-rmrs-128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-rmrs-128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-rmrs-128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test hqc-rmrs-128 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-128 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=hqc-rmrs-128 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-128 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-128 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-rmrs-192*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-rmrs-192/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-rmrs-192.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-rmrs-192*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-rmrs-192/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-rmrs-192.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test hqc-rmrs-192 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-192 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=hqc-rmrs-192 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-192 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-192 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-rmrs-256*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-rmrs-256/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-rmrs-256.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/hqc-rmrs-256*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/hqc-rmrs-256/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_hqc-rmrs-256.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test hqc-rmrs-256 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-256 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=hqc-rmrs-256 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-256 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: hqc-rmrs-256 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber1024-90s*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber1024-90s/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber1024-90s.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber1024-90s*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber1024-90s/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber1024-90s.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test kyber1024-90s | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber1024-90s | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=kyber1024-90s -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber1024-90s | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber1024-90s | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber1024*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber1024/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber1024.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber1024*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber1024/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber1024.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test kyber1024 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber1024 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=kyber1024 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber1024 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber1024 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber512-90s*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber512-90s/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber512-90s.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber512-90s*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber512-90s/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber512-90s.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test kyber512-90s | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber512-90s | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=kyber512-90s -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber512-90s | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber512-90s | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber512*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber512/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber512.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber512*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber512/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber512.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test kyber512 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber512 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=kyber512 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber512 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber512 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber768-90s*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber768-90s/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber768-90s.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber768-90s*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber768-90s/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber768-90s.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test kyber768-90s | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber768-90s | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=kyber768-90s -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber768-90s | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber768-90s | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber768*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber768/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber768.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/kyber768*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/kyber768/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_kyber768.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test kyber768 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber768 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=kyber768 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber768 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: kyber768 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/lightsaber*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/lightsaber/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_lightsaber.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/lightsaber*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/lightsaber/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_lightsaber.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test lightsaber | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: lightsaber | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=lightsaber -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: lightsaber | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: lightsaber | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece348864*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece348864/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece348864.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece348864*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece348864/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece348864.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece348864 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece348864 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece348864 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece348864 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece348864 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece348864f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece348864f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece348864f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece348864f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece348864f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece348864f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece348864f | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece348864f | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece348864f -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece348864f | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece348864f | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece460896*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece460896/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece460896.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece460896*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece460896/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece460896.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece460896 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece460896 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece460896 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece460896 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece460896 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece460896f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece460896f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece460896f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece460896f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece460896f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece460896f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece460896f | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece460896f | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece460896f -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece460896f | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece460896f | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6688128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6688128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6688128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6688128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6688128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6688128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece6688128 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6688128 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece6688128 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6688128 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6688128 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6688128f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6688128f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6688128f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6688128f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6688128f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6688128f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece6688128f | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6688128f | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece6688128f -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6688128f | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6688128f | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6960119*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6960119/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6960119.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6960119*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6960119/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6960119.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece6960119 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6960119 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece6960119 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6960119 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6960119 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6960119f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6960119f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6960119f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece6960119f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece6960119f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece6960119f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece6960119f | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6960119f | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece6960119f -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6960119f | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece6960119f | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece8192128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece8192128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece8192128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece8192128*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece8192128/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece8192128.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece8192128 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece8192128 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece8192128 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece8192128 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece8192128 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece8192128f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece8192128f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece8192128f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/mceliece8192128f*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/mceliece8192128f/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_mceliece8192128f.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test mceliece8192128f | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece8192128f | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=mceliece8192128f -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece8192128f | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: mceliece8192128f | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhps2048509*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhps2048509/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhps2048509.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhps2048509*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhps2048509/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhps2048509.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test ntruhps2048509 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps2048509 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=ntruhps2048509 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps2048509 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps2048509 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhps2048677*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhps2048677/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhps2048677.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhps2048677*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhps2048677/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhps2048677.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test ntruhps2048677 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps2048677 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=ntruhps2048677 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps2048677 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps2048677 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhps4096821*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhps4096821/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhps4096821.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhps4096821*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhps4096821/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhps4096821.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test ntruhps4096821 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps4096821 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=ntruhps4096821 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps4096821 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhps4096821 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhrss701*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhrss701/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhrss701.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntruhrss701*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntruhrss701/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntruhrss701.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test ntruhrss701 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhrss701 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=ntruhrss701 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhrss701 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntruhrss701 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntrulpr653*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntrulpr653/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntrulpr653.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntrulpr653*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntrulpr653/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntrulpr653.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test ntrulpr653 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr653 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=ntrulpr653 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr653 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr653 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntrulpr761*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntrulpr761/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntrulpr761.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntrulpr761*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntrulpr761/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntrulpr761.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test ntrulpr761 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr761 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=ntrulpr761 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr761 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr761 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntrulpr857*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntrulpr857/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntrulpr857.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/ntrulpr857*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/ntrulpr857/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_ntrulpr857.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test ntrulpr857 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr857 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=ntrulpr857 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr857 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: ntrulpr857 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/saber*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/saber/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_saber.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/saber*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/saber/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_saber.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test saber | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: saber | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=saber -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: saber | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: saber | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sntrup653*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/sntrup653/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_sntrup653.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sntrup653*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/sntrup653/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_sntrup653.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sntrup653 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup653 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sntrup653 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup653 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup653 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sntrup761*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/sntrup761/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_sntrup761.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sntrup761*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/sntrup761/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_sntrup761.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sntrup761 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup761 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sntrup761 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup761 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup761 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sntrup857*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/sntrup857/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_sntrup857.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sntrup857*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_kem/sntrup857/**' | |||
# build if workflow file changed | |||
- '.github/workflows/kem_sntrup857.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sntrup857 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup857 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sntrup857 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup857 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sntrup857 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium2*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium2/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium2.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium2*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium2/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium2.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test dilithium2 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium2 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=dilithium2 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium2 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium2 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium2aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium2aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium2aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium2aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium2aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium2aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test dilithium2aes | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium2aes | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=dilithium2aes -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium2aes | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium2aes | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium3*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium3/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium3.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium3*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium3/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium3.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test dilithium3 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium3 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=dilithium3 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium3 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium3 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium3aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium3aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium3aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium3aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium3aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium3aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test dilithium3aes | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium3aes | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=dilithium3aes -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium3aes | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium3aes | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium5*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium5/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium5.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium5*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium5/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium5.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test dilithium5 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium5 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=dilithium5 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium5 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium5 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium5aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium5aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium5aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/dilithium5aes*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/dilithium5aes/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_dilithium5aes.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test dilithium5aes | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium5aes | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=dilithium5aes -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium5aes | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: dilithium5aes | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/falcon-1024*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/falcon-1024/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_falcon-1024.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/falcon-1024*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/falcon-1024/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_falcon-1024.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test falcon-1024 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: falcon-1024 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=falcon-1024 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: falcon-1024 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: falcon-1024 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/falcon-512*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/falcon-512/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_falcon-512.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/falcon-512*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/falcon-512/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_falcon-512.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test falcon-512 | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: falcon-512 | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=falcon-512 -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: falcon-512 | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: falcon-512 | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowI-circumzenithal*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowI-circumzenithal/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowI-circumzenithal.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowI-circumzenithal*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowI-circumzenithal/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowI-circumzenithal.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowI-circumzenithal | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-circumzenithal | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowI-circumzenithal -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-circumzenithal | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-circumzenithal | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowI-classic*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowI-classic/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowI-classic.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowI-classic*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowI-classic/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowI-classic.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowI-classic | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-classic | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowI-classic -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-classic | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-classic | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowI-compressed*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowI-compressed/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowI-compressed.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowI-compressed*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowI-compressed/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowI-compressed.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowI-compressed | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-compressed | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowI-compressed -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-compressed | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowI-compressed | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowIII-circumzenithal*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowIII-circumzenithal/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowIII-circumzenithal.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowIII-circumzenithal*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowIII-circumzenithal/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowIII-circumzenithal.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowIII-circumzenithal | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-circumzenithal | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowIII-circumzenithal -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-circumzenithal | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-circumzenithal | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowIII-classic*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowIII-classic/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowIII-classic.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowIII-classic*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowIII-classic/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowIII-classic.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowIII-classic | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-classic | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowIII-classic -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-classic | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-classic | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowIII-compressed*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowIII-compressed/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowIII-compressed.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowIII-compressed*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowIII-compressed/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowIII-compressed.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowIII-compressed | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-compressed | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowIII-compressed -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-compressed | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowIII-compressed | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowV-circumzenithal*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowV-circumzenithal/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowV-circumzenithal.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowV-circumzenithal*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowV-circumzenithal/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowV-circumzenithal.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowV-circumzenithal | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-circumzenithal | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowV-circumzenithal -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-circumzenithal | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-circumzenithal | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowV-classic*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowV-classic/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowV-classic.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowV-classic*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowV-classic/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowV-classic.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowV-classic | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-classic | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowV-classic -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-classic | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-classic | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowV-compressed*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowV-compressed/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowV-compressed.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/rainbowV-compressed*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/rainbowV-compressed/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_rainbowV-compressed.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test rainbowV-compressed | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-compressed | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=rainbowV-compressed -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-compressed | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: rainbowV-compressed | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-128f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-128f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-128f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-128f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-128s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-128s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-128s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-128s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-128s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-128s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-128s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-128s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-192f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-192f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-192f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-192f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-192s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-192s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-192s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-192s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-192s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-192s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-192s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-192s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-256f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-256f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-256f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-256f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-256s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-256s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-haraka-256s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-haraka-256s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-haraka-256s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-haraka-256s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-haraka-256s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-haraka-256s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-128f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-128f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-128f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-128f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-128s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-128s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-128s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-128s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-128s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-128s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-128s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-128s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-192f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-192f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-192f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-192f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-192s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-192s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-192s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-192s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-192s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-192s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-192s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-192s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-256f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-256f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-256f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-256f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-256s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-256s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-sha256-256s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-sha256-256s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-sha256-256s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-sha256-256s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-sha256-256s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-sha256-256s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-128f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-128f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-128f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-128f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-128s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-128s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-128s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-128s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-128s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-128s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-128s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-128s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-192f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-192f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-192f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-192f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-192s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-192s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-192s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-192s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-192s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-192s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-192s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-192s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256f-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256f-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256f-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-256f-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256f-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-256f-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256f-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256f-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256f-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256f-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256f-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-256f-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256f-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-256f-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256f-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256f-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256s-robust*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256s-robust/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256s-robust.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-256s-robust | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256s-robust | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-256s-robust -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256s-robust | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256s-robust | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,204 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/sphincs-shake256-256s-simple*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_sign/sphincs-shake256-256s-simple/**' | |||
# build if workflow file changed | |||
- '.github/workflows/sign_sphincs-shake256-256s-simple.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test sphincs-shake256-256s-simple | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256s-simple | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES=sphincs-shake256-256s-simple -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256s-simple | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: sphincs-shake256-256s-simple | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
@@ -1,205 +0,0 @@ | |||
on: | |||
push: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/{- scheme_name -}*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_{- scheme_type -}/{- scheme_name -}/**' | |||
# build if workflow file changed | |||
- '.github/workflows/{- scheme_type -}_{- scheme_name -}.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
pull_request: | |||
paths: | |||
# build if tests change | |||
- 'test/**' | |||
# do not build if other schemes duplicate_consistency files change | |||
- '!test/duplicate_consistency/*.yml' | |||
- 'test/duplicate_consistency/{- scheme_name -}*.yml' | |||
# build if common files change | |||
- 'common/**' | |||
# build if scheme changed | |||
- 'crypto_{- scheme_type -}/{- scheme_name -}/**' | |||
# build if workflow file changed | |||
- '.github/workflows/{- scheme_type -}_{- scheme_name -}.yml' | |||
# Build if any files in the root change, except .md files | |||
- '*' | |||
- '!*.md' | |||
schedule: | |||
- cron: '5 4 * * *' | |||
name: Test {- scheme_name -} | |||
jobs: | |||
test-native: | |||
runs-on: ubuntu-latest | |||
container: | |||
image: pqclean/ci-container:${{ matrix.arch }} | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: {- scheme_name -} | |||
CC: ccache ${{ matrix.cc }} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_DIR: /ccache | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
strategy: | |||
matrix: | |||
arch: | |||
- amd64 | |||
- i386 | |||
cc: | |||
- gcc | |||
- clang | |||
steps: | |||
- name: Cancel Previous Runs | |||
uses: thomwiggers/cancel-workflow-action@all_but_latest | |||
with: | |||
all_but_latest: true | |||
access_token: ${{ github.token }} | |||
continue-on-error: true | |||
if: matrix.arch == 'amd64' && matrix.cc == 'gcc' | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: /ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Install python dependencies | |||
run: | | |||
python3 -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python3 -m pytest --verbose --numprocesses=auto | |||
test-emulated: | |||
needs: | |||
- test-native | |||
runs-on: ubuntu-latest | |||
strategy: | |||
matrix: | |||
arch: | |||
- armhf | |||
- unstable-ppc | |||
cc: | |||
- gcc | |||
- clang | |||
env: | |||
CC: ${{ matrix.cc }} | |||
steps: | |||
- name: Register qemu-user-static | |||
run: | | |||
docker run --rm --privileged multiarch/qemu-user-static:register --reset | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Cache ccache | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-ccache | |||
with: | |||
path: ~/ccache | |||
key: v1-${{ runner.os }}-build-${{ env.cache-name }}-${{ matrix.cc }}-${{ env.GITHUB_WORKFLOW }}-${{ matrix.arch }} | |||
- name: Cache pip | |||
uses: actions/cache@v2 | |||
env: | |||
cache-name: cache-python-pip | |||
with: | |||
path: ~/.cache/pip | |||
key: v1-python-pip | |||
- name: Run tests in container | |||
run: | | |||
docker run --rm -e CI -e CC -e PQCLEAN_ONLY_SCHEMES={- scheme_name -} -v $PWD:$PWD -w $PWD -v ~/ccache:/ccache pqclean/ci-container:${{ matrix.arch }} /bin/bash -c "\ | |||
export CCACHE_NOSTATS=1 && \ | |||
export CCACHE_DIR=/ccache && \ | |||
export CCACHE_SLOPPINESS=include_file_mtime && \ | |||
export CC=\"ccache $CC\" && \ | |||
pip3 install -U -r requirements.txt && \ | |||
cd test && \ | |||
python3 -m pytest --verbose --numprocesses=auto" | |||
test-windows: | |||
needs: | |||
- test-native | |||
strategy: | |||
matrix: | |||
bits: | |||
- 64 | |||
- 32 | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: {- scheme_name -} | |||
runs-on: windows-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Setup astyle | |||
run: | | |||
# Setup strong crypto | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\.NetFramework\\v4.0.30319" -Name 'SchUseStrongCrypto' -Value '1' -Type DWord | |||
Set-ItemProperty -Path "HKLM:\\SOFTWARE\\Microsoft\\.NetFramework\\v4.0.30319" -Name "SchUseStrongCrypto" -Value '1' -Type DWord | |||
Invoke-WebRequest -OutFile "test\\astyle.exe" "https://rded.nl/pqclean/AStyle.exe" | |||
shell: powershell | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install python requirements | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\vcvars${{ matrix.bits }}.bat" | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
shell: cmd | |||
test-macos: | |||
needs: | |||
- test-native | |||
env: | |||
PQCLEAN_ONLY_SCHEMES: {- scheme_name -} | |||
CCACHE_NOSTATS: 1 | |||
CCACHE_SLOPPINESS: include_file_mtime | |||
# XCode version | |||
DEVELOPER_DIR: /Applications/Xcode_11.5.app/Contents/Developer | |||
strategy: | |||
matrix: | |||
compiler: | |||
- clang # XCode (Apple LLVM/Clang) | |||
- gcc9 # GNU (Homebrew) | |||
runs-on: macos-latest | |||
steps: | |||
- uses: actions/checkout@v2 | |||
with: | |||
submodules: true | |||
- name: Install astyle | |||
run: | | |||
brew install astyle | |||
- name: Set up GCC9 compiler | |||
run: 'export PATH="/usr/local/bin:$PATH" && export CC=gcc-9' | |||
if: matrix.compiler == 'gcc9' | |||
- name: Setup Python | |||
uses: actions/setup-python@main | |||
with: | |||
python-version: "3.x" | |||
- name: Install Python dependencies | |||
run: python -m pip install -U -r requirements.txt | |||
- name: Run tests | |||
run: | | |||
cd test | |||
python -m pytest --verbose --numprocesses=auto | |||
{# vim: set ft=yaml ts=2 sw=2 tw=0 et :#} |