-
Notifications
You must be signed in to change notification settings - Fork 0
Release process and steps
- https://server.jenkins.couchbase.com/job/build-from-manifest-new
- MANIFEST: couchbase-lite-ios/ (.xml) (see list https://github.com/couchbase/manifest/tree/master/couchbase-lite-ios)
FORCE yes
TRIGGER_BLACKDUCK yes
Depending on version (3.0 or 3.1+), the above will launch a series of Jenkins jobs.
-
3.0 (Lithium) https://mobile.jenkins.couchbase.com/job/couchbase-lite-ios-edition-build-old/ Note: it is the same for ObjC and Swift
-
3.1+ (Helium+)
-
Make sure that couchbase-lite-ios-testapp is green.
- Run
staging-e2e-test-iosfrom http://jenkins.mobiledev.couchbase.com
- https://latestbuilds.service.couchbase.com/builds/latestbuilds/couchbase-lite-ios/ - grab your specific build (by version first and then by build number). This should be the exact same as the one the Jenkins was run for.
4. QE will have to validate all the platforms RCs before it is going up to build team. In case there is an issue on the QE side, assist them.
- https://mobile.jenkins.couchbase.com/job/lite-ios-cocoapods-publish/
- The build team makes use of the podspecs from ios-ee.
For users to build from source via Cocoapods a PR will be automatically raised by build team to update CE podspecs, after publish - more info here
- https://mobile.jenkins.couchbase.com/job/couchbase-lite-ios-carthage-build/
- This is automatically triggered by another job and is running https://github.com/couchbaselabs/couchbase-lite-ios-ee/blob/master/Scripts/generate_carthage_package.sh Engineer should solve/assist if any problems arise.
Update url and checksum in Package.swift. You can generate the checksum by running swift package compute-checksum /path/to/.zip. It needs to be done for:
1. Community Edition 4.0+ or Community Edition 3.x - GHA validated.
2. Enterprise Edition - GHA validated.
3. Not always, Vector Search - Validation will be done in next step.
Run this pipeline http://jenkins.mobiledev.couchbase.com/job/validate-ios/ Will validate for each release method iOS has, currently 4. A job for each.
TL;DR for Engineer:
- Create an RC build via https://server.jenkins.couchbase.com/job/build-from-manifest-new
- Run
staging-e2e-test-iosfrom http://jenkins.mobiledev.couchbase.com for the above build and hand it to QE. - Assist Build team if any Jenkins job fails on the publishing side of things.
- Verify the release via http://jenkins.mobiledev.couchbase.com/job/validate-ios/.
- Tag the release.
- Bump up manifest via Gerrit.