Skip to content

Latest commit

 

History

History
96 lines (73 loc) · 3.2 KB

README.md

File metadata and controls

96 lines (73 loc) · 3.2 KB

Publish to BCR template files

The .bcr folder contains template files that you must include in your ruleset repository. The app uses these templates to form a new BCR entry after a release.

Copy the .bcr folder to the root of your ruleset repository and customize the template files accordingly.

For more information about the files that make up a BCR entry, see the Bzlmod User Guide.


Insert your ruleset's homepage and fill out the list of maintainers. Replace OWNER/REPO with your repository's canonical name. Leave versions alone as this will be filled automatically.

{
  "homepage": "INSERT_YOUR_HOMEPAGE", // <-- Edit this
  "maintainers": [
    {
      // <-- And this
      "email": "INSERT_YOUR_EMAIL",
      "github": "INSERT_YOUR_GITHUB_ORG_OR_USERNAME",
      "name": "INSERT_YOUR_NAME"
    }
  ],
  "repository": [
    "github:OWNER/REPO"  // <-- Replace OWNER and REPO with the correct values
  ],
  "versions": [],
  "yanked_versions": {}
}

Use the provided presubmit.yml file or replace it with your own. It should contain essential build and test targets that are used to sanity check a module version. The tasks are run by the BCR's CI pipelines.

We recommend using test workspace in your ruleset that exercises your module with bzlmod.

bcr_test_module:
  module_path: "e2e/bzlmod"
  matrix:
    platform: ["debian10", "macos", "ubuntu2004", "windows"]
  tasks:
    run_tests:
      name: "Run test module"
      platform: ${{ platform }}
      test_targets:
        - "//..."

The app will automatically substitute in values for {REPO}, {VERSION}, {OWNER}, and {TAG} corresponding to your ruleset repository and the release.

Check that the strip_prefix and url follow the correct format for your ruleset's release archive. If your repository relies on GitHub-generated source archives, then use {REPO}-{VERSION}. If your repository builds its own release archive, you probably do not have a prefix to be stripped. So, set strip_prefix to an empty string.

The integrity hash will automatically be filled out by the app.

{
  "integrity": "", // <-- Leave this alone
  "strip_prefix": "{REPO}-{VERSION}",
  "url": "https://github.com/{OWNER}/{REPO}/archive/refs/tags/{TAG}.tar.gz"
}

(Optional) config.yml

A configuration file to override default behaviour of the app.

fixedReleaser:
  login: <GITHUB_USERNAME>
  email: <EMAIL>
Field Description
fixedReleaser GitHub username and email to use as the author for BCR commits. Set this if you want a single user to always be the author of BCR entries regardless of who cut the release.