step-security/Buf Action

Run build, lint, format, and breaking change checks on Protobuf files, and publish schemas to the Buf Schema Registry.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
versionVersion of the Buf CLI to use. Example: with: version: 1.50.1no
checksumChecksum of the Buf CLI to verify (sha256).no
tokenAPI token for logging into the BSR.no
domainDomain for logging into the BSR, enterprise only.nobuf.build
github_actorGitHub actor for API requests.no${{ github.actor }}
github_tokenGitHub token for the GitHub instance this action is running on.no${{ github.token }}
public_github_tokenGitHub token for github.com. Must be set when running on a private GitHub Enterprise instance to authenticate requests, otherwise ignored. Used to resolve buf versions and download buf binaries from github.com. The token only needs read access to public repositories.
setup_onlySetup only the buf environment, optionally logging into the BSR, but without executing other commands.nofalse
pr_commentComment on the pull request with the results of each step. The workflow and job name combination must be unique. Only runs on pull requests, for non forked repositories.no${{ github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository }}
inputInput for the buf command.no
pathsLimit to specific files or directories (separated by newlines). Example: with: paths: | proto/a/a.proto proto/ano
exclude_pathsExclude specific files or directories (separated by newlines). Example: with: exclude_paths: | proto/a/a.proto proto/ano
exclude_importsExclude files imported by the target modules.nofalse
lintWhether to run the linting step. Runs by default on pull requests.no${{ github.event_name == 'pull_request' }}
formatWhether to run the formatting step. Runs by default on pull requests.no${{ github.event_name == 'pull_request' }}
breakingWhether to run the breaking change detection step. Runs by default on pull requests if the "buf skip breaking" label is not applied.no${{ github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'buf skip breaking') }}
breaking_againstInput to compare against for breaking change detection. Defaults to the base branch of the pull request or the commit before the push.no
breaking_against_registryWhether to use the Buf Schema Registry for breaking change detection. If true, the `breaking_against` parameter is ignored. Defaults to false.nofalse
pushWhether to run the push step. Runs by default on pushes, for non forked repositories.no${{ github.event_name == 'push' }}
push_create_visibilityRepository's visibility setting if created. Must be either "public" or "private". Defaults to private.no
push_disable_createDisables repository creation if it does not exist. Defaults to false.nofalse
archiveWhether to run the archive step. Runs by default on deletes, for non forked repositories.no${{ github.event_name == 'delete' }}
namedescription
buf_versionVersion of the Buf CLI used.
buf_pathPath to the Buf CLI binary.