Commit Graph

88 Commits

Author SHA1 Message Date
Jakub Sokołowski 0b8c673094
ci: fix iOS signing, use same keychain name
Using different temporary keychains does not work if we do not set
`default_keychain=true`, because `codesign` then can't find the cert:
```
error: No signing certificate "iOS Distribution" found: No "iOS Distribution" signing certificate matching team ID
```
But if we set `default_keychain=true` then we cause a race condition
when the keychain is deleted by a parallel job while another is using it
as its default.

For this reason we have to use a static keychain name and keep it
between builds.

I tried disabling `default_keychain=true` in #11378 but it worked only
because the default user keychain already had the cert.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2020-11-17 10:16:32 +01:00
Jakub Sokołowski 34c6292af4
fastlane: disable default_keychain to avoid race condition
If we run parallel job and a job sets a temporary keychain into a
default than another job can assume that is the user default.

The result is that one of the jobs will attempt to set a non-existent
temporary keychain into the default keychain.

This happens when we call `Fastlane::Actions::DeleteKeychainAction`:
https://github.com/fastlane/fastlane/blob/2.164.0/fastlane/lib/fastlane/actions/delete_keychain.rb#L21

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-11-05 16:09:32 +01:00
Jakub Sokołowski 3b780f4ff2
fastlane: Create temporary Keychain for iOS signing
This is a new approach to signing the iOS app by using a temporary
Keychain created only for that specific build and unlocked in advance.

By doing it this way we can avoid issues with `errSecInternalComponent`
appearing when there is no UI to open a Keychain password prompt when
running build in CI. I've described this problem in details in:
https://github.com/fastlane/fastlane/issues/15185

Thanks to `codesign:` partition ID being added to key partition list by
Fastlane `match` when importing a Keychain this approach now works:
https://github.com/fastlane/fastlane/pull/17456

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-11-03 00:03:38 +01:00
Jakub Sokołowski 250b4d4646
upgrade fastlane 2.154.0 to 2.164.0
It's been a while and a fix for an issue I've reported a long time ago
has been merged in https://github.com/fastlane/fastlane/pull/17456. With
this fix we should see less iOS signing issues appearing as `errSecInternalComponent`.

This should also enable me to try a fix I proposed in
https://github.com/fastlane/fastlane/issues/15185 which consists of
creating a temporary unlocked keychain for each build.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-10-22 12:42:52 +02:00
jinhojang6 094cf61915
Update Spanish Playstore title and description
Signed-off-by: Churikova Tetiana <churikova.tm@gmail.com>
2020-10-13 14:14:08 +02:00
Jakub Sokołowski 7c0488372d
upgrade Gems, Fastlane from 2.146.1 to 2.154.0
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-08-04 09:25:52 +02:00
Jakub Sokołowski 84286782f6
bump status-react-jenkins to 1.2.0
This updates a bunch of things in the Jenkins logic.
For details of that see:
https://github.com/status-im/status-react-jenkins/pull/12

It grew out of the changes I made to make PR builds available in Desktop client:
https://github.com/status-im/nim-status-client/pull/507

Changes:
- Bump `status-react-jenkins` library to newer version, probably `1.2.0`
- Update use of `utils.pkgFilename()` in `ci/Jenkinsfile.combined`
- Make all iOS builds go into the same folder: `status-ios`
- Drop e2e build type, infer it from Android ABIs set to `x86` only
- Simplify logic in `nix/mobile/android/release.nix.`

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-07-13 12:13:47 +02:00
Gheorghe Pinzaru d916751160
Add PR Scheme for iOs build
Build PR Scheme in PR build

use named parameters, use pr_build boolean

Signed-off-by: Jakub Sokołowski <jakub@status.im>

Enable capabilities

Signed-off-by: Jakub Sokołowski <jakub@status.im>

Add custom app icon

Remove user defined profile

Add PR scheme

Explicit provide provisioning profiles

Fix pr schema

Bump jenkins

Pod bump

Describe pr_build argument

Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
2020-06-29 16:16:35 +03:00
Jakub Sokołowski a8fa78dad3
fix names of translations for Play Store metadata
Source for names:
https://stackoverflow.com/questions/7973023/what-is-the-list-of-supported-languages-locales-on-android

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-06-02 20:03:38 +02:00
Jakub Sokołowski 22d0fed3fc
fix android icon.png to use RGBA instead of indexed colors
This caused an error on Play Store metadata update:
Google Api Error: invalidIconImage: Invalid icon image.

And the issue was using color space:
Indexed color (77 colors)

