Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Releasing Go Apps with GoReleaser
Search
Jakub Jarosz
July 15, 2021
Programming
0
360
Releasing Go Apps with GoReleaser
Jakub Jarosz
July 15, 2021
Tweet
Share
More Decks by Jakub Jarosz
See All by Jakub Jarosz
Benchmarking - First Steps
jakubjarosz
0
29
Communicating with Tests
jakubjarosz
0
120
Testing Go CLI Apps with TestScript
jakubjarosz
0
230
Testing Go Code
jakubjarosz
0
220
Building Environments with Ansible
jakubjarosz
0
390
a quick look at webtest & pytest
jakubjarosz
1
1.1k
Data Driven Integration Testing
jakubjarosz
2
310
Multi Mechanize
jakubjarosz
0
140
Embracing Python for Software Testing - BDD Style
jakubjarosz
0
370
Other Decks in Programming
See All in Programming
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
680
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
120
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.2k
AIレビュアーをスケールさせるには / Scaling AI Reviewers
technuma
2
240
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
1k
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
0
580
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
Claude Codeで実装以外の開発フロー、どこまで自動化できるか?失敗と成功
ndadayo
4
1.9k
rage against annotate_predecessor
junk0612
0
160
Design Foundational Data Engineering Observability
sucitw
3
160
ぬるぬる動かせ! Riveでアニメーション実装🐾
kno3a87
1
110
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
1
110
Featured
See All Featured
Scaling GitHub
holman
463
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Become a Pro
speakerdeck
PRO
29
5.5k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
111
20k
Docker and Python
trallard
45
3.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Building Adaptive Systems
keathley
43
2.7k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Transcript
Releasing Go Applications with GoReleaser Jakub Jarosz https://jarosz.dev Golang Live
Webinar - July 2021
agenda 1. Introduction 2. Business cases 3. Release patterns 4.
Examples
functionality Cross compile Go apps Release to GitHub, GitLab Release
to S3, Artifactory Create Docker images Create OS packages and more...
Business Case “Rusted Pipe”
“Rusted Pipe” • Utilities management • GIS • Digital Maps
• Data collection
“Rusted Pipe” • GIS Officer • GIS Developer • IT
Ops
company structure IT Department Business Units
software delivery - external consulting deploy directly to company servers
company structure - in-house development IT Department Development BU
new projects - data collection Data Processing Department Data Collection
Department GIS Department
new projects - data collection Data Processing Department Data Collection
Department GIS Department Automation
goreleaser - pattern: local build build locally, copy to a
shared folder Automation
goreleaser - pattern: git + tags commit to a git
repository, create release, users clone the released version and run locally Release v0.1.0 Automation
demo • build locally
goreleaser - pattern: git + tags commit to a git
repository, create release, users clone the released version and run locally Release v0.1.0 Automation
goreleaser - CI pipelines commit to a git repository, CI
runs automatically, users install released version and run locally Release v0.2.0
goreleaser - build OS packages create packages for multiple OS,
users install and and run locally Release v0.1.0
demo • Release to GitHub • GitHub Actions • build
OS packages • Linux • Darwin • Windows
resources Demo examples: https://github.com/RustedPipe Official website: goreleaser.com Conference talks (YT):
https://tinyurl.com/nbsa4x83
gopherize.me Artwork by Ashley McNamara inspired by Renee French Web
app by Mat Ryer
Thank You! Jakub Jarosz https://jarosz.dev twitter.com/qba73