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
Jakub Sokołowski
8abea59196
don't use Jenkins master host for combined jobs
...
This lowers the risk of someone extracting sensitive data from master.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-02-27 17:58:19 +01:00
Jakub Sokołowski
3d52d1cb9c
jenkins: build() doesn't like mixed arguments
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-02-14 17:53:02 +01:00
Jakub Sokołowski
dc0d0b59cb
re-enable site updates on nightly builds
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-02-12 20:55:25 +01:00
Jakub Sokołowski
f6b7f637f0
disable desktop builds as work on them is on hold
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-11-26 16:30:21 +01:00
Vitaliy Vlasov
f28fd8fc9c
customize TMPDIR and clean it
...
Also:
- parallelize upload and achive stages
- fix s3cmd uploads for combined Jenkinsfile
- fix failing TestFlight clean job
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-10-18 09:40:11 +02:00
Jakub Sokołowski
afc2412514
desktop builds need GnuPG
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-10-17 11:03:41 +02:00
Volodymyr Kozieiev
ace4b5a161
Desktop works with react-navigation v3
...
Signed-off-by: Volodymyr Kozieiev <vkjr.sp@gmail.com>
2019-10-02 10:19:37 +03:00
Jakub Sokołowski
00de482767
re-enable desktop builds
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-09-19 17:41:50 +03:00
Jakub Sokołowski
a79544d043
forgot to disable desktop stuff in other steps
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-08-10 02:17:04 -04:00
Jakub Sokołowski
c49e4933ee
disable desktop builds for now
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-08-08 15:12:22 -04:00
Jakub Sokołowski
cca2af6875
don't provide --apk=, it's already there
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-07-03 08:16:00 -04:00
Jakub Sokołowski
7c1df4f3cd
fix load of github groovy module
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-06-11 07:43:46 -04:00
Jakub Sokołowski
55abf20645
modify .env settings using Jenkins params
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-04-11 19:49:13 +02:00
Jakub Sokołowski
0887a5299a
add github releases for mobile
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-03-07 19:16:15 +01:00
Jakub Sokołowski
6ff36b5dd5
fix missing cmn. prefix
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-03-06 15:49:20 +01:00
Jakub Sokołowski
f67ee8db56
upload release.json for release builds
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-03-06 14:52:26 +01:00
Jakub Sokołowski
9b3580fafe
ci: disable copying artifacts and using non-existent url
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-03-01 09:52:10 +01:00
Jakub Sokołowski
fd59e76603
ci: use legacy build system to avoid xcode 10.1 issues
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-03-01 09:16:03 +01:00
Jakub Sokołowski
fab20ffc35
copying from wrong job for nightlies
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-01-23 10:51:21 +01:00
Jakub Sokołowski
3acc480428
use separate jobs for e2e builds, disable aborting for non-pr builds
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-01-22 14:28:30 +01:00
Jakub Sokołowski
420a64e72d
don't update cn.status.im on every release build
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-01-15 17:22:03 +01:00
Jakub Sokołowski
3cfec19757
fix link used for Macs
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-12-13 18:09:04 +01:00
Jakub Sokołowski
2586e71b30
move upload step top platform specific builds, cleanup
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-12-12 14:12:17 +01:00
Jakub Sokołowski
6364b886e4
enable desktop builds for releases
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-12-06 13:45:29 +01:00
Jakub Sokołowski
a91a799eb5
add an e2e build target for ios
...
Squashe commits:
- add an e2e build target for ios
- add correct sdk and destination for simulator
- fixup! add correct sdk and destination for simulator
- drop xcarchive_path since we are not using it
- temporarily bind ios build to macos-03
- Detect installed simulator SDK and use it.
- Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-12-05 18:43:11 +01:00
Jakub Sokołowski
458ccc48a5
fix which variables stores link to sha256 url
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-30 15:31:35 +01:00
Jakub Sokołowski
6365a0d1e2
uplod sha256 checksums of built artifacts
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-29 19:57:31 +01:00
Jakub Sokołowski
01c8d9b25b
stop using build-* git tags for counting build numbers
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-21 13:43:12 +01:00
Pedro Pombeiro
a31d10f6dc
Add support for generating Windows install program instead of zip file. Part of #6304
...
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-11-20 15:11:24 +01:00
Jakub Sokołowski
c825ff285a
use a table to post links to build artifacts
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-15 12:31:51 +01:00
Jakub Sokołowski
d86ebe3c9b
use uppercase for latest.json
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-14 18:14:17 +01:00
Pedro Pombeiro
b8f6eb8d24
Configure Jenkins for Windows builds. Part of #5807
2018-11-14 17:16:32 +01:00
Jakub Sokołowski
a016b1656d
increate android and combined timeout to 35 minutes
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-14 13:43:22 +01:00
Jakub Sokołowski
972cb3350e
call the correct job for updating nightlies page
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-13 20:10:42 +01:00
Jakub Sokołowski
d2160e3701
upload a latest.json to the nightlies bucket
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-10 15:44:49 +01:00
Jakub Sokołowski
1a0e0c71a6
remove slackSend call which caused failures
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-08 19:19:31 +01:00
Pedro Pombeiro
43075cc156
Increase build timeout as it is failing intermittently now
...
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-11-07 10:18:34 +01:00
Jakub Sokołowski
8199211e4d
add jenkins timeouts
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-10-30 13:31:19 +01:00
Jakub Sokołowski
75f23a19ad
drop use of artifactory maven repo
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
- rename jar file to match flatDir search method
- try using ivy repo to pull status-go from github
- drop use of artifactory in pom.xml
- move status-go version to a STATUS_GO_VERSION file
- upgrade status-go to 0.16.0
- unzip with overwriting
- prepare-ios: doewnload archive only if it doesn't exist
- fix prepare-android and prepare-ios
- use Makefile targets to make sure status-go archives exist
- remove unnecessary call to make prepare-android
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-10-05 18:18:58 -04:00
Jakub Sokołowski
27667dd949
upload PR build artifacts to a separate bucket, also update desc
...
also splify syntax with helper methods and variables
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-10-03 12:03:15 -04:00
Jakub Sokołowski
f061025b67
update cn.status.im APK link on release
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-09-19 12:48:06 -04:00
Igor Mandrigin
d2d8e43535
Ignore Desktop builds for release.
...
Currently, we don't release desktop betas and it isn't given that the
release schedule will be synchronized. So, for simplicity of support,
let's not build desktop against release branches.
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-09-04 11:24:44 -04:00
Jakub Sokołowski
2a1468cfa9
use dashes instead of dots in artifact filenames
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-08-30 11:43:56 -04:00
Jakub Sokołowski
5532510c56
run e2e by default only for nightlies
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-08-29 13:46:31 -04:00
Igor Mandrigin
e508d98316
Have a single notification about builds.
...
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-08-29 14:22:22 +02:00
Jakub Sokołowski
2d6764862a
remove default value from Jenkinsfile.combined
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-08-28 22:33:18 -04:00
Jakub Sokołowski
3a3a6f2aa5
add default value for BUILD_TYPE parameter
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-08-28 12:55:15 -04:00
Jakub Sokołowski
198596d5e6
fix access to CHANGE_ID
...
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-08-27 20:03:00 -04:00
Jakub Sokołowski
76e9501541
prepare Jenkinsfile.combined for PR builds
...
- add missing Lint step for mobile builds
- add missing upload steps for android
- prefix fastlane calls with bundle exec
- update slackSend to format for PR builds
- silence fastlane notifying slack, Jenkins already does
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-08-27 19:34:00 -04:00