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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jakub Jarosz
July 15, 2021
Programming
380
0
Share
Releasing Go Apps with GoReleaser
Jakub Jarosz
July 15, 2021
More Decks by Jakub Jarosz
See All by Jakub Jarosz
Benchmarking - First Steps
jakubjarosz
0
68
Communicating with Tests
jakubjarosz
0
160
Testing Go CLI Apps with TestScript
jakubjarosz
0
260
Testing Go Code
jakubjarosz
0
250
Building Environments with Ansible
jakubjarosz
0
410
a quick look at webtest & pytest
jakubjarosz
1
1.2k
Data Driven Integration Testing
jakubjarosz
2
320
Multi Mechanize
jakubjarosz
0
150
Embracing Python for Software Testing - BDD Style
jakubjarosz
0
390
Other Decks in Programming
See All in Programming
net-httpのHTTP/2対応について
naruse
0
380
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
140
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
11
3.1k
AIエージェントの隔離技術の徹底比較
kawayu
0
450
SPMマルチモジュールで テストカバレッジを取得する技法
yosshi4486
0
130
CSC307 Lecture 17
javiergs
PRO
0
290
TSKaigi2026-静的解析への投資がAI時代のコード品質を支える ── カスタムESLintルールの設計と運用
hayatokudou
7
1.3k
Oxlintのカスタムルールの現況
syumai
5
920
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
290
Inspired By RubyKaigi (EN)
atzzcokek
0
460
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.3k
Lessons from Spec-Driven Development
simas
PRO
0
110
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
Designing Powerful Visuals for Engaging Learning
tmiket
1
390
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
540
KATA
mclloyd
PRO
35
15k
How to make the Groovebox
asonas
2
2.2k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
570
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