GithubHelp home page GithubHelp logo

isabella232 / unreleased Goto Github PK

View Code? Open in Web Editor NEW

This project forked from electron/unreleased

0.0 0.0 0.0 190 KB

Checks for and reports commits unreleased for a specific release branch.

Dockerfile 1.68% JavaScript 98.32%

unreleased's Introduction

Electron Unreleased Commit Audit

This repository allows users to query information relating to release branches on a desired repository.

There are four potential actions possible:

  1. Reporting commits unreleased for a specific release branch.
  2. Reporting pull requests targeting a specific release branch that have not yet been merged.
  3. Reporting pull requests which need to be manually backported to a particular release line.
  4. Perform a pre-release audit combining actions 2 and 3.

An unreleased commit audit is triggered automatically via cron job on Monday mornings at 9AM PST for all supported release branches of your repository.

Setup

This tool will default to setting the organization and repository name to electron/electron, but you can set your own by setting ORGANIZATION_NAME and REPO_NAME as environment variables.

You can also set the number of currently supported release lines with the NUM_SUPPORTED_VERSIONS env var.

Check Unreleased

An unreleased commit audit can be triggered via Slack using the following:

/check-unreleased <branch_name>

where branch-name matches the name of a release line branch of the desired repository.

Example:

/check-unreleased 9-x-y

To manually query the status of all currently supported release branches:

/check-unreleased all

Check Unmerged

An unmerged pull request audit can be triggered via Slack using the following:

/check-unmerged <branch_name>

where branch-name matches the name of a release line branch of the repository.

Example:

/check-unmerged 10-x-y

Check Needs Manual

An audit of pull requests needing manual backport to a particular release line can be triggered via Slack using the following:

/check-needs-manual <branch_name> <author> <remind>

where branch-name matches the name of a release line branch of the repository.

Example:

/check-needs-manual 8-x-y

Scoping By Author

This command can be scoped by author of the original PR. For example:

/check-needs-manual 8-x-y codebytere

will return all pull requests needing manual backport to a particular release line where the author of the original PR was @codebytere

PRs needing manual backport to 8-x-y (from @codebytere):
* #23782 - fix: volume key globalShortcut registration
* #23776 - fix: asynchronous URL loading in BW Proxy
* #22342 - fix: don't run environment bootstrapper
There are 3 PR(s) needing manual backport to 8-x-y!

Reminding Authors

You can @mention authors in the audit to remind them of the manual backports they need to handle:

/check-needs-manual 8-x-y remind

This will produce a list similar to the following:

PR(s) needing manual backport to 8-x-y (from @codebytere):
* #23782 - fix: volume key globalShortcut registration (@codebytere)
* #23776 - fix: asynchronous URL loading in BW Proxy (@codebytere)
* #23678 - fix: read GTK dark theme setting on Linux (@zcbenz)
* #23653 - docs: errors in isolated world are not dispatched to foreign worlds (@zcbenz)
* #23415 - test: skip "handles Promise timeouts correctly" when ELECTRON_RUN_AS_NODE is disabled (@miniak)
* #22342 - fix: don't run environment bootstrapper (@codebytere)
There are 6 PR(s) needing manual backport to 8-x-y!

Perform Pre-Release Audit

A pre-release audit combines the needs-manual audit with the unmerged audit to return a full list of action items that may needs to occur before a beta or stable release.

/audit-pre-release <branch_name>

where branch-name matches the name of a release line branch of the repository.

Example:

/audit-pre-release 8-x-y

Check Review Queue

List PRs that are pending review. Specifically, PRs in the repo that match the search state:open "label:<prefix>/requested ๐Ÿ—ณ".

/review-queue <prefix>

where prefix is the beginning of the label to search for.

Example:

/review-queue api-review

Environment Variables

If you would like to use unreleased, there are several environment variables you will need to leverage to customize it to serve your needs.

  • ORGANIZATION_NAME - the name of your organization, e.g. electron.
  • REPO_NAME - the name of the repository to run audits in, e.g. electron.
  • NUM_SUPPORTED_VERSIONS - the number of supported backport release lines (default is 4).
  • GITHUB_TOKEN - the token that will be used to fetch data from the GitHub API (required).
  • SLACK_BOT_TOKEN - the token that will be used to post audit result into a Slack workspace channel (required).
  • BLOCKS_RELEASE_LABEL - the GitHub label used to denote unmerged pull requests that should block a release (default is blocks-release).
  • AUDIT_POST_CHANNEL - the Slack workspace channel in which to post audit results.

unreleased's People

Contributors

codebytere avatar nornagon avatar ckerr avatar dependabot[bot] avatar jkleinsc avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.