2019-06-13 16:52:30 +02:00
# NetNewsWire Continuous Integration
2020-05-05 16:24:04 +02:00
CI for NetNewsWire is enabled through Github Actions. The CI workflow configuration (hosted in
2020-07-26 11:46:00 +02:00
[`.github/workflows/build.yml` ](https://github.com/brentsimmons/NetNewsWire/blob/main/.github/workflows/build.yml )
2020-05-05 16:24:04 +02:00
uses `xcodebuild` to build the project after syncing the repository and the various submodules.
2019-06-13 16:52:30 +02:00
2020-05-05 16:24:04 +02:00
The build itself focuses on the scheme NetNewsWire for macOS and NetNewsWire-iOS for iOS. Also it leverages the
2019-06-13 16:52:30 +02:00
`NetNewsWire.xcworkspace` configuration.
2022-01-04 23:25:20 +01:00
Private keys, certificates and provisioning profiles are stored in Github under `buildscripts` folder. Decrypting necessary certificates, copy to build machine keychain and delete the certificates are handled by the [`buildscripts/ci-build.sh` ](https://github.com/Ranchero-Software/NetNewsWire/blob/main/buildscripts/ci-build.sh ) script.
2020-05-05 16:24:04 +02:00
2019-06-13 16:52:30 +02:00
Each submodule also has it's own CI configuration, which are set up and built from
their own repositories. The submodule CI systems are entirely independent so that
2022-01-04 23:25:20 +01:00
those libraries can grow and change, getting CI verification, independent of NetNewsWire.
2019-06-13 16:52:30 +02:00
2020-05-05 16:24:04 +02:00
Build failures are notified to our slack group via [Notify Slack ](https://github.com/8398a7/action-slack ) GitHub action.
2019-06-13 16:52:30 +02:00
The submodule CI are typically set to run a build and any available tests. Refer to the
project repository for the current and complete list of submodules, but for quick reference:
2020-05-05 16:24:04 +02:00
- [RSCore ](https://github.com/brentsimmons/RSCore )![CI ](https://github.com/Ranchero-Software/RSCore/workflows/CI/badge.svg )
2019-06-13 16:52:30 +02:00
2020-05-05 16:24:04 +02:00
- [RSWeb ](https://github.com/brentsimmons/RSWeb ) ![CI ](https://github.com/Ranchero-Software/RSWeb/workflows/CI/badge.svg )
2019-06-13 16:52:30 +02:00
2020-05-05 16:24:04 +02:00
- [RSParser ](https://github.com/brentsimmons/RSParser )![CI ](https://github.com/Ranchero-Software/RSParser/workflows/CI/badge.svg )
2019-06-13 16:52:30 +02:00
2020-05-05 16:24:04 +02:00
- [RSTree ](https://github.com/brentsimmons/RSTree )![CI ](https://github.com/Ranchero-Software/RSTree/workflows/CI/badge.svg )
2019-06-13 16:52:30 +02:00
2020-05-05 16:24:04 +02:00
- [RSDatabase ](https://github.com/brentsimmons/RSDatabase ) ![CI ](https://github.com/Ranchero-Software/RSDatabase/workflows/CI/badge.svg )