{"id":13406021,"url":"https://github.com/actions/toolkit","last_synced_at":"2025-09-09T20:25:37.334Z","repository":{"id":37793145,"uuid":"182299236","full_name":"actions/toolkit","owner":"actions","description":"The GitHub ToolKit for developing GitHub Actions.","archived":false,"fork":false,"pushed_at":"2025-09-04T14:24:59.000Z","size":10359,"stargazers_count":5447,"open_issues_count":498,"forks_count":1603,"subscribers_count":143,"default_branch":"main","last_synced_at":"2025-09-06T08:22:05.835Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://github.com/features/actions","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/actions.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-04-19T17:08:00.000Z","updated_at":"2025-09-06T07:45:27.000Z","dependencies_parsed_at":"2024-01-09T17:55:47.873Z","dependency_job_id":"34585922-af64-4ad2-8978-c4ea20ba4d87","html_url":"https://github.com/actions/toolkit","commit_stats":{"total_commits":1115,"total_committers":159,"mean_commits":7.012578616352202,"dds":0.8887892376681614,"last_synced_commit":"ee93b05ee9979c0f7c22e6b648d9fb11b024eeb2"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/actions/toolkit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions%2Ftoolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions%2Ftoolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions%2Ftoolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions%2Ftoolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/actions","download_url":"https://codeload.github.com/actions/toolkit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/actions%2Ftoolkit/sbom","scorecard":{"id":163799,"data":{"date":"2025-08-11","repo":{"name":"github.com/actions/toolkit","commit":"227b1ce741a925ae9f5fdef91fd10415f2d0ca45"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":6.1,"checks":[{"name":"Maintained","score":10,"reason":"30 commit(s) and 2 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Security-Policy","score":9,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Warn: One or no descriptive hints of disclosure, vulnerability, and/or timelines in security policy","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Binary-Artifacts","score":9,"reason":"binaries present in source code","details":["Warn: binary detected: packages/tool-cache/scripts/externals/7zdec.exe:1"],"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: MIT License: LICENSE.md:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/releases.yml:68","Warn: no topLevel permission defined: .github/workflows/artifact-tests.yml:1","Warn: no topLevel permission defined: .github/workflows/audit.yml:1","Warn: no topLevel permission defined: .github/workflows/cache-tests.yml:1","Warn: no topLevel permission defined: .github/workflows/cache-windows-test.yml:1","Warn: no topLevel permission defined: .github/workflows/codeql.yml:1","Warn: no topLevel permission defined: .github/workflows/releases.yml:1","Warn: no topLevel permission defined: .github/workflows/unit-tests.yml:1","Warn: no topLevel permission defined: .github/workflows/update-github.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":1,"reason":"dependency not pinned by hash detected -- score normalized to 1","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/artifact-tests.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/artifact-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/artifact-tests.yml:83: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/artifact-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/artifact-tests.yml:99: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/artifact-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/artifact-tests.yml:168: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/artifact-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/artifact-tests.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/artifact-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/artifact-tests.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/artifact-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/artifact-tests.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/artifact-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/audit.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/audit.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/audit.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/audit.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cache-tests.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/cache-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cache-tests.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/cache-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cache-windows-test.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/cache-windows-test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cache-windows-test.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/cache-windows-test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/codeql.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/releases.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/releases.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/releases.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/releases.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/releases.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/releases.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/releases.yml:73: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/releases.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/unit-tests.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/unit-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/unit-tests.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/unit-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-github.yaml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/update-github.yaml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/update-github.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/actions/toolkit/update-github.yaml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/audit.yml:30","Warn: npmCommand not pinned by hash: .github/workflows/releases.yml:43","Warn: npmCommand not pinned by hash: .github/workflows/unit-tests.yml:39","Warn: npmCommand not pinned by hash: .github/workflows/update-github.yaml:17","Info:   0 out of  25 GitHub-owned GitHubAction dependencies pinned","Info:   6 out of  10 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":6,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Info: 'stale review dismissal' is required to merge on branch 'main'","Warn: required approving review count is 1 on branch 'main'","Info: codeowner review is required on branch 'main'","Info: 'last push approval' is required to merge on branch 'main'","Warn: no status checks found to merge onto branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: SAST configuration detected: CodeQL","Info: all commits (30) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"10 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-h5c3-5r3r-rr8q","Warn: Project is vulnerable to: GHSA-rmvr-2pp2-xj38","Warn: Project is vulnerable to: GHSA-xx4v-prfh-6cgc","Warn: Project is vulnerable to: GHSA-jr5f-v2jv-69x6","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-cxrh-j4jr-qwg3"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-16T14:18:14.187Z","repository_id":37793145,"created_at":"2025-08-16T14:18:14.187Z","updated_at":"2025-08-16T14:18:14.187Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273914207,"owners_count":25190109,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-06T02:00:13.247Z","response_time":2576,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-30T19:02:18.794Z","updated_at":"2025-09-09T20:25:37.324Z","avatar_url":"https://github.com/actions.png","language":"TypeScript","readme":"\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"res/at-logo.png\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/actions/toolkit/actions?query=workflow%3Atoolkit-unit-tests\"\u003e\u003cimg alt=\"Toolkit unit tests status\" src=\"https://github.com/actions/toolkit/workflows/toolkit-unit-tests/badge.svg\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/actions/toolkit/actions?query=workflow%3Atoolkit-audit\"\u003e\u003cimg alt=\"Toolkit audit status\" src=\"https://github.com/actions/toolkit/workflows/toolkit-audit/badge.svg\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\n## GitHub Actions Toolkit\n\nThe GitHub Actions ToolKit provides a set of packages to make creating actions easier.\n\n\u003cbr/\u003e\n\u003ch3 align=\"center\"\u003eGet started with the \u003ca href=\"https://github.com/actions/javascript-action\"\u003ejavascript-action template\u003c/a\u003e!\u003c/h3\u003e\n\u003cbr/\u003e\n\n## Packages\n\n:heavy_check_mark: [@actions/core](packages/core)\n\nProvides functions for inputs, outputs, results, logging, secrets and variables. Read more [here](packages/core)\n\n```bash\nnpm install @actions/core\n```\n\u003cbr/\u003e\n\n:runner: [@actions/exec](packages/exec)\n\nProvides functions to exec cli tools and process output. Read more [here](packages/exec)\n\n```bash\nnpm install @actions/exec\n```\n\u003cbr/\u003e\n\n:ice_cream: [@actions/glob](packages/glob)\n\nProvides functions to search for files matching glob patterns. Read more [here](packages/glob)\n\n```bash\nnpm install @actions/glob\n```\n\u003cbr/\u003e\n\n:phone: [@actions/http-client](packages/http-client)\n\nA lightweight HTTP client optimized for building actions. Read more [here](packages/http-client)\n\n```bash\nnpm install @actions/http-client\n```\n\u003cbr/\u003e\n\n:pencil2: [@actions/io](packages/io)\n\nProvides disk i/o functions like cp, mv, rmRF, which etc. Read more [here](packages/io)\n\n```bash\nnpm install @actions/io\n```\n\u003cbr/\u003e\n\n:hammer: [@actions/tool-cache](packages/tool-cache)\n\nProvides functions for downloading and caching tools.  e.g. setup-* actions. Read more [here](packages/tool-cache)\n\nSee @actions/cache for caching workflow dependencies.\n\n```bash\nnpm install @actions/tool-cache\n```\n\u003cbr/\u003e\n\n:octocat: [@actions/github](packages/github)\n\nProvides an Octokit client hydrated with the context that the current action is being run in. Read more [here](packages/github)\n\n```bash\nnpm install @actions/github\n```\n\u003cbr/\u003e\n\n:floppy_disk: [@actions/artifact](packages/artifact)\n\nProvides functions to interact with actions artifacts. Read more [here](packages/artifact)\n\n```bash\nnpm install @actions/artifact\n```\n\u003cbr/\u003e\n\n:dart: [@actions/cache](packages/cache)\n\nProvides functions to cache dependencies and build outputs to improve workflow execution time. Read more [here](packages/cache)\n\n```bash\nnpm install @actions/cache\n```\n\u003cbr/\u003e\n\n:lock_with_ink_pen: [@actions/attest](packages/attest)\n\nProvides functions to write attestations for workflow artifacts. Read more [here](packages/attest)\n\n```bash\nnpm install @actions/attest\n```\n\u003cbr/\u003e\n\n## Creating an Action with the Toolkit\n\n:question: [Choosing an action type](docs/action-types.md)\n\nOutlines the differences and why you would want to create a JavaScript or a container based action.\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n:curly_loop: [Versioning](docs/action-versioning.md)\n\nActions are downloaded and run from the GitHub graph of repos.  This contains guidance for versioning actions and safe releases.\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n:warning: [Problem Matchers](docs/problem-matchers.md)\n\nProblem Matchers are a way to scan the output of actions for a specified regex pattern and surface that information prominently in the UI.\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n:warning: [Proxy Server Support](docs/proxy-support.md)\n\nSelf-hosted runners can be configured to run behind proxy servers.\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n\u003ch3\u003e\u003ca href=\"https://github.com/actions/hello-world-javascript-action\"\u003eHello World JavaScript Action\u003c/a\u003e\u003c/h3\u003e\n\nIllustrates how to create a simple hello world javascript action.\n\n```javascript\n...\n  const nameToGreet = core.getInput('who-to-greet');\n  console.log(`Hello ${nameToGreet}!`);\n...\n```\n\u003cbr/\u003e\n\n\u003ch3\u003e\u003ca href=\"https://github.com/actions/javascript-action\"\u003eJavaScript Action Walkthrough\u003c/a\u003e\u003c/h3\u003e\n\nWalkthrough and template for creating a JavaScript Action with tests, linting, workflow, publishing, and versioning.\n\n```javascript\nasync function run() {\n  try {\n    const ms = core.getInput('milliseconds');\n    console.log(`Waiting ${ms} milliseconds ...`)\n    ...\n```\n```javascript\nPASS ./index.test.js\n  ✓ throws invalid number\n  ✓ wait 500 ms\n  ✓ test runs\n\nTest Suites: 1 passed, 1 total\nTests:       3 passed, 3 total\n```\n\u003cbr/\u003e\n\n\u003ch3\u003e\u003ca href=\"https://github.com/actions/typescript-action\"\u003eTypeScript Action Walkthrough\u003c/a\u003e\u003c/h3\u003e\n\nWalkthrough creating a TypeScript Action with compilation, tests, linting, workflow, publishing, and versioning.\n\n```javascript\nimport * as core from '@actions/core';\n\nasync function run() {\n  try {\n    const ms = core.getInput('milliseconds');\n    console.log(`Waiting ${ms} milliseconds ...`)\n    ...\n```\n```javascript\nPASS ./index.test.js\n  ✓ throws invalid number\n  ✓ wait 500 ms\n  ✓ test runs\n\nTest Suites: 1 passed, 1 total\nTests:       3 passed, 3 total\n```\n\u003cbr/\u003e\n\u003cbr/\u003e\n\n\u003ch3\u003e\u003ca href=\"docs/container-action.md\"\u003eDocker Action Walkthrough\u003c/a\u003e\u003c/h3\u003e\n\nCreate an action that is delivered as a container and run with docker.\n\n```docker\nFROM alpine:3.10\nCOPY LICENSE README.md /\nCOPY entrypoint.sh /entrypoint.sh\nENTRYPOINT [\"/entrypoint.sh\"]\n```\n\u003cbr/\u003e\n\n\u003ch3\u003e\u003ca href=\"https://github.com/actions/container-toolkit-action\"\u003eDocker Action Walkthrough with Octokit\u003c/a\u003e\u003c/h3\u003e\n\nCreate an action that is delivered as a container which uses the toolkit.  This example uses the GitHub context to construct an Octokit client.\n\n```docker\nFROM node:slim\nCOPY . .\nRUN npm install --production\nENTRYPOINT [\"node\", \"/lib/main.js\"]\n```\n```javascript\nconst myInput = core.getInput('myInput');\ncore.debug(`Hello ${myInput} from inside a container`);\n\nconst context = github.context;\nconsole.log(`We can even get context data, like the repo: ${context.repo.repo}`)\n```\n\u003cbr/\u003e\n\n## Note\n\nThank you for your interest in this GitHub repo, however, right now we are not taking contributions. \n\nWe continue to focus our resources on strategic areas that help our customers be successful while making developers' lives easier. While GitHub Actions remains a key part of this vision, we are allocating resources towards other areas of Actions and are not taking contributions to this repository at this time. The GitHub public roadmap is the best place to follow along for any updates on features we’re working on and what stage they’re in.\n\nWe are taking the following steps to better direct requests related to GitHub Actions, including:\n\n1. We will be directing questions and support requests to our [Community Discussions area](https://github.com/orgs/community/discussions/categories/actions)\n\n2. High Priority bugs can be reported through Community Discussions or you can report these to our support team https://support.github.com/contact/bug-report.\n\n3. Security Issues should be handled as per our [security.md](SECURITY.md).\n\nWe will still provide security updates for this project and fix major breaking changes during this time.\n\nYou are welcome to still raise bugs in this repo.\n\n## Code of Conduct\n\nSee [our code of conduct](CODE_OF_CONDUCT.md).\n","funding_links":[],"categories":["TypeScript","Official Resources","HarmonyOS","others","Badges and Shields","三、自定义Action开发","Uncategorized"],"sub_categories":["Create your Actions","Windows Manager","Dynamic Badges","3. 编程语言环境配置","Uncategorized"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factions%2Ftoolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Factions%2Ftoolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Factions%2Ftoolkit/lists"}