Skip to content
type

GitHub Action

install-and-cache homebrew tools

v1.3 Latest version

install-and-cache homebrew tools

type

install-and-cache homebrew tools

GitHub Action to install and cache homebrew tools

Installation

Copy and paste the following snippet into your .yml file.

              

- name: install-and-cache homebrew tools

uses: tecolicom/actions-use-homebrew-tools@v1.3

Learn more about this action in tecolicom/actions-use-homebrew-tools

Choose a version

actions-use-homebrew-tools

actions-use-homebrew-tools

This GitHub action installs homebrew packages and cache them for later use. When executed next time with same package list, and any other environment are not changed, installed files are extracted from the cached archive.

When valid cached archive is not found, all packages are installed by brew command. Incremental installation is not supported.

This actions assumes brew command is already installed. So please install it before calling if not available.

Installed files are taken by comparing directory before and after installation. So it takes time to find them if many files are already installed before command execution.

By default, only files under the directory returned by brew --prefix will be archived. If the brew command installs files in other directories, specify them with the path parameter. You may need to add /Applications and/or /Library directories.

Output is same as @actions/cache.

Thanks to the provided typings, it is possible to use this action in a type-safe way using https://github.com/typesafegithub/github-workflows-kt which allows writing workflow files using a type-safe Kotlin DSL.

Usage

# inputs:
#   tools:   { required: true,  type: string }
#   key:     { required: false, type: string }
#   path:    { required: false, type: string }
#   cache:   { required: false, type: string, default: yes }
#   verbose: { required: false, type: boolean, default: false }

- uses: tecolicom/actions-use-homebrew-tools@v1
  with:

    # homebrew packages
    tools: ''

    # Additional cache key
    key: ''

    # Additional path required other than $(brew --prefix)
    path: ''

    # Cache strategy
    #
    # yes:      activate cache
    # no:       no cache
    # workflow: effective within same workflow (mainly for test)
    #
    cache: yes

    # verbose: show verbose output
    verbose: false

Example

- uses: tecolicom/actions-use-homebrew-tools@v1
  with:
    tools: rcs

See Also

This action is just a glue for @actions-install-and-cache.