Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

testing: new release on 2022-09-19 (36.20220918.2.2) #559

Closed
34 tasks done
cverna opened this issue Sep 7, 2022 · 7 comments
Closed
34 tasks done

testing: new release on 2022-09-19 (36.20220918.2.2) #559

cverna opened this issue Sep 7, 2022 · 7 comments

Comments

@cverna
Copy link
Member

cverna commented Sep 7, 2022

First, verify that you meet all the prerequisites

Edit the issue title to include today's date. Once the pipeline spits out the new version ID, you can append it to the title e.g. (31.20191117.2.0).

Pre-release

Promote testing-devel changes to testing

Manual alternative

Sometimes you need to run the process manually like if you need to add an extra commit to change something in manifest.yaml. The steps for this are:

Build

  • Start a build job (select testing, leave all other defaults). This will automatically run multi-arch builds.
  • Post links to the jobs as a comment to this issue
  • Wait for the jobs to finish and succeed
    • x86_64
    • aarch64
    • s390x

Sanity-check the build

Using the the build browser for the testing stream:

  • Verify that the parent commit and version match the previous testing release (in the future, we'll want to integrate this check in the release job)
    • x86_64
    • aarch64
    • s390x
  • Check kola AWS runs to make sure they didn't fail
    • x86_64
    • aarch64
  • Check kola OpenStack runs to make sure they didn't fail
    • x86_64
    • aarch64
  • Check kola Azure run to make sure it didn't fail
  • Check kola GCP run to make sure it didn't fail

⚠️ Release ⚠️

IMPORTANT: this is the point of no return here. Once the OSTree commit is
imported into the unified repo, any machine that manually runs rpm-ostree upgrade will have the new update.

Run the release job

  • Run the release job, filling in for parameters testing and the new version ID
  • Post a link to the job as a comment to this issue
  • Wait for job to finish

At this point, Cincinnati will see the new release on its next refresh and create a corresponding node in the graph without edges pointing to it yet.

Refresh metadata (stream and updates)

  • Wait for all releases that will be released simultaneously to reach this step in the process
  • Go to the rollout workflow, click "Run workflow", and fill out the form
Manual alternative
  • Make sure your fedora-coreos-stream-generator binary is up-to-date.

From a checkout of this repo:

  • Update stream metadata, by running:
fedora-coreos-stream-generator -releases=https://fcos-builds.s3.amazonaws.com/prod/streams/testing/releases.json  -output-file=streams/testing.json -pretty-print
  • Add a rollout. For example, for a 48-hour rollout starting at 10 AM ET the same day, run:
./rollout.py add testing <version> "10 am ET today" 48
  • Commit the changes and open a PR against the repo
  • Verify that the PR contains the expected OS versions
  • Post a link to the resulting PR as a comment to this issue
  • Review and approve the PR, then wait for someone else to approve it also
  • Once approved, merge it and verify that the sync-stream-metadata job syncs the contents to S3
  • Verify the new version shows up on the download page
  • Verify the incoming edges are showing up in the update graph.
Update graph manual check
curl -H 'Accept: application/json' 'https://updates.coreos.fedoraproject.org/v1/graph?basearch=x86_64&stream=testing&rollout_wariness=0'
curl -H 'Accept: application/json' 'https://updates.coreos.fedoraproject.org/v1/graph?basearch=aarch64&stream=testing&rollout_wariness=0'
curl -H 'Accept: application/json' 'https://updates.coreos.fedoraproject.org/v1/graph?basearch=s390x&stream=testing&rollout_wariness=0'

NOTE: In the future, most of these steps will be automated.

Housekeeping

  • If one doesn't already exist, open an issue in this repo for the next release in this stream. Use the approximate date of the release in the title.
  • Issues opened via the previous link will automatically create a linked Jira card. Assign the GitHub issue and Jira card to the next person in the rotation.
@dustymabe
Copy link
Member

For the releases this cycle let's continue to skip ppc64le. Remove it from the list of arches for the build job when you kick it off. Context: coreos/fedora-coreos-tracker#987 (comment)

@prestist
Copy link
Contributor

prestist commented Sep 19, 2022

Build:
x86 https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build/255/
aarch: https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build-arch/315/ "I thought it failed so I rebuilt it..."
2nd: https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build-arch/323/
3rd: https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build-arch/334/
4th: https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build-arch/351/
390x: https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build-arch/316/
2nd: https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build-arch/324/

390x .. https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build-arch/349/

14:43:41 + cosa remote-session create --image quay.io/coreos-assembler/coreos-assembler:main --expiration 4h
14:43:41 notice: failed to look up uid in /etc/passwd; enabling workaround
14:43:41 Cannot connect to Podman. Please verify your connection to the Linux system using podman system connection list, or try podman machine init and podman machine start to manage a new Linux VM
14:43:41 Error: unable to connect to Podman. failed to create sshClient: connection to bastion host (ssh://builder@/run/user//podman/podman.sock) failed: ssh: handshake failed: EOF
14:43:41 Error: exit status 125
14:43:41 Usage:

390x seems to be working now.

Ok after speaking with @bgilbert just to make sure I dont have any conflicting builds, I am going to kick off the build process from the top again.

Clean slate start: https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build/271 (I accidently included ppc64le..) doing another clean slate, incrementing the 'z'.

x86 https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/build/275/

@dustymabe dustymabe changed the title testing: new release on 2022-09-19 testing: new release on 2022-09-19 (36.20220918.2.2) Sep 22, 2022
@dustymabe
Copy link
Member

@dustymabe
Copy link
Member

dustymabe commented Sep 22, 2022

AWS Azure GCP OpenStack
x86_64 ✔️ ✔️ ✔️ ✔️
aarch64 ✔️, ✔️,

First OpenStack aarch64 failed in test setup (Infra flake?).
First AWS aarch64 failed with a test timeout, but the re-run passed (Infra flake?).

@prestist
Copy link
Contributor

Ok all green, proceeding with release build : https://jenkins-fedora-coreos-pipeline.apps.ocp.fedoraproject.org/job/release/119/

@prestist
Copy link
Contributor

Rollout pr #564

@prestist
Copy link
Contributor

Released 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants