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

Small PR for testing merge queue #38

Merged
merged 3 commits into from
Aug 10, 2023
Merged

Small PR for testing merge queue #38

merged 3 commits into from
Aug 10, 2023

Conversation

blampe
Copy link
Collaborator

@blampe blampe commented Aug 9, 2023

This mostly a dummy PR we can try landing while merge queues are
enabled (and Bors is disabled) to confirm everything works as expected.

I needed to tweak the PR job slightly to emit a dummy "Publish OK" step. This is a no-op on PRs but still performs the publish when run in the queue.

Branch protection settings have been updated to no longer restrict merging to Bors, with these settings:
Screenshot 2023-08-10 at 3 21 59 PM

Screenshot 2023-08-10 at 3 19 56 PM

After all the checks pass, the merge button looks like this:
Screenshot 2023-08-10 at 3 46 31 PM

Merging will enqueue a squashed commit.

@blampe
Copy link
Collaborator Author

blampe commented Aug 9, 2023

Current dependencies on/for this PR:

This comment was auto-generated by Graphite.

@blampe blampe added the impact/no-changelog-required This issue doesn't require a CHANGELOG update label Aug 9, 2023
Base automatically changed from merge-queues to main August 10, 2023 22:06
@github-actions
Copy link

Changelog

n/a

@blampe blampe changed the title No-op for testing merge queue Small PR for testing merge queue Aug 10, 2023
Comment on lines +19 to +37
build-ok:
name: Build OK
needs: [lint, unit-test]
runs-on: ubuntu-latest
steps:
- run: echo OK

test-ok:
name: Test OK
needs: [unit-test]
runs-on: ubuntu-latest
steps:
- run: echo OK

publish-ok:
name: Publish OK
runs-on: ubuntu-latest
steps:
- run: echo "No-op on PRs to satisfy branch checks"
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are the same steps Bors is enforcing (via bors.toml).

Enforcement is now done via GitHub's repo settings, so we now require them on PRs as well as merge queues. Hence, we re-define them on the PR workflow and no-op where appropriate.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ack. We'll probably want to manage the repo settings in a checked-in-place (perhaps via an IaC solution of some kind 🤔) for Real projects.

Comment on lines +19 to +37
build-ok:
name: Build OK
needs: [lint, unit-test]
runs-on: ubuntu-latest
steps:
- run: echo OK

test-ok:
name: Test OK
needs: [unit-test]
runs-on: ubuntu-latest
steps:
- run: echo OK

publish-ok:
name: Publish OK
runs-on: ubuntu-latest
steps:
- run: echo "No-op on PRs to satisfy branch checks"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ack. We'll probably want to manage the repo settings in a checked-in-place (perhaps via an IaC solution of some kind 🤔) for Real projects.

@blampe blampe added this pull request to the merge queue Aug 10, 2023
Merged via the queue into main with commit 365de9d Aug 10, 2023
12 checks passed
@blampe blampe deleted the test-pr branch August 10, 2023 23:55
@blampe blampe mentioned this pull request Aug 11, 2023
14 tasks
github-merge-queue bot pushed a commit to pulumi/pulumi that referenced this pull request Aug 12, 2023
# Description

This PR removes Bors in favor of native GitHub merge queues. A very
similar
cutover was tested and verified in
pulumi/watchutil-rs#39.

# Deployment plan

* [x] Find some time where PRs aren't being merged. This is mostly to
minimize confusion
  while we're futzing with branch protections. 
* [x] Update the repo's branch protection rules to match
  pulumi/watchutil-rs#38:
* "Allow specified actors to bypass required pull requests": "bors" →
Unchecked
    * "Status checks that are required": "bors" → "ci-ok"
    * "Require merge queue": Unchecked → Checked
        * "Only merge non-failing pull requests" → Unchecked
        * "Merge method" → Squash and merge
* [ ] Merge this PR using the "Merge when ready" button.
* [ ] If it merges successfully: confirm the prepare-release step ran
and published
      pre-release artifacts.
* [ ] If the merge fails: it's possible we'll need to tweak steps
slightly
(e.g. if the step's name doesn't match the branch protection rule). The
      end goal is a "ci-ok" step in both the PR and merge workflows that
      captures whether everything is green.
* [ ] If the issues aren't immediately resolvable, revert the changes
made
to branch protection settings. Folks will continue to merge with
          Bors.

If all goes well, we should be able to continue merging with MQ for a
while --
at least long enough to cut a new CLI release. Once we're confident we
won't
need to roll back:
* [ ] Delete branch protection rules for:
    * staging
    * testing
* [ ] Remove pu/pu from https://app.bors.tech/repositories

Fixes #13501

## Checklist

- [ ] I have run `make tidy` to update any new dependencies
- [ ] I have run `make lint` to verify my code passes the lint check
  - [ ] I have formatted my code using `gofumpt`

<!--- Please provide details if the checkbox below is to be left
unchecked. -->
- [ ] I have added tests that prove my fix is effective or that my
feature works
<!---
User-facing changes require a CHANGELOG entry.
-->
- [ ] I have run `make changelog` and committed the
`changelog/pending/<file>` documenting my change
<!--
If the change(s) in this PR is a modification of an existing call to the
Pulumi Cloud,
then the service should honor older versions of the CLI where this
change would not exist.
You must then bump the API version in
/pkg/backend/httpstate/client/api.go, as well as add
it to the service.
-->
- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi
Cloud API version
<!-- @pulumi employees: If yes, you must submit corresponding changes in
the service repo. -->
github-merge-queue bot pushed a commit to pulumi/pulumi that referenced this pull request Aug 12, 2023
# Description

