{"repo":"sxzz/actionspack","free":true,"listed":false,"github":"https://github.com/sxzz/actionspack","clone":"git clone https://github.com/sxzz/actionspack.git","description":"Lockfile-first GitHub Actions workflow packer","language":"TypeScript","stars":32,"topics":["actions","github","workflow"],"license":"MIT","category":"workflow-automation","readme_excerpt":"actionspack [![Open on npmx][npmx-version-src]][npmx-href] [![npm downloads][npmx-downloads-src]][npmx-href] [![Unit Test][unit-test-src]][unit-test-href] actionspack is a lockfile-first GitHub Actions workflow packer. It lets you author workflows in .github/workflows/src/ , lock every remote workflow/action dependency in .github/workflow.lock.yml , and generate pinned workflows in .github/workflows/ . It currently supports inlining composite actions and safely transformable reusable workflows. JavaScript and Docker actions are pinned as external dependencies instead of being bundled. Why actionspack? GitHub Actions workflows often depend on reusable workflows and actions from other repositories. You may want to author those dependencies with convenient floating refs like @main in .github/workflows/src/ , but generated workflows should be reproducible and reviewable. actionspack gives workflows a lockfile mechanism similar to pnpm . It locks remote workflows and actions in .github/workflow.lock.yml , inlines everything that can be transformed safely into the local repository, and pins anything that cannot be inlined to a fixed SHA. To update workflow and action dependencies, run actionspack update periodically. The updated lockfile and generated workflows are normal repository files, so git diff shows exactly which dependencies changed and what generated workflow output changed. Install Usage Put authored workflows under .github/workflows/src/ : Then run: actionspack defaults","default_branch":null,"files":null,"tree":[],"storefront":"/r/sxzz","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/sxzz/actionspack/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}