No description
  • Go 99.5%
  • Makefile 0.5%
Find a file
dependabot[bot] 0101a350e0
build(deps): bump github.com/cloudflare/circl from 1.6.1 to 1.6.3 (#23)
Bumps [github.com/cloudflare/circl](https://github.com/cloudflare/circl) from 1.6.1 to 1.6.3.
- [Release notes](https://github.com/cloudflare/circl/releases)
- [Commits](https://github.com/cloudflare/circl/compare/v1.6.1...v1.6.3)

---
updated-dependencies:
- dependency-name: github.com/cloudflare/circl
  dependency-version: 1.6.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-09 09:59:08 -05:00
.github build(deps): bump actions/checkout in the github-actions-breaking group (#18) 2026-01-22 17:40:45 -08:00
META.d [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 1) (#20) 2026-01-05 15:56:35 -08:00
pkg [COMPLIANCE] Update Copyright and License Headers (Batch 1 of 1) (#20) 2026-01-05 15:56:35 -08:00
go.mod build(deps): bump github.com/cloudflare/circl from 1.6.1 to 1.6.3 (#23) 2026-03-09 09:59:08 -05:00
go.sum build(deps): bump github.com/cloudflare/circl from 1.6.1 to 1.6.3 (#23) 2026-03-09 09:59:08 -05:00
LICENSE [COMPLIANCE] Update MPL-2.0 LICENSE 2022-12-14 17:04:02 +00:00
Makefile makefile: add test targets 2022-07-18 11:31:01 +01:00
README.md Update codeowners and readme (#11) 2025-07-08 08:30:23 -07:00

Composite Action Framework Go

A library of packages for writing composite GitHub Actions in Go.


This is intended for internal HashiCorp use only and is not generally supported for other users.


This is different from other Go GitHub Actions libraries which are focussed on writing standalone actions that just run a go binary and then exit.

Why Composite Actions?

Composite actions allow the composition of multiple other actions as well as arbitrary build steps together in a single action. This means that composite actions have the full actions ecosystem available.

Composite actions can also present some challenges:

  • Need to be able to run discrete chunks of logic in separate steps.
  • Need to be able to share configuration and calculated values between steps.
  • When complex logic is involved, need to be able to test it and share it with other codebases.

The Implied Strategy

This framework is intended to help you to write Go-based composite actions by implementing a CLI to do the heavy lifting, and embedding calls to that CLI in the action.yml.

The CLI package ./pkg/cli is designed so that each defined command is able to act as the entire CLI, or is able to be embedded in another similar CLI and become a subcommand there.

This means that functionality written to support an action can be embedded inside other tools, to be run locally, for instance.

Release Process

  1. Create a tag on the default branch of the commit to release. Follow SemVer semantics when choosing versions.
  2. Create a release from the tag, either with the GitHub web UI or the gh CLI.