set-github-repository-labels
v0.1.0
Published
Sets labels for a GitHub repository, including renaming existing similar labels. 🏷️
Downloads
1,693
Readme
Usage
Sets a collection of labels on a repository.
For each outcome label, if its name, the same words excluding its prefix:
, or any of its aliases already exists, that existing label is updated.
Otherwise, a new label is created.
Node.js API
npm i set-github-repository-labels
import { setGitHubRepositoryLabels } from "set-github-repository-labels";
await setGitHubRepositoryLabels({
labels: [
{
color: "d73a4a",
description: "Something isn't working 🐛",
name: "type: bug",
},
{
aliases: ["enhancement"],
color: "a2eeef",
description: "New enhancement or request 🚀",
name: "type: feature",
},
],
owner: "JoshuaKGoldberg",
repository: "create-typescript-app",
});
Shell
set-github-repository-labels
can be run as an npx
command.
| Option | Type | Default or Required | Description |
| -------------- | -------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| --auth
| string
| process.env.GH_TOKEN
or executing gh auth token
| Auth token for GitHub from octokit-from-auth
|
| --bandwidth
| number
| 6
| Maximum parallel requests to start at once |
| --labels
| string
| (required) | Raw JSON string |
| --owner
| string
| (required) | Owning organization or username for the repository |
| --repository
| string
| (required) | Title of the repository |
Because labels
takes in data as a raw JSON string, so you'll most likely want to pipe data to it from a JSON source:
npx set-github-repository --labels "$(cat labels.json)" --owner JoshuaKGoldberg --repository "create-typescript-app"
To call it programmatically, you can use with something like execa
:
import $ from "execa";
import fs from "node:fs/promises";
const labels = (await fs.readFile("labels.json")).toString();
await $`npx set-github-repository --labels ${labels} -- --owner JoshuaKGoldberg --repository "create-typescript-app"`;
Development
See .github/CONTRIBUTING.md
, then .github/DEVELOPMENT.md
.
Thanks! 💖
Contributors
💝 This package was templated with
create-typescript-app
using thecreate
engine.