| .. SPDX-FileCopyrightText: 2021 Open Networking Foundation <info@opennetworking.org> |
| .. 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 |