Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GoReleaser: Release and Distribute Go Application

micnncim
April 19, 2019

GoReleaser: Release and Distribute Go Application

golang.tokyo #23 LT

micnncim

April 19, 2019
Tweet

More Decks by micnncim

Other Decks in Technology

Transcript

  1. GoReleaser:
    Release and Distribute
    Go Application
    @micnncim
    golang.tokyo #23 LT

    View full-size slide

  2. University Student
    Software Engineer @Arriv
    $ whoami

    View full-size slide

  3. Deliver Go binaries
    as fast and easily as possible.
    GoReleaser

    View full-size slide

  4. Cross Compile
    Single Binary
    Why Go?

    View full-size slide

  5. $ go get
    GitHub Release
    How to release
    Go application?

    View full-size slide

  6. Gopher
    User
    $ go get

    View full-size slide

  7. HEAD unstable
    Go
    $ go get

    View full-size slide

  8. GitHub Releases

    View full-size slide

  9. GitHub Releases

    View full-size slide

  10. Gopher
    User
    GitHub Releases

    View full-size slide

  11. curl + tar PATH
    GitHub Releases
    DL
    PATH

    View full-size slide

  12. stable
    Package Manager

    View full-size slide

  13. Gopher
    User
    Package Manager

    View full-size slide

  14. Formula
    Package Manager

    View full-size slide

  15. .goreleaser.yml
    goreleaser
    How to Use

    View full-size slide

  16. gox
    Cross Compilation &
    Release

    View full-size slide

  17. Homebrew, Snappy, Scoop
    deb, rpm
    Package Manager

    View full-size slide

  18. YAML Formula
    Homebrew Formula

    View full-size slide

  19. YAML Formula
    Homebrew Formula

    View full-size slide

  20. Auto-update Formulae

    View full-size slide

  21. Auto-update Formulae

    View full-size slide

  22. git.io CI
    CI Integration
    tag push hook

    View full-size slide

  23. rhysd/go-github-selfupdate
    motemen/gobump
    git-chglog/git-chglog
    hashicorp/go-version
    Recommended
    Partners

    View full-size slide

  24. Thank you!
    @micnncim

    View full-size slide