Categorygithub.com/NoUseFreak/letitgo
modulepackage
0.0.0-20210205233750-70132756c0b7
Repository: https://github.com/nousefreak/letitgo.git
Documentation: pkg.go.dev

# README

LetItGo

Build status Release Report Maintained Docker Cloud Build Status Website License Coffee

LetItGo simplifies automated releases. A simple definition in .release.yml in the root of your project is all you need.

Check out the docs for full documentation.

Install

Homebrew

brew install NoUseFreak/brew/letitgo
letitgo --version

Gofish

gofish install letitgo
letitgo --version

CLI

curl -sL http://bit.ly/gh-get | PROJECT=NoUseFreak/letitgo bash
letitgo --version

Docker

docker run -v $(pwd):/app nousefreak/letitgo --version

Whalebrew

whalebrew install nousefreak/letitgo

Anywhere

curl -sL http://bit.ly/gh-get | BIN_DIR=/tmp/bin PROJECT=NoUseFreak/letitgo bash
/tmp/bin/letitgo --version

Usage

The most common use case would be to provide a .release.yml file in the root of your project, and let letitgo do it's thing.

$ letitgo

Init

You can use letitgo init to help you generate your .release.yml file.

It will go through all available actions and provide you with an example for each of the actions.

Actions

Actions as as the name explains, actions that letitgo need to execute when the release process is triggered.

ActionDescription
archiveCreate archives of files.
changelogGenerate a changelog and commit it to your project.
dockerBuilds, tags and pushes docker images.
githubreleasePublish generated artifacts and attach them to a github release.
gofishCreates a PR to update the gofish fish-food.
helmPackage and/or publish helm charts to a registry like chartmuseum.
homebrewUpdate your personal homebrew tap with your latest config.
slackSend message to slack to mark a complete release.
snapcraftPackage and upload your snap to snapcraft.

All actions and example configuration can be found in the docs directory.

Example

The following is an example config used to release this project.

letitgo:
  name: letitgo
  description: LetItGo automates releases.
  actions:
    - type: changelog

    - type: githubrelease
      assets:
      - ./build/pkg/*

    - type: homebrew
      homepage: https://github.com/NoUseFreak/letitgo
      url: https://github.com/NoUseFreak/letitgo/releases/download/{{ .Version }}/darwin_amd64.zip
      tap:
        url: [email protected]:NoUseFreak/homebrew-brew.git
      test: system "#{bin}/{{ .Name }} -h"

# Packages

No description provided by the author