Closed leso-kn closed 3 years ago
Please note as well, that the scripts inside tools/
needed to be modified in order to be configurable from ci.yml
.
This also involves changes to the way log colors are initialized in build-common.sh
, since I had trouble to run the original script inside a clean macos envionment on the github ci runner.
If you prefer to not change these files, the PR can of cause be adjusted to remove the configure options from ci.yml
and move everything related to configuration back to the tools/
scripts.
Current CI configuration:
openssl: 1.1.1d
nghttp2: 1.40.0
curl: 7.68.0
iOS 8.0 (arm64)
Android (api: 23, arm64-v8a)
With the matrix feature, different versions and platforms can easily be added inside the ci config.
Thank you for your contribution
Hi,
I've created a github ci workflow for this project.
It can be configured to build any version of
openssl
,nghttp2
andcurl
for both, ios and android automatically on push events (or whatever repository event, likepull-request
).Library versions, target architectures, -platforms, -abis, -api versions etc can be adjusted from inside a single workflow file (
ci.yml
).The pipeline automatically creates releases and attaches the compiled files. For a preview, check the releases section of my fork.
:warning: Please beware: Github workflows do not support yaml anchors at the moment.
Yaml anchors are a technique to re-use sections of yaml code. Since this feature is missing at the moment and the build step for
curl
depends onopenssl
andnghttp2
, the workflow configuration file is a bit large right now.Support for yaml anchors in gitlab workflows is planned in the future. This will allow to shorten the contents of the ci config.