Skip to content

Validate and publish a homebrew formula

License

Notifications You must be signed in to change notification settings

LizardByte/homebrew-release-action

Repository files navigation

homebrew-release-action

GitHub Workflow Status (CI)

A reusable action to publish homebrew formulas to a tap. This action is tailored to the @LizardByte organization, but can be used by anyone if they follow the same conventions.

This is basically a wrapper around adrianjost/files-sync-action, with some different defaults to make it easier to use within the @LizardByte organization.

Basic Usage

See action.yml

The intent here is that the formulas are build in the upstream repository, instead of the tap repository.

As part of an automated release workflow, this action can be used to upload the built formulas to the tap repository.

steps:
  - name: Publish Homebrew Formula
    uses: LizardByte/homebrew-release-action@master
    with:
      git_email: ${{ secrets.GIT_EMAIL }}
      git_username: ${{ secrets.GIT_USERNAME }}
      target_repo: repo_owner/repo_name
      token: ${{ secrets.PAT }}

It's possible to overwrite the defaults by providing additional inputs:

steps:
  - name: Publish Homebrew Formula
    uses: LizardByte/homebrew-release-action@master
    with:
      file_patterns: |-
        ^Aliases/*$
        ^Formula/*.rb$
      git_email: ${{ secrets.GIT_EMAIL }}
      git_username: ${{ secrets.GIT_USERNAME }}
      skip_delete: true
      src_root: ${{ github.workspace }}/build/  # must end with a trailing slash
      target_repo: repo_owner/repo_name
      token: ${{ secrets.PAT }}