2019-07-10 18:02:56 +00:00
< p align = "center" >
< img src = "res/at-logo.png" >
< / p >
2019-08-12 19:09:43 +00:00
< p align = "center" >
< a href = "https://github.com/actions/toolkit" > < img alt = "GitHub Actions status" src = "https://github.com/actions/toolkit/workflows/Main%20workflow/badge.svg" > < / a >
< / p >
2019-08-24 13:24:48 +00:00
## GitHub Actions Toolkit
2019-07-10 18:02:56 +00:00
2019-08-24 13:24:48 +00:00
The GitHub Actions ToolKit provides a set of packages to make creating actions easier and drive consistency.
2019-04-20 14:56:56 +00:00
## Packages
2019-08-24 13:24:48 +00:00
The toolkit provides five separate packages. See the docs for each action.
2019-08-01 15:26:17 +00:00
2019-04-20 14:56:56 +00:00
| Package | Description |
| ------- | ----------- |
2019-08-01 15:26:17 +00:00
| [@actions/core ](packages/core ) | Core functions for getting inputs, setting outputs, setting results, logging, secrets and environment variables |
2019-06-14 15:43:06 +00:00
| [@actions/exec ](packages/exec ) | Functions necessary for running tools on the command line |
| [@actions/io ](packages/io ) | Core functions for CLI filesystem scenarios |
| [@actions/tool-cache ](packages/tool-cache ) | Functions necessary for downloading and caching tools |
2019-08-12 18:28:37 +00:00
| [@actions/github ](packages/github ) | An Octokit client hydrated with the context that the current action is being run in |
2019-04-22 15:46:19 +00:00
2019-08-01 15:26:17 +00:00
## Creating an Action with the Toolkit
2019-04-22 15:46:19 +00:00
2019-09-11 07:35:39 +00:00
Actions run in a container or on the host machine.
2019-04-22 15:46:19 +00:00
2019-09-04 21:30:45 +00:00
[Choosing an action type ](docs/action-types.md ): Outlines the differences and why you would want to create a JavaScript or a container based action.
2019-04-22 15:46:19 +00:00
2019-09-11 07:35:39 +00:00
[Hello World JavaScript Action ](https://github.com/actions/hello-world-javascript-action ): Illustrates how to create a simple hello world javascript action.
[JavaScript Action Walkthrough ](https://github.com/actions/javascript-action ): Walkthrough creating a JavaScript Action with tests, linting, workflow, publishing, and versioning.
2019-09-21 14:44:36 +00:00
[TypeScript Action Walkthrough ](https://github.com/actions/typescript-action ): Walkthrough creating a TypeScript Action with compilation, tests, linting, workflow, publishing, and versioning.
2019-04-22 15:46:19 +00:00
2019-08-01 15:26:17 +00:00
[Docker Action Walkthrough ](docs/container-action.md ): Create an action that is delivered as a container and run with docker.
2019-04-22 15:46:19 +00:00
2019-08-01 15:26:17 +00:00
[Docker Action Walkthrough with Octokit ](docs/container-action-toolkit.md ): Create an action that is delivered as a container which uses the toolkit. This example uses the GitHub context to construct an Octokit client.
2019-04-22 15:46:19 +00:00
2019-08-01 15:26:17 +00:00
[Versioning ](docs/action-versioning.md ): Recommendations on versioning, releases and tagging your action.
2019-04-22 15:46:19 +00:00
2019-08-01 15:26:17 +00:00
## Contributing
2019-04-22 15:46:19 +00:00
2019-08-12 18:28:37 +00:00
We welcome contributions. See [how to contribute ](docs/contribute.md ).