mirror of
https://github.com/logos-messaging/logos-messaging-nim.git
synced 2026-01-02 22:13:07 +00:00
1.6 KiB
1.6 KiB
Description
This document describes the continuous integration setup for nim-waku.
Details
The CI setup exists on the Status.im Jenkins instance:
https://ci.infra.status.im/job/nim-waku/
It currently consists of four jobs:
- manual - For manually executing builds using parameters.
- deploy-wakuv1-test - Builds every new commit in
masterand deploys towakuv1.testfleet. - deploy-wakuv2-test - Builds every new commit in
masterand deploys towakuv2.testfleet. - deploy-wakuv2-prod - Currently has no automatic trigger, and deploys to
wakuv2.prodfleet.
Configuration
The main configuration file is Jenkinsfile.release in the ci folder.
Key part is the definition of five parameters:
MAKE_TARGET- WhichMakefiletarget is built.IMAGE_TAG- Tag of the Docker image to push.IMAGE_NAME- Name of the Docker image to push.NIMFLAGS- Nim compilation parameters.GIT_REF- Git reference to build from (branch, tag, commit...)
The use of ?: Elvis operator plays a key role in allowing parameters to be changed for each defined job in Jenkins without it being overridden by the Jenkinsfile defaults after every job run.
defaultValue: params.IMAGE_TAG ?: 'deploy-wakuv2-test',