.. SPDX-FileCopyrightText: 2021 Open Networking Foundation .. SPDX-License-Identifier: Apache-2.0 Release Process =============== Release artifacts ----------------- There will be 4 major artifacts produced as the result of release process. - **SD-Fabric Docker image** - This includes all control plane software - **Stratum Docker image** - This includes Stratum switch OS - **SD-Fabric Helm charts** - **SD-Fabric documentation** - The website you are currently viewing Prerequisite ------------ SD-Fabric releases are guarded by our system integration tests. Before each release, we check the test result and make sure we have a "green light". Visit :ref:`testing_guide` for more details. Stratum Docker image -------------------- Stratum has its own release process and release timeline. We request Stratum TST to make a release when necessary. SD-Fabric Docker Image ---------------------- We tag and release the following repositories in order: - onos: - Run Jenkins release job: https://jenkins.onosproject.org/view/onos-release/job/onos-bazel-release-build/ - Manually publish artifacts to Maven central: https://oss.sonatype.org/ - trellis-control: - Run Jenkins artifact release job: https://jenkins.onosproject.org/view/SD-Fabric/job/artifact-release_sdfabric-onos/ : - Exclude ``pom.xml(s)`` through ``egrepExclude`` variable - Update ``pom.xml(s)`` in the first review generated by the job: - Update dependencies (use non-snapshot onos) - Update version - Push Gerrit change, merge - Wait for Jenkins job to publish artifacts (https://jenkins.onosproject.org/view/Trellis/job/maven-publish_trellis-control) - Manually release artifacts: https://oss.sonatype.org/ - Merge the second review generated by the job - fabric-tna: - Update ``pom.xml``: - Update dependencies (use non-snapshot ``onos`` and ``trellis-control``) - Update version - Tag repository - Create a second pull request to start a new development cycle - up4: - Update ``pom.xml(s)``: - Update dependencies (use non-snapshot onos) - Update version - Tag repository - Create a second pull request to start a new development cycle - SD-Fabric image: - Update Makefile.stable with git tags used above - Merge, wait for Jenkins to publish stable image - Manually tag image on Dockerhub SD-Fabric Helm charts --------------------- The SD-Fabric umbrella chart includes 5 sub-charts: - ONOS classic - Stratum - PFCP agent - DBUF - INT host reporter To update each sub-charts: - Update chart version and default image in each charts - Post-merge CI job will tag the repositories according to chart version To update the umbrella charts: - Update chart version and dependencies in ``sdfabric-helm-charts/sdfabric/Chart.yaml`` - Post-merge CI job will tag the repositories according to chart version SD-Fabric documentation ----------------------- - Complete release note - Tag documentation repository for each release - Branch documentation repository for each major releases