Commit Graph

14 Commits

Author SHA1 Message Date
Michael Bradley, Jr c5f74ac2c0 build: use GitHub credentials when downloading bottles for macOS
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-04-16 10:52:06 -05:00
Jakub Sokołowski 0d136d8879 ci: add a combined Jenkinsfile for releases
This is part of a general restructuring in layout of Jenkins job folders
before we can properly introduce Release signing and notarization.
We need this to distinguish between pr/dev builds and release ones to
avoid signing the dev builds with a release certificate.

The meta job managed with `ci/Jenkinsfile.combined` runs a job for all 3
platforms and currently is quite basic, but in the future can be
extended to include - like the mobile one - updating the nightlies page,
or publishing draft GitHub releases.

The addition of `make check-pkg-target-*` steps to other `Jenkinsfile`s
is necessary because the sub-jobs under `platforms` have no option for
checking out Git submodules at the beginning, so I'm making use of how
the `Makefile` works and triggering that with a target that doesn't do much.

Example job:
https://ci.status.im/job/status-desktop/job/release/job/ci-meta-release-job/

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-04-14 15:36:00 -04:00
Jakub Sokołowski 06f24e90a2 ci: upgrade status-react-jenkins to 1.2.11
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-04-14 15:36:00 -04:00
Jakub Sokołowski cc6bf79d8c ci: lower number of artifacts kept to 3
Desktop builds are taking up a ridiculous amount of space.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2021-03-26 09:49:10 +01:00
Michael Bradley, Jr 10d82124fe refactor: embed Infura key at compile time
Allow environmental override at runtime. Also, in the Makefile set a free-tier
default token so that setting up an Infura account isn't strictly necessary for
community contributors to build the app, even though in our docs it should be
recommended they do so.

Core contributors should setup their own free-tier Infura account, create a
key, and set it in the environment variable INFURA_TOKEN in their environment
used to build the desktop app locally.

There is one aspect of this work that is incomplete. Ideally, in the handler
for the `login` event the relevant settings in the database should always be
updated with the resolved Infura key. However, when calling
`getSetting[string](Setting.Networks_Networks)` in the handler it causes a
segfault every time. Neither the reason for the crash nor a workaround have
been worked out at this time.
2020-12-09 12:10:12 -06:00
Jakub Sokołowski 6b3f9a31c2 lower number of artifacts to keep in CI to 10
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-11-24 21:00:52 +01:00
Jakub Sokołowski 4f81032f5e ci: provide INFURA_TOKEN to builds
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-11-05 11:19:13 -05:00
Jakub Sokołowski ef4c84afe1 ci: drop running make update, CI already fetches submodules
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-09-29 15:11:27 +02:00
Jakub Sokołowski 8717a86ff8 ci: upgrade jenkins library to v1.2.4
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-09-29 15:11:27 +02:00
Jakub Sokołowski 339afac117 ci: add result URL to build description
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-09-29 15:11:27 +02:00
Jakub Sokołowski 7d16216c3b add support for posting PR builds in GitHub comments
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-07-13 12:15:02 +02:00
Jakub Sokołowski 3a6655f8f3
ci: bump timeouts from 10 to 15 minutes
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-07-02 18:35:24 +02:00
Jakub Sokołowski 6683313c83 fix QTDIR paths for CI
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-07-02 10:48:32 +02:00
Jakub Sokołowski 85a3557f1e add Jenkinsfiles and Dockerfile for CI
Changes:
- Adds `ci/Dockerfile` for creating `statusteam/nim-status-client-build:latest` used in builds
- Adds `ci/Jenkinsfile.linux` and `ci/Jenkinsfile.macos` for respective platforms
- Simplifies MacOS signing by adding `scripts/sign-macos-pkg.sh` script
- Makes `Makefile` use `scripts/sign-macos-pkg.sh` to make the DMG
- Makes `APPIMAGE` and `DMG` in `Makefile` modifiable by environment
- Adds `--passL:"-headerpad_max_install_names"` to `NIM_PARAMS` to fix MacOS signing issues

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2020-07-01 22:06:37 +02:00