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
Deploying Perl with Fabric and Carton
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Anthony
September 25, 2012
Programming
2
1.6k
Deploying Perl with Fabric and Carton
Lightning talk on Fabric and Carton
Anthony
September 25, 2012
Tweet
Share
More Decks by Anthony
See All by Anthony
ØMQ and Perl
agj
1
160
Other Decks in Programming
See All in Programming
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
CSC307 Lecture 04
javiergs
PRO
0
660
CSC307 Lecture 10
javiergs
PRO
1
660
なぜSQLはAIぽく見えるのか/why does SQL look AI like
florets1
0
480
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
210
AI時代のキャリアプラン「技術の引力」からの脱出と「問い」へのいざない / tech-gravity
minodriven
21
7.4k
今から始めるClaude Code超入門
448jp
8
9.1k
Oxlint JS plugins
kazupon
1
1k
ノイジーネイバー問題を解決する 公平なキューイング
occhi
0
110
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
510
atmaCup #23でAIコーディングを活用した話
ml_bear
1
130
2026年 エンジニアリング自己学習法
yumechi
0
140
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
Documentation Writing (for coders)
carmenintech
77
5.3k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
53
Context Engineering - Making Every Token Count
addyosmani
9
670
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
90
Ruling the World: When Life Gets Gamed
codingconduct
0
150
Accessibility Awareness
sabderemane
0
58
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
290
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.6k
Transcript
Deploying Perl with Fabric and Carton Anthony Johnson <
[email protected]
>
Deployment Steps Copy files to destination Install application dependencies Restart
services, and post-install cleanup
Deploying Files Check files out from VCS For git snapshot
`git checkout-index` Rsync files with Fabric
Fabric Python SSH wrapper framework Exposes script functions as commands
Handles file and shell operations, rsync Parallelized execution
@task def deploy(): cmd = 'git checkout-index -f -a --prefix=/tmp/foobar'
with lcd('/path/project'): local(cmd) rsync_project('/path/site', '/tmp/foobar') with localenv(): with cd('/path/site'): run('carton install') @task def bootstrap(): run('cpanm -L /path/env App::local::lib::helper') run('cpanm -L /path/env Carton') @contextmanager def localenv(): with settings(shell='/path/env/bin/localenv /bin/sh -c'): yield (horrible, incomplete example)
fab -H server bootstrap deploy
App::local::lib::helper Alters shell environment, points to local::lib Fabric uses helper
as shell to execute
Carton Wraps cpanminus Per-application environments Reproducible environments Module version locking
- pip, bundler Single JSON file of dependencies
carton install carton install --deployment Installs modules from Makefile.PL/Build.PL Installs
modules from carton.lock
carton bundle carton install --cached Download and cache modules Install
cached modules