Instead of:
RGBA

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-06-02 19:22:14 +02:00
Serhy c68f734b98
Fixed typo
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2020-05-21 15:32:11 +02:00
jinhojang6 c9fc00bfd8
Add Play Store translations 2020-05-21 15:32:03 +02:00
André Medeiros 41bba3b2c8
Update play store icon and feature graphic (#10592) 2020-05-07 11:49:55 -04:00
Jakub Sokołowski 3ae5f87be3
ci: add Jenkinsfile for updating Play Store metadata
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-05 19:40:45 +02:00
Jakub Sokołowski c6b1217437
fastlane: upgrade 2.146.0 > 2.146.1
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-05-05 19:40:36 +02:00
André Medeiros 44b77eea89
Fix Google Play store listing (#10564) 2020-05-04 19:55:49 -04:00
Jakub Sokołowski eb194acce6
upgrade fastlane and plugins
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-04-22 11:57:29 +02:00
Jakub Sokołowski 1ea49a80fc
rename get.status.im to join.status.im
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-02-11 18:09:21 +01:00
Jakub Sokołowski 128f44f58b
fastlane: disable oldest_build_allowed for TestFlight clean
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-01-29 15:58:17 +01:00
Jakub Sokołowski 0c93451188
fastlane: upgrade fastlane-plugin-diawi to 1.4.0
before we used the same version but from our own fork

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-01-23 10:06:56 +01:00
Jakub Sokołowski a02a0429c3
fastlane: use our fork of fastlane-plugin-diawi
With it we can set last_hope_attempts_backoff to 5 seconds.
This should fix issues with upload wait timing out.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-01-21 21:18:16 +01:00
Jakub Sokołowski 08247391ad
disable waiting for iOS build processing on upload
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-01-20 23:27:18 +01:00
Jakub Sokołowski 8d85995b33 upgrade fastlane: 2.133.0 > 2.139.0
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-01-08 16:22:55 +01:00
Pedro Pombeiro 7e6caf03ad
nix: Use mkFilter in local status-go source
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-11-26 18:34:46 +01:00
Jakub Sokołowski b32dd113f6
nix: upgrade nixpkgs
Also:
- upgrade Go: 1.12 > 1.13
- upgrade Android SDK: 28.0.3 > 29.0.2
- nix: stop using system Fastlane for iOS builds
- nix: include CocoaPods in shell for iOS
- nix: concatenate shellHooks correctly
- fix gomobile status-go build by setting GO111MODULE=off
- fix gradle accepting empty STATUS_GO_SRC_OVERRIDE value
- don't use a pure shell for uploadToSauceLabs()

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-11-26 16:30:41 +01:00
Jakub Sokołowski 684630e022
don't load Pluginfile twice
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-11-26 16:30:21 +01:00
Jakub Sokołowski b8d3ef3aa5
combined node package upgrade prs
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-10-17 12:43:17 +02:00
snyk-bot a7c9329df5
fix: fastlane/Gemfile & fastlane/Gemfile.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-RUBYZIP-469156

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-09-30 14:15:35 +02:00
Jakub Sokołowski 973623f4c8
build multiple APKs for different architectures
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-09-30 13:59:42 +02:00
Pedro Pombeiro 97e9f0daa1
nix: Update fastlane Gemset
Signed-off-by: yenda <eric@status.im>
2019-09-23 14:05:57 +02:00
Pedro Pombeiro 51dd7af5f8
Use modern build system for iOS 2019-09-23 09:12:22 +02:00
Jakub Sokołowski 82576cd050
upgrade fastlane: 2.128.0 > 2.130.0
Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: yenda <eric@status.im>
2019-09-05 10:56:36 +02:00
snyk-test f464269263
fix: fastlane/Gemfile & fastlane/Gemfile.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-RUBY-MINIMAGICK-451567

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-08-05 09:44:51 -04:00
Pedro Pombeiro acf6278383
nix: Use nix/build.sh for release-android make target
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-07-26 16:01:06 -04:00
Pedro Pombeiro f6527f014e
nix: Improve some expressions 2019-07-19 20:59:16 +02:00
Jakub Sokołowski 158f9b4938
fix release builds by renaming .env.prod to .env.release
This way the nix expression in nix/mobile/android/targets/release-android.nix will not fail.
And the naming of build types and `.env.${type}` files will be more consistent.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-07-17 10:39:53 -04:00
Pedro Pombeiro a7fd659d84
nix: Wrap gradle, npm packages, `lein prod-build` and `gradle assembleRelease` in Nix expressions to improve reproducible builds with constant build paths 2019-07-15 16:08:02 +02:00
Jakub Sokołowski 33840b7b84
use nix shell for running fastlane ios clean
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-06-18 10:09:33 -04:00
Jakub Sokołowski c26572653f
upgrade fastlane: 2.121.1 > 2.125.2
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-06-15 09:56:18 -04:00
Serhy c6a389b75b
Update Play Store phone screenshots
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-05-29 17:18:36 +02:00
Serhy 3799df77cc
Remove LightClient note from PlayStore
Signed-off-by: Serhy <sergii@status.im>
2019-05-21 12:38:55 +03:00
Jakub Sokołowski 0e8e5a51ba
refactor nix_sh to give it optional Map arguments
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-05-14 16:06:16 +02:00
Pedro Pombeiro cc009a3c2c
nix: Minor cleanup of fastlane expression
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-05-09 18:33:40 +02:00
Pedro Pombeiro 9d1e266145
Use fastlane Nix package instead of ruby/bundler for Android
- iOS still has issues with native Ruby dependencies

Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-05-06 11:57:12 +02:00
Igor Mandrigin aea761f314
workaround issue with building iOS release builds
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-04-26 16:04:29 +02:00
Jakub Sokołowski 3774a0845a
add diawi upload retries
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-04-26 10:29:12 +02:00
Jakub Sokołowski 1d00e9bb3d
change App ID for PRs on Android to avoid replacing release
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-04-10 11:49:40 +02:00
Pedro Pombeiro 65e6e80349
Create Nix package for building status-go 2019-04-09 12:44:39 +02:00
Jakub Sokołowski c2fc510c8e
use auto@status.im Apple account for signing app
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-04-05 10:48:17 +02:00
Jakub Sokołowski 664162dd68
implement a custom retry for curl uploads
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-03-25 10:17:21 +01:00