Skip to content

halostatue/pontil

pontil

A Gleam port of GitHub's actions/toolkit for writing GitHub Actions.

This is a monorepo containing the following packages, each published independently to Hex:

Package Description Targets
pontil High-level API for GitHub Actions JavaScript
pontil_build esbuild bundler for GitHub Actions Erlang
pontil_context Execution context and webhook event data Erlang, JavaScript
pontil_core Core workflow commands and input parsing Erlang, JavaScript
pontil_platform Runtime, OS, and architecture detection Erlang, JavaScript
pontil_summary Job summary builder Erlang, JavaScript

Most people building GitHub Actions should depend on pontil directly. The sub-packages exist for use cases that don't need the full toolkit or need Erlang target support.

Functions in pontil packages are marked with {actions} or {portable} tags. Functions tagged {actions} only work meaningfully in a GitHub Actions environment (they depend on variables set by GitHub Actions runners and/or output to files managed by runners). Functions tagged {portable} may be used in any environment, although output configuration may be required (see set_output) and they may perform additional work in a GitHub Actions runner.

Development

Requires Gleam >= 1.14.0 and just.

just dev-start   # Switch to path deps for local development
just test        # Run all tests
just lint        # Lint all packages
just format-check
just dev-end     # Restore version constraints before publishing
just dev-check   # Verify no path deps remain (CI gate)

Licence

Apache 2.0

About

Gleaming GitHub Actions

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors