Check if the Sumo internal e2e tests are passing.
We can begin the process of creating a release once QE has given a thumbs up for a given package version and the collector release steps have already been performed. We can determine the Workflow Run ID to use for a release using the following steps:
Each package has a build number and it's included in the package version & filename. For example, if the package version that QE validates is 0.108.0-1790 then the build number is 1790.
We can find the workflow used to build the packages by using the package build number.
The build number corresponds directly to the GitHub Run Number for a packaging workflow run in GitHub Actions. Unfortunately, there does not currently appear to be a way to reference a workflow run using the run number. Instead, we can use one of two methods to find the workflow run:
PAGER=""; BUILD_NUMBER="1790"; \
gh run list -R sumologic/sumologic-otel-collector-packaging -s success \
-w build_packages.yml -L 200 -b main --json displayTitle,databaseId,number,url \
-q ".[] | select(.number == ${BUILD_NUMBER})"
This will output a number of fields, for example:
{
"databaseId": 11673248730,
"displayTitle": "Build for Remote Workflow: 11672946742, Version: 0.108.0-sumo-1\n",
"number": 1790,
"url": "https://github.com/SumoLogic/sumologic-otel-collector-packaging/actions/runs/11673248730"
}
The number in the databaseId
field is the ID for the workflow run that built
the packages.
The workflow run can be viewed by visiting the URL in the url
field.
Manually search for the run number on the Build packages workflow page. Search for the build number (e.g. 1790) until you find the corresponding workflow.
Once you've found the packaging workflow run, click it to navigate to the details of the workflow run. The Workflow Run ID can be found in the last part of the URL in the address bar:
Now that we have the Workflow Run ID we can trigger a release. There are two methods of doing this.
A release can be triggered by using the following command (be sure to replace
WORKFLOW_ID
with the Workflow Run ID from the previous step):
PAGER=""; WORKFLOW_ID="11673248730"; \
gh workflow run build_packages.yml \
-R sumologic/sumologic-otel-collector-packaging -f workflow_id=${WORKFLOW_ID}
The status of running workflows can be viewed with the gh run watch
command.
You will have to manually select the correct workflow run. The name of the run
should have a title similiar to Publish Release for Workflow: x
). Once you
have selected the correct run the screen will periodically update to show the
status of the run's jobs.
Navigate to the Publish release workflow in GitHub Actions.
Find and click the Run workflow
button on the right-hand side of the page.
Fill in the Workflow Run ID from the previous step. If the release should be
considered to be the latest version, click the checkbox for Latest version
.
Click the Run workflow
button to trigger the release.
![Triggering a release][release_2]
The GitHub release is created as draft by the releases GitHub Action.
After the release draft is created, go to GitHub releases, edit the release draft and fill in missing information:
- Specify versions for upstream OT core and contrib releases
- Copy and paste the Changelog entry for this release from CHANGELOG.md
After verifying that the release text and all links are good, publish the release.