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
350
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
26
Communicating with Tests
jakubjarosz
0
110
Testing Go CLI Apps with TestScript
jakubjarosz
0
220
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
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
3
1.5k
階層化自動テストで開発に機動力を
ickx
1
420
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
3
260
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
6
1.3k
バイブスあるコーディングで ~PHP~ 便利ツールをつくるプラクティス
uzulla
1
280
構文解析器入門
ydah
7
1.9k
AIのメモリー
watany
11
990
レトロゲームから学ぶ通信技術の歴史
kimkim0106
0
130
AIコーディングエージェント全社導入とセキュリティ対策
hikaruegashira
14
7.8k
ソフトウェア設計とAI技術の活用
masuda220
PRO
25
6.8k
Caude codeで爆速開発
codelynx
0
100
코딩 에이전트 체크리스트: Claude Code ver.
nacyot
0
990
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Thoughts on Productivity
jonyablonski
69
4.7k
How to Ace a Technical Interview
jacobian
278
23k
What's in a price? How to price your products and services
michaelherold
246
12k
Building Applications with DynamoDB
mza
95
6.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Docker and Python
trallard
45
3.5k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
Code Review Best Practice
trishagee
69
19k
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