Investigate bors for testing merge commits · Issue #530 · bytecodealliance/lucet · GitHub
Skip to content
This repository was archived by the owner on Mar 24, 2022. It is now read-only.
This repository was archived by the owner on Mar 24, 2022. It is now read-only.

Investigate bors for testing merge commits #530

Open

Description

@acfoltzer

As I wrote in #526:

One important limitation I just noticed: the CircleCI build only runs on the commit of a PR's branch (what GH Actions labels the push), it does not automatically run on the merge commit (what Actions calls pull_request).

This raises the possibility that if a PR is not up to date with master, all of the CI might go green for a PR, we'll press the big green button, and the resulting merge commit into master will fail. The silver lining is that it will fail, since CircleCI runs on all commits by default.

It looks like there's an open (and popular) feature request to add testing on synthetic merge commits to CircleCI directly: https://ideas.circleci.com/ideas/CCI-I-926

This is also another case where using bors would help, since bors creates staging commits that are never behind master. Maybe it's time to set up bors for this repo?

I have only lightly interacted with bors when submitting patches to rust-lang projects. Let's investigate further to see whether we'd like to enable bors for this repo.

Activity

  1. aturon commented on May 20, 2020

    @aturon
    Member

    I will reach out to relevant folks on the Rust side to check in on their current experience around bors and any pitfalls we should be aware of.

  2. aturon commented on May 21, 2020

    @aturon
    Member

    So I checked in briefly with the Rust Infra channel, and confirmed a couple of things:

    • The "bors" bot used by Rust is based on a codebase called "homu", which has been effectively unmaintained for some years. It's used only by Rust and Servo. Adopting literal "bors" from Rust seems unwise. (Further details here)

    • There is, however, a "bors-ng" (next generation) project which is actively developed and has tools for setting up new projects: https://bors.tech/ (see also the also quite active forum here). That said, I'm not sure how widely used this tool is, so there's still some risk if we get too tied to it.

    @acfoltzer lemme know if you'd like me to dig into either of these more deeply!

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions