From ee7c00cb5aefa707fdca6d5113da4452cdaaa7d9 Mon Sep 17 00:00:00 2001 From: Azdim Zul Fahmi Date: Sat, 3 Oct 2020 17:14:26 +0700 Subject: [PATCH] Add homebrew formula in gorelease.yaml --- .goreleaser.yml | 87 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) diff --git a/.goreleaser.yml b/.goreleaser.yml index 2aa2feb..06eb9e8 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -55,3 +55,90 @@ changelog: exclude: - '^docs:' - '^test:' + +brews: + - name: tpot + + # GOARM to specify which 32-bit arm version to use if there are multiple versions + # from the build section. Brew formulas support atm only one 32-bit version. + # Default is 6 for all artifacts or each id if there a multiple versions. + goarm: 6 + + # NOTE: make sure the url_template, the token and given repo (github or gitlab) owner and name are from the + # same kind. We will probably unify this in the next major version like it is done with scoop. + + # GitHub/GitLab repository to push the formula to + # Gitea is not supported yet, but the support coming + tap: + owner: adzimzf + name: homebrew-tpot + + # Template for the url which is determined by the given Token (github or gitlab) + # Default for github is "https://github.com///releases/download/{{ .Tag }}/{{ .ArtifactName }}" + # Default for gitlab is "https://gitlab.com///uploads/{{ .ArtifactUploadHash }}/{{ .ArtifactName }}" + url_template: "http://github.mycompany.com/foo/bar/releases/{{ .Tag }}/{{ .ArtifactName }}" + + # Allows you to set a custom download strategy. Note that you'll need + # to implement the strategy and add it to your tap repository. + # Example: https://docs.brew.sh/Formula-Cookbook#specifying-the-download-strategy-explicitly + # Default is empty. + download_strategy: CurlDownloadStrategy. + + # Allows you to add a custom require_relative at the top of the formula template + # Default is empty + custom_require: custom_download_strategy + + # Git author used to commit to the repository. + # Defaults are shown. + commit_author: + name: adzimzf + email: adzimzulfahmy@gmail.com + + # Folder inside the repository to put the formula. + # Default is the root folder. + folder: Formula + + # Your app's homepage. + # Default is empty. + homepage: "https://github.com/adzimzf/tpot" + + # Your app's description. + # Default is empty. + description: "tpot is a simple tool to access teleport web UI from terminal" + + # Setting this will prevent goreleaser to actually try to commit the updated + # formula - instead, the formula file will be stored on the dist folder only, + # leaving the responsibility of publishing it to the user. + # If set to auto, the release will not be uploaded to the homebrew tap + # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1 + # Default is false. + skip_upload: false + + # Custom block for brew. + # Can be used to specify alternate downloads for devel or head releases. + # Default is empty. + custom_block: | + head "https://github.com/adzimzf/tpot.git" + ... + + # Packages your package depends on. + dependencies: + - name: git + - name: zsh + type: optional + + # Specify for packages that run as a service. + # Default is empty. + plist: | + ... + + # So you can `brew test` your formula. + # Default is empty. + test: | + system "#{bin}/tpot --version" + ... + + # Custom install script for brew. + # Default is 'bin.install "program"'. + install: | + bin.install "program" \ No newline at end of file