Skip to content

Commit

Permalink
feat(supersetbot): introduce supersetbot as its own npm package, CL…
Browse files Browse the repository at this point in the history
…I and comment-operated bot (#27046)
  • Loading branch information
mistercrunch authored Mar 13, 2024
1 parent 26d8077 commit 24cb062
Show file tree
Hide file tree
Showing 20 changed files with 12,577 additions and 32 deletions.
22 changes: 22 additions & 0 deletions .github/supersetbot/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"extends": "airbnb-base",
"rules": {
"import/extensions": 0,
"import/prefer-default-export": 0,
"func-names": 0,
"no-console": 0,
"class-methods-use-this": 0
},
"parserOptions": {
"ecmaVersion": 2020,
"sourceType": "module"
},
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module",
"requireConfigFile": false
},
"env": {
"jest": true
}
}
37 changes: 37 additions & 0 deletions .github/supersetbot/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# supersetbot

supersetbot is a utility bot that can be used to help around GitHub, CI and beyond.

The bot can be used as a local CLI OR, for a subset of fitted use cases, can be invoked directly
from GitHub comments.

Because it's its own npm app, it can be tested/deployed/used in isolation from the rest of
Superset, and take on some of the complexity from GitHub actions and onto a nifty
utility that can be used in different contexts.

## Features

```bash
$ use nvm 20
$ npm i -g supersetbot
$ supersetbot
Usage: supersetbot [options] [command]

Options:
-v, --verbose Output extra debugging information
-r, --repo <repo> The GitHub repo to use (ie: "apache/superset")
-d, --dry-run Run the command in dry-run mode
-a, --actor <actor> The actor
-h, --help display help for command

Commands:
label [options] <label> Add a label to an issue or PR
unlabel [options] <label> Remove a label from an issue or PR
release-label-pr [options] <prId> Figure out first release for PR and label it
version Prints supersetbot's version number
release-label-prs [options] Given a set of PRs, auto-release label them
release-label [options] <release> Figure out first release for PR and label it
orglabel [options] Add an org label based on the author
docker [options] Generates/run docker build commands use in CI
help [command] display help for command
```
8 changes: 8 additions & 0 deletions .github/supersetbot/jest.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
export default {
transform: {
},
testEnvironment: 'node',
moduleNameMapper: {
'^(\\.{1,2}/.*)\\.js$': '$1',
},
};
Loading

0 comments on commit 24cb062

Please sign in to comment.