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

Improve changelog lint behavior for release branches #29721

Closed
9 tasks
chloeYue opened this issue Jan 15, 2025 · 2 comments
Closed
9 tasks

Improve changelog lint behavior for release branches #29721

chloeYue opened this issue Jan 15, 2025 · 2 comments
Assignees

Comments

@chloeYue
Copy link
Contributor

chloeYue commented Jan 15, 2025

What is this about?

When we automatically cut a release branch, update the changelog, and open a release PR, build on the PR branch fails because the automatically updated changelog file labels all types of changes as Uncategorized. Since our changelog lint check does not accept Uncategorized entries, the lint check fails on the release PR, blocking the build from being generated. This forces us to manually create a PR like this to fix the changelog and unblock the build.

To address this issue, I discussed it with @danjm, and we decided not take the approach to automatically marking all changes as "fixed." The reason is that we still want to be reminded that the changelog does not pass linting and adjustments are needed.

The agreed approach is:

  • For regular branches, a failure in the changelog lint job will block the pipeline.

  • For release branches (branches starting with Version-v), the changelog lint job will:
    Fail and be marked as red in the UI for visibility.
    Not block the pipeline, allowing builds to be generated despite the lint failure.

This solution ensures checking for regular branches while providing flexibility for release branches.

Scenario

No response

Design

No response

Technical Details

No response

Threat Modeling Framework

No response

Acceptance Criteria

No response

Stakeholder review needed before the work gets merged

  • Engineering (needed in most cases)
  • Design
  • Product
  • QA (automation tests are required to pass before merging PRs but not all changes are covered by automation tests - please review if QA is needed beyond automation tests)
  • Security
  • Legal
  • Marketing
  • Management (please specify)
  • Other (please specify)

References

No response

@chloeYue chloeYue self-assigned this Jan 15, 2025
@chloeYue chloeYue changed the title Improve Changelog Lint Behavior for Release Branches Improve changelog lint behavior for release branches Jan 15, 2025
@chloeYue
Copy link
Contributor Author

chloeYue commented Jan 20, 2025

To test the current behavior, I intentionally introduced a changelog lint error in the following scenarios:
Release Branch (starts with Version-v), and regular branch. (see #29796 and #29797)

The changelog lint jobs failed as expected and were marked as red in the UI.
Despite the failure, builds were successfully generated, confirming that the changelog lint failure does not block the pipeline to generate builds on bothe release branch and no-release branch.

Reason why the behaviour has changed:
These jobs have been moved from CircleCI to GitHub Actions, generate builds job now depends only on the wait-for-circleci-workflow-status job, which depends on all tests execution on CircleCI.
If tests pass but the changelog lint job fails, builds are still generated, allowing us to test and proceed as intended.
if tests fail, builds are not generated, ensuring the overall integrity of the release process.

Decision:
Given these findings, I believe the implemented change to move jobs to github actions is functioning as expected, and it is safe to close this ticket.

tag @danjm for visibility

@Gudahtt
Copy link
Member

Gudahtt commented Jan 28, 2025

Agreed that this is solved by the GItHub actions migration

@Gudahtt Gudahtt closed this as completed Jan 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants