jakub
3f47fb6bf6
ci: use pipefail to actually catch test errors
...
Because otherwise when piping optput to `tee` the exit code that
affects the result of the whole `sh` call is the last command in the pipe.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-09-05 10:24:26 +02:00
jakub
6fa1729384
ci: tests build does not save any artifacts
...
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-09-01 16:17:48 +02:00
jakub
718e6cdbb3
ci: disable sandbox for status-go iOS builds
...
Otherwise we get weird failures like these:
```
clang-11: error: cannot use 'cpp-output' output with multiple -arch options
clang-11: error: invalid argument '-mmacos-version-min=10.12' not allowed with '-miphoneos-version-min=8.0'
clang-11: error: invalid argument '-mmacos-version-min=10.12' not allowed with '-miphoneos-version-min=8.0'
```
Depends on: https://github.com/status-im/status-jenkins-lib/pull/47
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-09-01 16:17:47 +02:00
jakub
70bf8452f7
ci: save and show both stdout and stderr
...
By using the `|&` operator we send both to `tee`.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-08-31 18:46:03 +02:00
jakub
70da680c1b
ci: fix keystore used when validating APK
...
Necessary to avoid validation errors due to missing release keystore.
Depends on: https://github.com/status-im/status-jenkins-lib/pull/46
Issue: https://github.com/status-im/infra-ci/issues/63
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-08-29 12:46:19 +02:00
jakub
1b8aea87b2
ci: use different IPFS gateway for release builds
...
https://github.com/status-im/status-go/compare/f43f43cc...86054875
Depends on: https://github.com/status-im/status-jenkins-lib/pull/44
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-08-26 20:02:27 +02:00
jakub
0a4d181477
ci: extrac Lint and Tests to separate job
...
This way we can make PRs depend only on successful tests, and not whole
builds for all platforms, which take 10 minutes or more.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-08-26 15:47:32 +02:00
jakub
1f7fd17ff1
rename status-react to status-mobile
...
This way the name of the repo makes at least some sense and
matches the `status-desktop` repo naming.
Also updated `status-jenkins-lib` since it also contained
references to `status-react` repo and job names.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-07-17 14:46:16 +02:00
jakub
578e542a66
ci: use newly added disableConcurrentBuilds
...
https://github.com/jenkinsci/workflow-job-plugin/pull/200
Removes the need to use our own convoluted implementation:
https://github.com/status-im/status-jenkins-lib/blob/17c1d0ea/vars/jenkins.groovy#L6-L27
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-07-13 20:27:20 +02:00
jakub
acfa73ab43
nix: build unsigned Android APK, sign separately
...
This has several benefits:
* Less abuse of `extra-sandbox-paths` Nix option
* Less inputs to the Android release build derivation
* Easier for users to sign the build themselves
* Simplification of `scripts/release-android.sh`
* Preparation for building using Nix Flakes
The only two remaining credentials passed via `extra-sandbox-paths` is
the Infura and OpenSea API keys, and there is no way around that other
than passing them via Nix arguments, but that would cause them to end up
in `/nix/store` as part of `.drv` files.
I'm also renaming `release-fdroid` to `build-fdroid` to be consistent.
Depends on: https://github.com/status-im/status-jenkins-lib/pull/42
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-05-21 11:10:11 +02:00
yevh-berdnyk
7991bbe958
KeyError
2022-05-17 06:22:03 +03:00
jakub
8d62680abe
ci: use improved method to get APK architectures
...
Detecting APK architectures using `apkanalyzer` tool
rather than just guessing based on build type.
Depends on: https://github.com/status-im/status-jenkins-lib/pull/41
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-05-11 14:57:00 +02:00
jakub
d765dd1f60
ci: use nix copy instead of nix-copy-closure
...
Also use `ssh-ng://` protocol implementation instead of `ssh://`.
Might fix the following error:
```
error (ignored): error: reached end of FramedSource
error: sized: unexpected end-of-file
error: unexpected end-of-file
```
For more details see: https://github.com/NixOS/nix/issues/6495
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-05-09 13:21:46 +02:00
jakub
777d0581ce
nix: upgrade from 2.6.1 to 2.8.0
...
Minor upgrade done to match the version deployed in CI due to a bug
with `nix-copy-closure` which broken Nix cache jobs:
https://github.com/status-im/infra-ci/issues/49
This will not force upgrade on developes, nor require any `make nix-purge`.
If however and upgrade is wanted it can be simply done with `nix upgrade-nix`.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-05-07 11:24:58 +02:00
jakub
6f45b5c8e8
ci: upgarde to Xcode 13.3.1
...
App store now requires all applications to be built with XCode 13:
https://developer.apple.com/news/?id=2t1chhp3
Related: https://github.com/status-im/infra-ci/issues/48
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-05-06 19:27:22 +02:00
Churikova Tetiana
411fd843ca
e2e: numprocesses and fixes
2022-05-04 18:27:42 +02:00
jakub
2bab1325d8
ci: fix nix sandbox filename by adding random string
...
By using just the timestamp we increase the probability of hitting a
race condition with another build due to same filename of sandbox file.
Depends on: https://github.com/status-im/status-jenkins-lib/pull/40
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-04-27 15:07:26 +04:00
yevh-berdnyk
fd6b14fccc
Updated GH and TR reports
...
Signed-off-by: yevh-berdnyk <ie.berdnyk@gmail.com >
2022-04-15 00:55:40 +03:00
Churikova Tetiana
b53b7b331a
e2e: cleanup
2022-04-14 10:49:17 +02:00
jakub
0311983751
ci: upgrade Nix from 2.3.12 to 2.6.1
...
Due to changes in how Nix handles Git refs we need to specify
`refs/tags/` prefix in `package.json` to avoid the following error:
```
fatal: couldn't find remote ref refs/heads/v2.0.3-status-v6
error: program 'git' failed with exit code 128
```
I also had to rewrite some logic in `nix/scripts/source.sh` in order to
take account of single-user and multi-user installations.
We default to multi-user for Darwin, but not for any other OS due to
discovered issues with `nix-daemon` socket on Arch and open file limits.
I also rewrote `nix/scripts/setup.sh` and `/nix/scripts/purge.sh` to support
different types of installations. Both single-user and multi-user, as some
operating systems have issues with multi-user installations.
Resolves: https://github.com/status-im/status-react/issues/12832
Depends on: https://github.com/status-im/status-jenkins-lib/pull/37
Related changes:
* https://github.com/status-im/infra-ci/commit/84947b9f
* https://github.com/status-im/infra-ci/commit/bb98f5f3
* https://github.com/status-im/infra-ci/commit/f75d524d
* https://github.com/status-im/infra-ci/commit/d1fc92cd
* https://github.com/status-im/infra-ci/commit/87c4091e
* https://github.com/status-im/infra-ci/commit/8d6b6b3f
* https://github.com/status-im/infra-ci/commit/c4f13285
* https://github.com/status-im/infra-ci/commit/38ac698d
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-04-11 12:26:54 +02:00
Roman Volosovskyi
aa72ac5747
[ #13016 ] Pass opensea key from env
...
Signed-off-by: andrey <motor4ik@gmail.com >
2022-03-21 13:59:35 +01:00
Churikova Tetiana
55915a9176
e2e: tx users
2022-03-07 22:17:39 +01:00
Churikova Tetiana
7f007f204f
exclude tx
2022-03-01 18:00:51 +01:00
Churikova Tetiana
04b7357646
e2e: fixes
...
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com >
2022-01-14 17:55:39 +01:00
jakub
525577ab17
ci: specify nix version via agent label
...
Will make it easier and safer to upgrade Nix on CI hosts.
Also added architecture since we are starting to mix those.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2022-01-12 18:21:28 +01:00
Churikova Tetiana
e5a30eaf1d
e2e: critical or high in prs
2022-01-10 15:19:26 +01:00
Churikova Tetiana
3499cdc123
e2e: update ci and made first group
2021-12-29 18:02:58 +01:00
jakub
a0430607d3
ci: specify macos host architecture in labels
...
Since now we have a 5th Gen Mac Mini with `arm64` M1 CPU.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-11-26 12:07:36 +01:00
jakub
8b055cd3c3
ci: fix macos host label for pod updates
...
Job: https://ci.status.im/job/status-react/job/tools/job/run-pod-repo-update
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-11-24 20:54:46 +01:00
jakub
79be879306
ci: upgrade library and use of pkgFilename()
...
Depends on: https://github.com/status-im/status-jenkins-lib/pull/36
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-09-28 21:25:34 +02:00
jakub
e2c18ea151
add commit hash to app metadata for Android and iOS
...
This will make identifying installed software easier.
It can also be used to generate F-Droid RPs more easily.
Depends on:
https://github.com/status-im/status-jenkins-lib/pull/35
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-09-21 11:48:45 +02:00
jakub
d4da8209cd
Revert "Remove fastlane metadata because no one use it"
...
Because as pointed out in this comment:
https://github.com/status-im/status-react/issues/12289#issuecomment-894008069
the lack of fastlane metadata makes F-Droid unable to find out things
like app description.
For more details see:
https://f-droid.org/en/docs/All_About_Descriptions_Graphics_and_Screenshots/#fastlane-structure
This reverts commit 3469aca1d8 .
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-08-12 19:28:20 +02:00
Andrea Maria Piana
45b9fd4b91
[ Fixes : #12607 ] Edit messages
...
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com >
2021-06-29 13:18:52 +02:00
jakub
f917782fc1
ci: allow for providing custom Nix cache hosts
...
This is part of my work of moving Nix cache to a separate host
because our Master host with jenkins needs more space.
Also, new Nix installer updated `.profile`, not `.bash_profile`.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-06-24 15:33:28 +02:00
jakub
a9601ddb86
ci: upgrade XCode 12.3 to 12.5
...
It's about time to upgrade, especially since `13.0` is near.
Related to: https://github.com/status-im/infra-ci/commit/2d63c1f3
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-06-18 15:10:53 +02:00
jakub
0652d18653
nix: upgrade nixpkgs, keep Go at 1.14.15
...
Notable software upgrades:
- Go `1.14.13` to `1.14.15`
- Clojure `1.10.1.763` to `1.10.3.855`
- NodeJS `12.20.1` to `12.22.1`
- Git `2.29.2` to `2.31.1`
- CMake `3.10.2` to `3.18.1`
- Curl `7.74.0` to `7.76.1`
- Android NDK `21.3.6528147` to `22.1.7171670`
- Android Platform Tools `30.0.5` to `31.0.2`
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-06-15 17:49:33 +02:00
jakub
c20d6b5782
ci: do no delete non-draft releases
...
We identified this issue in status-desktop release from branch
`release/0.1.0-beta.10` which had old version in VERSION file.
https://ci.status.im/job/status-desktop/job/release/job/release%252F0.1.0-beta.10/
Depends on: https://github.com/status-im/status-jenkins-lib/pull/28
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-06-08 09:19:36 +02:00
jakub
2b52ba2389
ci: fix folder name for the status.im CI job
...
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-06-08 09:19:28 +02:00
Churikova Tetiana
2618201bb3
ci: make e2e stage depends on publish param
...
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-05-12 20:42:30 +02:00
Volodymyr Kozieiev
3469aca1d8
Remove fastlane metadata because no one use it
...
Signed-off-by: Volodymyr Kozieiev <vkjr.sp@gmail.com >
2021-05-11 12:09:42 +03:00
jakub
dd0031f68e
ci: add PR numbers to filenames of artifacts
...
This is useful for QA team when they download multiple builds.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-05-02 22:19:03 +02:00
jakub
cf9f160de9
ci: nicer artifact filenames for release builds
...
Depends on: https://github.com/status-im/status-jenkins-lib/pull/24
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-04-28 17:25:39 +02:00
jakub
594c83013c
ci: upgrade jenkins lib to 1.2.12 to generalize GH release
...
This is required to also ad GitHub releases to `status-desktop`.
Also renamed `status-react-jenkins` to `status-jenkins-lib` for clarity.
Depends on: https://github.com/status-im/status-react-jenkins/pull/23
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-04-19 11:47:34 +02:00
jakub
2e94e0e765
ci: rename folder to match status-desktop naming
...
Part of re-organization related to release builds for desktop.
See:
- https://github.com/status-im/status-react/pull/11992
- https://ci.status.im/job/status-desktop/
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-04-19 11:47:25 +02:00
jakub
ef5031a4aa
ci: update Google Play JSON credential name
...
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-04-14 14:04:39 +02:00
jakub
ab7e9795ce
ci: use status-im-auto cred for e2e PR jobs
...
Trying to clean up duplicate credentials.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-04-14 13:50:22 +02:00
jakub
7eca3c42d7
ci: add Jenkinsfile for pod repo updates
...
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-04-14 13:48:00 +02:00
jakub
f0d79f3af0
ci: adjust behavior of PUBLISH to be true for releases
...
Otherwise release builds never create the GitHub draft releases.
Not unless a user explicitly stats a build with `PUBLISH: true`.
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-02-23 13:45:25 +01:00
jakub
d946d473c6
fastlane: use Apple Store Connect API for CI builds
...
Because our CI Apple account still has 2FA disabled in order for it to
be usable in Jenkin it is now failing with an error that seems unrelated
to 2FA.
The recommended way of doing Apple authentication for CI are App Store
Connect API JWTs. The API appears to support both pushing builds as well as
updating metadata and other tasks like refreshing of provisioning
profiles.
Fixes: https://github.com/status-im/status-react/issues/11713
Issue: https://github.com/fastlane/fastlane/issues/18098
Docs: https://docs.fastlane.tools/app-store-connect-api/
Signed-off-by: Jakub Sokołowski <jakub@status.im >
2021-02-04 15:10:07 +01:00
andrey
abac5247bf
RN 63 and xcode12
...
Signed-off-by: andrey <motor4ik@gmail.com >
2021-01-14 09:41:38 +01:00