This PR removes Bors in favor of native GitHub merge queues. A very
similar
cutover was tested and verified in
pulumi/watchutil-rs#39.

# Deployment plan

* [x] Find some time where PRs aren't being merged. This is mostly to
minimize confusion
  while we're futzing with branch protections. 
* [x] Update the repo's branch protection rules to match
  pulumi/watchutil-rs#38:
* "Allow specified actors to bypass required pull requests": "bors" →
Unchecked
    * "Status checks that are required": "bors" → "ci-ok"
    * "Require merge queue": Unchecked → Checked
        * "Only merge non-failing pull requests" → Unchecked
        * "Merge method" → Squash and merge
* [ ] Merge this PR using the "Merge when ready" button.
* [ ] If it merges successfully: confirm the prepare-release step ran
and published
      pre-release artifacts.
* [ ] If the merge fails: it's possible we'll need to tweak steps
slightly
(e.g. if the step's name doesn't match the branch protection rule). The
      end goal is a "ci-ok" step in both the PR and merge workflows that
      captures whether everything is green.
* [ ] If the issues aren't immediately resolvable, revert the changes
made
to branch protection settings. Folks will continue to merge with
          Bors.

If all goes well, we should be able to continue merging with MQ for a
while --
at least long enough to cut a new CLI release. Once we're confident we
won't
need to roll back:
* [ ] Delete branch protection rules for:
    * staging
    * testing
* [ ] Remove pu/pu from https://app.bors.tech/repositories

Fixes #13501

## Checklist

- [ ] I have run `make tidy` to update any new dependencies
- [ ] I have run `make lint` to verify my code passes the lint check
  - [ ] I have formatted my code using `gofumpt`

<!--- Please provide details if the checkbox below is to be left
unchecked. -->
- [ ] I have added tests that prove my fix is effective or that my
feature works
<!---
User-facing changes require a CHANGELOG entry.
-->
- [ ] I have run `make changelog` and committed the
`changelog/pending/<file>` documenting my change
<!--
If the change(s) in this PR is a modification of an existing call to the
Pulumi Cloud,
then the service should honor older versions of the CLI where this
change would not exist.
You must then bump the API version in
/pkg/backend/httpstate/client/api.go, as well as add
it to the service.
-->
- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi
Cloud API version
<!-- @pulumi employees: If yes, you must submit corresponding changes in
the service repo. -->
github-merge-queue bot pushed a commit to pulumi/pulumi that referenced this pull request Aug 12, 2023
# Description

This PR removes Bors in favor of native GitHub merge queues. A very
similar
cutover was tested and verified in
pulumi/watchutil-rs#39.

# Deployment plan

* [x] Find some time where PRs aren't being merged. This is mostly to
minimize confusion
  while we're futzing with branch protections. 
* [x] Update the repo's branch protection rules to match
  pulumi/watchutil-rs#38:
* "Allow specified actors to bypass required pull requests": "bors" →
Unchecked
    * "Status checks that are required": "bors" → "ci-ok"
    * "Require merge queue": Unchecked → Checked
        * "Only merge non-failing pull requests" → Unchecked
        * "Merge method" → Squash and merge
* [ ] Merge this PR using the "Merge when ready" button.
* [ ] If it merges successfully: confirm the prepare-release step ran
and published
      pre-release artifacts.
* [ ] If the merge fails: it's possible we'll need to tweak steps
slightly
(e.g. if the step's name doesn't match the branch protection rule). The
      end goal is a "ci-ok" step in both the PR and merge workflows that
      captures whether everything is green.
* [ ] If the issues aren't immediately resolvable, revert the changes
made
to branch protection settings. Folks will continue to merge with
          Bors.

If all goes well, we should be able to continue merging with MQ for a
while --
at least long enough to cut a new CLI release. Once we're confident we
won't
need to roll back:
* [ ] Delete branch protection rules for:
    * staging
    * testing
* [ ] Remove pu/pu from https://app.bors.tech/repositories

Fixes #13501

## Checklist

- [ ] I have run `make tidy` to update any new dependencies
- [ ] I have run `make lint` to verify my code passes the lint check
  - [ ] I have formatted my code using `gofumpt`

<!--- Please provide details if the checkbox below is to be left
unchecked. -->
- [ ] I have added tests that prove my fix is effective or that my
feature works
<!---
User-facing changes require a CHANGELOG entry.
-->
- [ ] I have run `make changelog` and committed the
`changelog/pending/<file>` documenting my change
<!--
If the change(s) in this PR is a modification of an existing call to the
Pulumi Cloud,
then the service should honor older versions of the CLI where this
change would not exist.
You must then bump the API version in
/pkg/backend/httpstate/client/api.go, as well as add
it to the service.
-->
- [ ] Yes, there are changes in this PR that warrants bumping the Pulumi
Cloud API version
<!-- @pulumi employees: If yes, you must submit corresponding changes in
the service repo. -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
impact/no-changelog-required This issue doesn't require a CHANGELOG update
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants