Skip to content

tecolicom/actions-use-homebrew-tools

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.