Skip to content

georgipopivanov/homebrew-eosio

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 

Repository files navigation

homebrew-eosio

This repository is a "tap" for homebrew, a macOS package manager. When you run brew install eosio or brew upgrade, brew will look here to determine where to find the latest macOS binaries for EOSIO.

Automation

The eosioBrewAutoPR lambda recieves a webhook (event notification) any time a Buildkite step finishes across the EOSIO organization.

If the following conditions are met by a Buildkite step...

  • The job step passed
  • The step label includes "brew updater", case-insensitive
  • The BUILDKITE_TAG environment variable is equivalent to the latest tag on GitHub that matches the pearl-compatible regular expression (PCRE) ^v[0-9]+\.[0-9]+\.[0-9]+$
    • The regular expression is intended to filter out release candidates (v2.1.0-rc1), alphas (v2.1.0-alpha), betas (v2.1.0-beta), etc.

...then the lambda will attempt to:

  1. Download an artifact from the step called eosio.rb
  2. Checkout a new branch
  3. Update the eosio.rb file here in this repo on the feature branch
  4. Open a pull request using the @blockone-devops account, like this
  5. Request a peer-review on the pull request

Once the pull request is merged to master, brew will use the new version indicated by the root_url field in the eosio.rb file.

Manual

Every once in a while something might go wrong, such as a tagged build being run against the wrong commit or degraded service from one of our service providers. In these cases, this repo will have to be updated manually following the process above.

Simply download the eosio.rb file from the Brew Updater step in the tagged eosio build, checkout a new branch in this repo, update the eosio.rb file in the root of this repo, open a pull request like this, obtain peer-review, and get it merged.

About

homebrew tap for EOSIO

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%