ebace7edd3 | ||
---|---|---|
.github/workflows | ||
docs | ||
packages | ||
res | ||
scripts | ||
.eslintignore | ||
.eslintrc.json | ||
.gitignore | ||
.prettierignore | ||
.prettierrc.json | ||
LICENSE.md | ||
README.md | ||
jest.config.js | ||
lerna.json | ||
package-lock.json | ||
package.json | ||
tsconfig.json |
README.md
GitHub Actions Toolkit
The GitHub Actions ToolKit provides a set of packages to make creating actions easier and drive consistency.
Packages
The toolkit provides five separate packages. See the docs for each action.
Package | Description |
---|---|
@actions/core | Core functions for getting inputs, setting outputs, setting results, logging, secrets and environment variables |
@actions/exec | Functions necessary for running tools on the command line |
@actions/io | Core functions for CLI filesystem scenarios |
@actions/tool-cache | Functions necessary for downloading and caching tools |
@actions/github | An Octokit client hydrated with the context that the current action is being run in |
Creating an Action with the Toolkit
Actions are units of work which can either run in a container or on the host machine.
Choosing an action type: Outlines the differences and why you would want to create a JavaScript or a container based action.
JavaScript Action Walkthrough using a Template: A full walkthrough creating an action using the toolkit along with TypeScript for compile time support and Jest for unit testing. It also covers a branching strategy for versioning and safely testing and releasing an action.
Docker Action Walkthrough: Create an action that is delivered as a container and run with docker.
Docker Action Walkthrough with Octokit: Create an action that is delivered as a container which uses the toolkit. This example uses the GitHub context to construct an Octokit client.
Versioning: Recommendations on versioning, releases and tagging your action.
Contributing
We welcome contributions. See how to contribute.