/toolkit

A toolkit for the GitHub Actions runtime

Primary LanguageTypeScriptMIT LicenseMIT

Toolkit

The toolkit provides a set of packages to make creating actions easier and drive consistency.

Packages

The toolkit provides four separate packages. Since actions are run by pulling actions from the github graph, dependencies including the packages are vendored into your 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

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 host or a container based action.

JavaScript Action Walthrough: Create an action which runs on the host using the toolkit

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.