status-mobile/ci
Jakub Sokołowski 4e567cf782
use status-react-jenkins as CI library
This PR extracts all the ci/*.groovy scripts into a separate private repo located at:
https://github.com/status-im/status-react-jenkins

The main reasons for a separate repo are:

* Hiding the internal details of our CI setup
* Hiding names of Jenkins credentials available in CI jobs
* Lowering attack surface for malicious external contributors
* Increasing focus on PRs related to CI setup

You can read more about how Jenkins pipeline shared libraries work here:
https://jenkins.io/doc/book/pipeline/shared-libraries/

In simple terms I've added the repo to the main Jenkins configuration in "Global Pipeline Libraries" section and load it using:

  library 'status-react-jenkins@master'

Which makes globally available all of the libraries defined in the `vars` directory of that repo.
This also eliminates the need for statements like `android = load 'ci/android.groovy'`.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-03-11 19:11:36 +01:00
..
tests e2e: fix handling of GitHub token 2020-02-24 14:58:09 +01:00
Jenkinsfile remove old jenkisnfiles 2018-09-04 07:39:40 -04:00
Jenkinsfile.android use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
Jenkinsfile.combined use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
Jenkinsfile.fastlane.clean use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
Jenkinsfile.ios use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
Jenkinsfile.linux use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
Jenkinsfile.macos use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
Jenkinsfile.nix-cache use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
Jenkinsfile.windows use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00
README.md use status-react-jenkins as CI library 2020-03-11 19:11:36 +01:00

README.md

Description

This folder contains files defininf Jenkins pipelines that run on https://ci.status.im/.

Libraries

All Jenkinsfiles contain the following line:

library 'status-react-jenkins@master'

Which loads the used methods - like nix.shell() - from a separate private repo:

https://github.com/status-im/status-react-jenkins

This is done to improve security of our CI setup.