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
Capistrano
Search
Saugat Acharya
March 23, 2016
Technology
0
52
Capistrano
Automated deployments with Capistrano (Internal Talk at Leapfrog Technology)
Saugat Acharya
March 23, 2016
Tweet
Share
More Decks by Saugat Acharya
See All by Saugat Acharya
5-min-introduction-to-ASTs-in-javascript.pdf
mesaugat
0
180
Embracing Open Source
mesaugat
0
65
Why to JavaScript in 2018?
mesaugat
0
690
Asynchronous JavaScript
mesaugat
0
110
Other Decks in Technology
See All in Technology
「ふりかえりのふりかえり」をふりかえり、実のあるふりかえりにする
naitosatoshi
0
220
シン・Kafka / shin-kafka
oracle4engineer
PRO
7
2.7k
日本におけるデータエンジニアリングのこれまでとこれから
foursue
11
2.4k
Delivering Millions of Messages within seconds @ Duolingo
pelelgrino
0
340
Microsoft Cloudで開発ライフサイクルを保護する
kkamegawa
0
140
OpenTelemetry を使ったトレースエグザンプラーの活用 / otel-trace-exemplar
k6s4i53rx
2
640
社内勉強会運営のコツ
senoo
6
1.1k
SPI原点回帰論:事業課題とFour Keysの結節点を見出す実践的ソフトウェアプロセス改善 / DevOpsDays Tokyo 2024
visional_engineering_and_design
4
1.6k
株式会社EventHub・エンジニア採用資料
eventhub
0
1.9k
オーナーシップを持つ領域を明確にする
konifar
11
2.6k
クラウドサインにおけるプロダクトマネージャーの役割と開発プロセス / 20240410_cloudsign-PdM
bengo4com
1
680
TransitGatewayの基礎
toru_kubota
0
230
Featured
See All Featured
WebSockets: Embracing the real-time Web
robhawkes
59
7k
Clear Off the Table
cherdarchuk
83
310k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
5
1.5k
Designing the Hi-DPI Web
ddemaree
276
33k
It's Worth the Effort
3n
180
27k
Facilitating Awesome Meetings
lara
41
5.6k
jQuery: Nuts, Bolts and Bling
dougneiner
59
7.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
12
1.5k
Fireside Chat
paigeccino
20
2.6k
Infographics Made Easy
chrislema
237
18k
Practical Orchestrator
shlominoach
181
9.7k
Web Components: a chance to create the future
zenorocha
305
41k
Transcript
Deployment So#ware deployment is all of the ac5vi5es that make
a so#ware system available for use: • Copy/clone code • Run composer, npm, gulp • Run migra6ons • Reload the web server • No6fy about the deployment
Deployment Goals
1. One-click/command Deployment
2. Any'me/anywhere (Anyone with permission)
3. Zero Down+me Deployment
4. Reliable Rollbacks
5. Repeatable
6. Scalable
Why automated deployments?
1. Less error-prone Just run this command they said. It’s
straigh5orward they said. It can’t go wrong they said.
2. More (me for developing so3ware and less (me doing
stuff like this...
3. Release more frequently
A remote server automa,on and deployment tool wri4en in Ruby.
h"p:/ /capistranorb.com/
• Uses SSH • Does everything in parallel • Supports
Git, SVN, Mercurial • Easy to integrate with PHP projects • Mostly used with rails projects
Requirements • Ruby >= 1.9.3 • SSH access to all
servers with public keys (recommended)
Terminologies • Task • Recipe • Namespace • Role •
Stages
Task A concrete set of commands to execute.
Recipe A collec'on of tasks.
Namespace Organizes tasks within recipes and avoids naming collisions.
Role Servers can have different roles like: app, demo, web
Stages Refers to different set of environments (servers): dev, uat,
qa, staging, produc9on Can also include configura0on per stage or even different tasks.
Other Alterna+ves • Fabric - Python • Mina - Ruby
• Rocketeer - PHP • Shipit - Javascript • Deployer - PHP • CI Services like Travis CI, Circle CI, Jenkins
Demo
Thank you Let's hope your deployments won't be like this
from now on.