Commit Graph

53 Commits

Author SHA1 Message Date
Josh Dales
cc1e02580b Update object assignment in toChangedFilesMatchConfig 2023-03-20 17:40:28 -04:00
Josh Dales
65b7640e45 Add unit tests for toMatchConfig 2023-03-18 17:15:18 -04:00
Josh Dales
17694aa238 Update the argument type for toMatchConfig 2023-03-18 16:44:50 -04:00
Josh Dales
ef108a9d83 Convert the yaml output to a matchConfig in getLabelConfigMapFromObject 2023-03-18 16:44:49 -04:00
Josh Dales
1ce9b356f6 Move all changedFiles logic into it's own file 2023-03-18 16:44:49 -04:00
Josh Dales
9f259ee115 Rename checkGlobs to checkMatchConfigs and check each property 2023-03-18 16:44:49 -04:00
Josh Dales
c08f5faa12 Condense assignment of further config options in toChangedFilesMatchConfig 2023-03-18 16:44:49 -04:00
Josh Dales
51b763cbf2 Update comments in getMatchConfigs to represent updated types 2023-03-18 16:44:49 -04:00
Josh Dales
e939550344 Simplfy the conditions in toBranchMatchConfig 2023-03-18 16:44:49 -04:00
Josh Dales
e4486e9ed9 Throw an error if the config is the wrong type 2023-03-18 16:44:49 -04:00
Josh Dales
fc5eb711b0 Revert "reverse the conditions of checkMatch"
This reverts commit 0eb9d49330.
2023-03-18 16:44:49 -04:00
Josh Dales
3eec5d8ccc Update the syntax for checking a match 2023-03-18 16:44:49 -04:00
Josh Dales
90ef37079a Merge branch 'actions:main' into main 2023-03-18 16:44:40 -04:00
Ivan
8d81f881dd Add and configure ESLint and update configuration for Prettier (#508)
* Add ESLint and update Prettier

* Rebuild action

* Update package.json
2023-03-09 15:02:17 +02:00
Josh Dales
84e83a9b19 Merge branch 'main' into main 2023-03-08 18:10:37 -05:00
Michaël De Boey
ba790c862c feat: default repo-token to github.token (#227)
* feat: default `repo-token` to `github.token`

* Update README.md

* Update labeler.ts

* Update index.js

* Update action.yml

* Update dist/index.js

* Update index.js

* Update dist/index.js
2023-03-07 12:25:56 +01:00
Josh Dales
394a01bde3 Make getBranchName argument non-optional 2023-03-03 11:15:48 -05:00
Josh Dales
da83a1845f Make sure that the changed files config values are an array 2023-02-19 18:10:19 -05:00
Josh Dales
ed31b27f2e Rename some functions and variables to match what they are doing 2023-02-19 16:46:14 -05:00
Josh Dales
09f085373a Fix some typos in the branch checks 2023-02-19 12:17:15 -05:00
Josh Dales
0eb9d49330 reverse the conditions of checkMatch 2023-01-29 15:58:23 -05:00
Josh Dales
969899da68 Add the changedFiles key and update logic in labeler 2023-01-29 14:10:07 -05:00
Josh Dales
7a5c525049 Create new interfaces for MatchConfig 2023-01-28 23:14:53 -05:00
Josh Dales
922ffdf5ad Remove deprecated IMinimatch import from labeler.ts 2023-01-28 22:43:56 -05:00
Josh Dales
231de6bc24 Remove the branch option and replace with just head-branch and base-branch 2023-01-28 22:30:05 -05:00
Josh Dales
0b6e68d75a Add options for getting the head or base branch 2023-01-28 17:57:52 -05:00
Josh Dales
2343710777 Move all the branch checking into its own file 2023-01-28 15:58:00 -05:00
Josh Dales
f2b2513f41 Update the matching to use a regexp rather than minimatch 2023-01-28 15:34:31 -05:00
Josh Dales
8c59eccb9d Rename the getBranchName helper 2023-01-28 15:14:15 -05:00
Josh Dales
c54c5a2057 Run prettier 2023-01-11 17:09:44 -05:00
Josh Dales
7f8d8e472d Merge branch 'main' into main 2023-01-11 17:02:22 -05:00
IvanZosimov
0cad484cd0 Add .prettierrc.json to configure Prettier, reformat code 2022-12-19 17:09:22 +01:00
Josh Dales
818399d10f Merge branch 'main' into main 2022-06-11 07:30:44 -04:00
Josh Dales
89f6b77325 minor adjustment for successful branch matching.
To better follow the any convention as opposed to all
2021-10-28 22:13:56 -04:00
Josh Dales
2d63815c83 Allow branch config to be an array as well 2021-09-29 10:31:50 -04:00
Amiel Martin
27a1d89941 Update src/labeler.ts
Safer access of pull_request data.

Co-authored-by: Josh Dales <30500472+joshdales@users.noreply.github.com>
2021-09-16 12:22:00 -08:00
Amiel Martin
cb5f4480b2 Use correct branch name and update tests 2021-09-15 09:23:41 -08:00
Amiel Martin
8aa7614bc1 Run build 2021-09-15 09:16:56 -08:00
Amiel Martin
827e1186a2 Fix PR branch labeler 2021-09-15 09:05:10 -08:00
dependabot[bot]
faa881dd1b Bump typescript from 4.3.5 to 4.4.2 (#218)
* Bump typescript from 4.3.5 to 4.4.2

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.3.5 to 4.4.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.3.5...v4.4.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* explicitly coerece to `any` to avoid ts type errors

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Patrick Ellis <patrick.j.ellis@gmail.com>
2021-09-02 14:30:05 +02:00
Josh Dales
6c50d09410 include checkBranch in checkMatch 2021-08-07 15:09:15 -04:00
Josh Dales
ad73546cad Add function for checking branches 2021-08-07 15:07:47 -04:00
Josh Dales
2bf42e445d Add branch to MatchConfig interface 2021-08-07 15:06:24 -04:00
dependabot[bot]
9b2da75f4b Bump @actions/github from 2.2.0 to 5.0.0 (#161)
* Bump @actions/github from 2.2.0 to 5.0.0

Bumps [@actions/github](https://github.com/actions/toolkit/tree/HEAD/packages/github) from 2.2.0 to 5.0.0.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/github/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/github)

---
updated-dependencies:
- dependency-name: "@actions/github"
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* update licensed cache

* Code changes to support github 5.0

* regenerate dist/index

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Patrick Ellis <patrick.j.ellis@gmail.com>
2021-06-21 11:39:52 -04:00
Patrick Ellis
3424206184 Upgrade js-yaml to 4.0
The only code change is switching `safeLoad` (which was removed) for `load` (which is "safe" by default now)

https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md#400---2021-01-03
2021-06-11 18:54:48 -04:00
Patrick Ellis
c97a9580dd Update prettier to 2.3.0 and re-prettify everything
Gotta love those trailing commas!
2021-06-04 16:14:32 -04:00
Patrick Ellis
9019323db1 🧹 Add basic unit tests (#148)
This is not intended to be a comprehensive test suite; I'm just trying to get us started by adding tests for some of the most important functionality.

This necessitated some minor refactoring. Previously, `main.ts` just directly invoked the main entrypoint function `run()`, which made it impossible to unit test the module without causing the side-effects of `run`. 

As a workaround I created  a new module `labeler.ts`, which just exports the functions we want to test without executing the main entrypoint, and simplified `main.ts` so that it only imports the entrypoint and executes it.

It's basically just a re-org. The diff makes it look way more complicated than it is.
2021-06-03 16:15:47 -04:00
David Kale
fa244eaba5 Paginate and remove old labels (#96)
* Paginate to get all changed files. Add option to remove labels

* build

* format and build
2020-09-08 13:09:16 -04:00
Jameel Al-Aziz
efc1b29f09 Fix "any" matching when not all globs match (#75)
The previous logic had a bug where the "any" pattern list could match
against changed files even when not all globs matched a single changed
file. The bug arose individual globs in the "any" list were tested
against all changed files individually. Therefore, as long as at least
one changed file matched an individual glob in the list, a successful
match would be found.

The correct behavior is to match all the globs in the list against each
individual file. This ensures that is possible to define exlcusions
correctly and matched the documented behavior.
2020-06-19 10:55:47 -04:00
Jameel Al-Aziz
4b52aec09b Add support for exclusions (#22)
* Add support for exclusions

Paths can be negated to stop searching through the remaining patterns in
a the glob list. All changed files tested and at least one matching file
will result in a label being added.

Fixes actions/labeler#9

* Add support for "AND"-ed matches

A new "rich" matcher object can be provided instead of a normal glob.

The matcher object has two fields that accept an array of globs:
* Globs in "all" must all match every changed file.
* Globs in "some" must all match at least one changed file.

Combined with negated globs, this allows for a precise control of when
labels are applied.

* Rename `some` to `any`

* Update README
2020-06-01 17:01:37 -04:00