40 Commits

Author SHA1 Message Date
Pete Davison
a44d6c60c9 chore: rename go-task/action to go-task/setup-task 2025-09-10 12:35:33 +00:00
Pete Davison
e17e9d15a8 fix: alt text to README icons 2025-09-09 20:05:50 +00:00
Pete Davison
14f713a066 feat: update README link to github actions 2025-09-09 19:04:49 +00:00
Samuel Ryan
e568630236 docs: Replace redirecting link with final destination
Co-authored-by: per1234 <accounts@perglass.com>
2025-09-09 17:07:27 +00:00
Samuel Ryan
cfcf02be0d docs: Describe use of GITHUB_TOKEN as default repo-token 2025-09-09 17:07:27 +00:00
Pete Davison
39182bc78c feat: update README 2025-09-09 16:47:08 +00:00
Alessio Perugini
b91d5d2c96 update readme (#929) 2024-02-06 11:18:32 +01:00
per1234
8aba048b49 Switch to version of the "Sync Labels" workflow for npm-managed projects
The "Sync Labels" workflow was originally developed with Arduino firmware repositories in mind. Those projects don't
have a lot of existing infrastructure and, since they are intended to be very approachable, the impact of adding
additional non-firmware files or folders (especially in the root) must be carefully considered.

In that context, a self-contained workflow is desirable. However, the situation is different in the inherently more
complex and infrastructure rich tooling projects, which are typically consumed only as a binary by users.

For this reason, an alternative standardized version of the "Sync Labels" workflow was produced, which utilizes npm to
manage its tool dependencies.

The code dependencies of this project and the code infrastructure are already managed via npm, which means the switch to
this superior version of the workflow can be made without the need to add any additional infrastructure.

This provides some significant benefits:

- Controlled updates via Dependabot PRs instead of being subject to immediate breakage resulting from a new tool release
- Enables automated vulnerability alerts

This is especially important for the github-label-sync tool, since it is making irreversible writes to the GitHub
repository.
2022-12-16 15:44:08 -08:00
per1234
d365115194 Switch to Task-based version of "Check npm" workflow
In addition to helping others use Task in their GitHub Actions workflows, this project uses Task for its own development.

Most of the repository's GitHub Actions workflows use the approach of executing a task. This approach allows maintaining
a single set of commands that can easily be used locally by contributors in addition to their use by the CI system.

The "Check npm" workflow was an exception to this pattern, using commands directly coded into the workflow file. This
meant the contributor would need to study the workflow and run the multiple equivalent complex commands locally if they
wanted to validate changes to the npm configuration in advance of pushing, or troubleshoot a problem flagged by the
workflow.

We already have a Task-based version of the workflow and accompanying tasks, which are generally preferred for Arduino
tooling projects and especially appropriate for this specific project which is devoted to Task:

https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/check-npm-task.md

Those standardized assets are hereby used in this repository, moving the commands from the workflow to an npm:validate
task and switching the workflow to using that task.
2022-08-18 00:22:51 -07:00
per1234
d3456d3f7d Add task for TypeScript configuration check
In addition to helping others use Task in their GitHub Actions workflows, this project uses Task for its own development.

Most of the repository's GitHub Actions workflows use the approach of executing a task. This approach allows maintaining
a single set of commands that can easily be used locally by contributors in addition to their use by the CI system.

The "Check TypeScript Configuration" workflow was an exception to this pattern, using commands directly coded into the
workflow file. This meant the contributor would need to study the workflow and run the multiple equivalent complex
commands locally if they wanted to validate changes to the TypeScript configuration in advance of pushing, or
troubleshoot a problem flagged by the workflow.

These commands are hereby moved to a ts:validate task and the workflow switched to using that task.

This is intended to be a straight across transfer of the existing commands (or their equivalents) to the task.
2022-08-16 02:37:55 -07:00
per1234
aaef6ddde7 Add CI workflow to check for unapproved npm dependency licenses
A task and GitHub Actions workflow are provided here for checking the license types of npm-managed project dependencies.

On every push and pull request that affects relevant files, the CI workflow will check:

- If the dependency licenses cache is up to date
- If any of the project's dependencies have an unapproved license type.

Approval can be based on:

- Universally allowed license type
- Individual dependency
2022-08-16 02:32:53 -07:00
per1234
0a6298e6a9 Use major version ref in example snippets
Previously, due to the lack of a release, the only option was to use the default branch name for the action ref. Using
release versions provides a more stable experience for the ordinary users of these actions and also eases ongoing
development work on the actions.

Use of the major version ref will cause the workflow to benefit from ongoing development to the action at each patch or
minor release up until such time as a new major release is made, at which time the user will be given the opportunity
to evaluate whether any changes to the workflow are required by the breaking change that triggered the major release
before manually updating the major ref (e.g., `uses: arduino/setup-task@v2`).
2021-05-20 00:06:26 -07:00
per1234
f7a19c992f Add badge to readme for "Test TypeScript" workflow 2021-05-10 02:41:27 -07:00
per1234
71e1e800be Add CI workflow to check for Prettier formatting compliance
On every push and pull request that affects relevant files, check whether the formatting of supported
files is compliant with the Prettier style.
2021-05-07 04:49:09 -07:00
per1234
c1b58238d5 Bring all files into Prettier formatting compliance 2021-05-07 04:49:09 -07:00
per1234
6d4f58adcf Change project name to "arduino/setup-task"
Change project name to "arduino/setup-task"

The Task documentation consistently refers to the tool as "Task". Taskfile is the term used for Task's configuration file.
This action is setting up the Task tool, not setting up the Task configuration file, so "arduino/setup-task" is more
appropriate than "arduino/setup-taskfile".
2021-05-07 02:49:21 -07:00
per1234
ea8c021592 Update badges 2021-05-07 02:39:30 -07:00
per1234
f08b86a4a9 Add CI workflow to check Markdown files for problems
On every push and pull request that affects relevant files, and periodically, check the repository's Markdown files for
problems:

- Use markdownlint to check for common problems and formatting.
- Use markdown-link-check to check for broken links.

Arduino's Markdown style is defined by the `.markdownlint.yml` file.

In the event the repository contains externally maintained Markdown files, markdownlint can be configured to ignore them
via a `.markdownlintignore` file:
https://github.com/igorshubovych/markdownlint-cli#ignoring-files

markdown-link-check is configured via the `.markdown-link-check.json` file:
https://github.com/tcort/markdown-link-check#config-file-format
2021-05-07 02:38:53 -07:00
per1234
01b012911e Add CI workflow to validate tsconfig.json files
On every push or pull request that affects the repository's TypeScript configuration files, and periodically, validate them
against their JSON schema.
2021-05-07 02:34:13 -07:00
per1234
884c4e8bb5 Add CI workflow to lint TypeScript and JavaScript code
On every push and pull request that affects relevant files, and periodically, run eslint on the repository's TypeScript
and JavaScript files.

eslint is configured via the .eslintrc.yml file:
https://eslint.org/docs/user-guide/configuring/configuration-files
2021-05-06 23:54:56 -07:00
per1234
30d1d36fdb Change description of default version example snippet to be realistic
History shows that the previous description "latest stable version of Task" is not likely to be accurate over time.
Better to just be honest about what the action does.
2021-05-05 23:27:36 -07:00
per1234
f98c0c7436 Move development documentation to CONTRIBUTING.md
This information is not of interest to those who only want to use the action, so it is not appropriate for the readme.
2021-05-05 15:07:19 -07:00
per1234
e567c92197 Merge pull request #14 from per1234/spell-check
Add CI workflow to check for commonly misspelled words
2021-05-05 15:05:26 -07:00
per1234
9b54ca505a Add CI workflow to check for commonly misspelled words
On every push, pull request, and periodically, use the codespell-project/actions-codespell action to check for commonly
misspelled words.

In the event of a false positive, the problematic word should be added, in all lowercase, to the ignore-words-list field
of ./.codespellrc. Regardless of the case of the word in the false positive, it must be in all lowercase in the ignore
list. The ignore list is comma-separated with no spaces.
2021-05-05 01:15:54 -07:00
per1234
8321083895 Provide a better explanation of what the project is 2021-05-04 23:59:34 -07:00
per1234
ead07189e3 Add CI workflow to validate action.yml
On every push or pull request that affects the action.yml GitHub Actions metadata file, and periodically, validate
action.yml against its JSON schema.
2021-05-04 03:26:30 -07:00
per1234
bae8af3104 Add an integration test CI workflow
This provides some end to end tests to provide verification that the action code works within the GitHub Actions framework.
2021-05-04 03:18:18 -07:00
per1234
1928815fa0 Merge pull request #4 from per1234/license
Add CI workflow to check the license file
2021-05-04 03:16:45 -07:00
per1234
b04e5a11cb Merge pull request #10 from per1234/document-inputs
Document action inputs
2021-05-04 03:13:35 -07:00
per1234
2a10514e1c Merge pull request #8 from per1234/security-disclosure-policy
Add security policy link to readme
2021-05-04 03:10:05 -07:00
per1234
c4ad5713dd Merge pull request #6 from per1234/remove-node-modules
Use ncc to compile action
2021-05-04 03:09:34 -07:00
per1234
718b2fa8cc Document action inputs 2021-05-03 23:27:55 -07:00
per1234
c9c7310ba1 Add security policy link to readme 2021-05-03 22:38:11 -07:00
per1234
85dca39a90 Use ncc to compile action
This allows the node_modules to be removed from the repository, as is already done in the `arduino/setup-arduino-cli`,
`arduino/arduino-lint-action`, and `arduino/create-changelog` actions.
2021-05-03 22:24:36 -07:00
per1234
55cba0cf87 Update action name in readme
The new action name will be arduino/setup-taskfile.
2021-05-03 21:15:43 -07:00
per1234
5faa6b6d43 Add CI workflow to check the license file
Whenever one of the recognized license file names are modified in the repository, the workflow runs to check whether the
license can be recognized and whether it is of the expected type.
2021-05-03 20:44:42 -07:00
Roberto Sora
fc04125dc0 add verbose logging activation tip in README.md 2019-09-10 09:40:38 +02:00
Roberto Sora
a9697f1d0c fix typo in readme 2019-09-10 09:00:34 +02:00
Massimiliano Pippi
ac41848120 more docs 2019-08-26 15:40:20 +02:00
Massimiliano Pippi
3fcc6951ab import sources 2019-08-23 17:30:46 +02:00