mirror of
https://github.com/capistrano/capistrano
synced 2023-03-27 23:21:18 -04:00
232 lines
12 KiB
HTML
232 lines
12 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>A remote server automation and deployment tool written in Ruby.</title>
|
|
<link href='http://fonts.googleapis.com/css?family=Enriqueta' rel='stylesheet' type='text/css'>
|
|
<script type="text/javascript" src="//use.typekit.net/itm5ubu.js"></script>
|
|
<script type="text/javascript">try{Typekit.load();}catch(e){}</script>
|
|
<link rel="stylesheet" href="/css/foundation.css" />
|
|
<link rel="stylesheet" href="/css/capistrano.css">
|
|
<link rel="stylesheet" href="/css/social_foundicons.css" />
|
|
<link rel="stylesheet" href="/css/okaidia.css">
|
|
<link rel="stylesheet" href="/css/syntax.css">
|
|
<script src="/js/vendor/custom.modernizr.js"></script>
|
|
</head>
|
|
<body>
|
|
|
|
<script type="text/javascript">
|
|
var _gauges = _gauges || [];
|
|
(function() {
|
|
var t = document.createElement('script');
|
|
t.type = 'text/javascript';
|
|
t.async = true;
|
|
t.id = 'gauges-tracker';
|
|
t.setAttribute('data-site-id', '51c83c32613f5d7df70000bc');
|
|
t.src = '//secure.gaug.es/track.js';
|
|
var s = document.getElementsByTagName('script')[0];
|
|
s.parentNode.insertBefore(t, s);
|
|
})();
|
|
</script>
|
|
|
|
<script type="text/javascript">
|
|
setTimeout(function(){var a=document.createElement("script");
|
|
var b=document.getElementsByTagName("script")[0];
|
|
a.src=document.location.protocol+"//dnn506yrbagrg.cloudfront.net/pages/scripts/0017/6418.js?"+Math.floor(new Date().getTime()/3600000);
|
|
a.async=true;a.type="text/javascript";b.parentNode.insertBefore(a,b)}, 1);
|
|
</script>
|
|
|
|
<script>
|
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
|
|
|
ga('create', 'UA-41970098-1', 'capistranorb.com');
|
|
ga('send', 'pageview');
|
|
</script>
|
|
<div class="header">
|
|
<div class="row">
|
|
<div class="large-12 column">
|
|
<a href="/" class="brand">
|
|
<img src="/images/CapistranoLogo.png" />
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="row">
|
|
<div class="large-4 columns">
|
|
<ul class="side-nav">
|
|
<li><a href="https://www.harrow.io/" class="advertisment"><span class="label label-important">New</span> Hosted Capistrano for Teams</a></li>
|
|
<li class="divider"></li>
|
|
<h5>Overview</h5>
|
|
<li><a href="/documentation/overview/what-is-capistrano/">What is Capistrano?</a></li>
|
|
<!--<li><a href="/documentation/overview/introductory-demo-video/">Introductory Demo Video</a></li>-->
|
|
<li class="divider"></li>
|
|
<h5>Getting Started</h5>
|
|
<li><a href="https://github.com/capistrano/capistrano/blob/master/README.md">The Readme, start here!</a></li>
|
|
<li><a href="/documentation/getting-started/installation/">Installation</a></li>
|
|
<li><a href="/documentation/getting-started/preparing-your-application/">Preparing Your Application</a></li>
|
|
<li><a href="/documentation/getting-started/authentication-and-authorisation/">Authentication & Authorisation</a></li>
|
|
<li><a href="/documentation/getting-started/cold-start/">Cold Start</a></li>
|
|
<li><a href="/documentation/getting-started/flow/">Flow</a></li>
|
|
<li><a href="/documentation/getting-started/rollbacks/">Rollbacks</a></li>
|
|
<li class="divider"></li>
|
|
<h5>Advanced Features</h5>
|
|
<li><a href="/documentation/advanced-features/ssh-kit">Remote commands with SSHKit</li>
|
|
<li><a href="/documentation/advanced-features/remote-file/">Remote file task</a></li>
|
|
<li><a href="/documentation/advanced-features/role-filtering/">Role filtering</a></li>
|
|
<li><a href="/documentation/advanced-features/host-filtering/">Host filtering</a></li>
|
|
<li><a href="/documentation/advanced-features/capistrano-pure-ruby/">Using Capistrano from pure Ruby</a></li>
|
|
<li class="divider"></li>
|
|
<h5>Framework Extensions</h5>
|
|
<li><a href="/documentation/frameworks/ruby-on-rails/">Ruby on Rails</a></li>
|
|
<li><a href="/documentation/frameworks/bundler/">Bundler</a></li>
|
|
<li><a href="/documentation/frameworks/rbenv-rvm-chruby/">Rbenv & RVM & chruby</a></li>
|
|
<!--<li class="divider"></li> -->
|
|
<!--<h5>Troubleshooting</h5> -->
|
|
<!--<li><a href="/documentation/troubleshooting/authentication/">SCM (Git) Authentication</a></li>-->
|
|
<!--<li><a href="/documentation/troubleshooting/connectivity/">Connectivity</a></li> -->
|
|
<!--[><li><a href="/documentation/troubleshooting/gateway-servers/">Gateway Servers</a></li><] -->
|
|
<!--<li><a href="/documentation/troubleshooting/agent-forwarding/">Agent Forwarding</a></li> -->
|
|
<!--<li><a href="/documentation/troubleshooting/sudo-password/">`sudo` Password</a></li> -->
|
|
<!--<li><a href="/documentation/troubleshooting/rvm-rbenv-nvm/">RVM, `rbenv` And `nvm`</a></li> -->
|
|
<li class="divider"></li>
|
|
<h5>FAQ</h5>
|
|
<li><a href="/documentation/faq/why-does-something-work-in-my-ssh-session-but-not-in-capistrano/">Why Does Something Work In An SSH Session, But Not In Capistrano?</a></li>
|
|
<!--<li><a href="/documentation/faq/should-i-use-capistrano-to-provision-my-servers/">Should I Use Capistrano To Provision My Servers?</a></li>-->
|
|
<li><a href="http://lee.hambley.name/2013/06/11/using-capistrano-v3-with-chef.html">Should I Use Capistrano To Provision My Servers?</a></li>
|
|
<!--<li class="divider"></li> -->
|
|
<!--<h5>Power Use-Cases</h5> -->
|
|
<!--<li><a href="/documentation/power-use-cases/integration-with-rake/">Integration With Rake</a></li> -->
|
|
<!--<li><a href="/documentation/power-use-cases/driving-tools-such-as-chef-solo/">Driving Tools Such As <em>Chef Solo</em></a></li>-->
|
|
<li class="divider"></li>
|
|
<h5>Legacy Documentation</h5>
|
|
<li><a href="https://github.com/capistrano/capistrano/wiki">Capistrano
|
|
v2</a></li>
|
|
<li class="divider"></li>
|
|
<h5>Recent Announcements</h5>
|
|
|
|
<li><a href="/2013/06/01/release-announcement.html"><span class="post-date">01 Jun 2013</span> Capistrano Version 3 Release Announcement</a></li>
|
|
|
|
</ul>
|
|
|
|
</div>
|
|
<div class="large-8 column">
|
|
<div class="content">
|
|
<h2>A remote server automation and deployment tool written in Ruby.</h2>
|
|
<h3 id="toc_0">A Simple Task</h3>
|
|
|
|
<div class="highlight"><pre><code class="ruby"><span class="n">role</span> <span class="ss">:demo</span><span class="p">,</span> <span class="sx">%w{example.com example.org example.net}</span>
|
|
<span class="n">task</span> <span class="ss">:uptime</span> <span class="k">do</span> <span class="o">|</span><span class="n">host</span><span class="o">|</span>
|
|
<span class="n">on</span> <span class="n">roles</span><span class="p">(</span><span class="ss">:demo</span><span class="p">),</span> <span class="k">in</span><span class="p">:</span> <span class="ss">:parallel</span> <span class="k">do</span>
|
|
<span class="n">uptime</span> <span class="o">=</span> <span class="n">capture</span><span class="p">(</span><span class="ss">:uptime</span><span class="p">)</span>
|
|
<span class="nb">puts</span> <span class="s2">"</span><span class="si">#{</span><span class="n">host</span><span class="o">.</span><span class="n">hostname</span><span class="si">}</span><span class="s2"> reports: </span><span class="si">#{</span><span class="n">uptime</span><span class="si">}</span><span class="s2">"</span>
|
|
<span class="k">end</span>
|
|
<span class="k">end</span>
|
|
</code></pre></div>
|
|
|
|
<p>Capistrano extends the <em>Rake</em> DSL with methods specific to running commands
|
|
<code>on()</code> servers.</p>
|
|
|
|
<h3 id="toc_1">For Any Language</h3>
|
|
|
|
<p>Capistrano is written in Ruby, but it can easily be used to deploy any
|
|
language.</p>
|
|
|
|
<p>If your language or framework has special deployment requirements, Capistrano can easily be
|
|
extended to support them.</p>
|
|
|
|
<h3 id="toc_2">Source Code</h3>
|
|
|
|
<div class="github-widget" data-repo="capistrano/capistrano"></div>
|
|
|
|
<div class="github-widget" data-repo="capistrano/rails"></div>
|
|
|
|
<div class="github-widget" data-repo="capistrano/documentation"></div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!--<div class="container"> -->
|
|
<!-- <h1 class="title"><a href="/">Capistrano</a></h1>-->
|
|
<!-- <a class="extra" href="/">home</a> -->
|
|
<!-- </div> -->
|
|
|
|
<!-- <h3 id="toc_0">A Simple Task</h3>
|
|
|
|
<div class="highlight"><pre><code class="ruby"><span class="n">role</span> <span class="ss">:demo</span><span class="p">,</span> <span class="sx">%w{example.com example.org example.net}</span>
|
|
<span class="n">task</span> <span class="ss">:uptime</span> <span class="k">do</span> <span class="o">|</span><span class="n">host</span><span class="o">|</span>
|
|
<span class="n">on</span> <span class="n">roles</span><span class="p">(</span><span class="ss">:demo</span><span class="p">),</span> <span class="k">in</span><span class="p">:</span> <span class="ss">:parallel</span> <span class="k">do</span>
|
|
<span class="n">uptime</span> <span class="o">=</span> <span class="n">capture</span><span class="p">(</span><span class="ss">:uptime</span><span class="p">)</span>
|
|
<span class="nb">puts</span> <span class="s2">"</span><span class="si">#{</span><span class="n">host</span><span class="o">.</span><span class="n">hostname</span><span class="si">}</span><span class="s2"> reports: </span><span class="si">#{</span><span class="n">uptime</span><span class="si">}</span><span class="s2">"</span>
|
|
<span class="k">end</span>
|
|
<span class="k">end</span>
|
|
</code></pre></div>
|
|
|
|
<p>Capistrano extends the <em>Rake</em> DSL with methods specific to running commands
|
|
<code>on()</code> servers.</p>
|
|
|
|
<h3 id="toc_1">For Any Language</h3>
|
|
|
|
<p>Capistrano is written in Ruby, but it can easily be used to deploy any
|
|
language.</p>
|
|
|
|
<p>If your language or framework has special deployment requirements, Capistrano can easily be
|
|
extended to support them.</p>
|
|
|
|
<h3 id="toc_2">Source Code</h3>
|
|
|
|
<div class="github-widget" data-repo="capistrano/capistrano"></div>
|
|
|
|
<div class="github-widget" data-repo="capistrano/rails"></div>
|
|
|
|
<div class="github-widget" data-repo="capistrano/documentation"></div>
|
|
-->
|
|
|
|
<!--</div> [> /container <] -->
|
|
|
|
<footer>
|
|
<div class="row">
|
|
<div class="large-4 columns">
|
|
<ul>
|
|
<li><a href="/documentation/overview/what-is-capistrano/">About Capistrano</a></li>
|
|
<li><a href="https://github.com/capistrano/capistrano/blob/master/CONTRIBUTING.md">Contributing</a></li>
|
|
<li><a href="https://rubygems.org/gems/capistrano/versions">Releases</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="large-4 columns">
|
|
<ul>
|
|
<li><a href="http://stackoverflow.com/questions/tagged/capistrano">StackOverflow</a></li>
|
|
<li><a href="https://groups.google.com/forum/#!forum/capistrano">Mailing List</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="large-4 columns">
|
|
<ul class="social icons">
|
|
<li><a href="//twitter.com/capistranorb"><i class="foundicon-twitter"></i></a></li>
|
|
<li><a href="//github.com/capistrano"><i class="foundicon-github"></i></a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
|
|
|
|
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
|
|
<script>
|
|
if (!window.jQuery) {
|
|
document.write('<script src="/js/jquery-1.7.min"><\/script>');
|
|
}
|
|
</script>
|
|
<script src="/js/jquery.githubRepoWidget.min.js"></script>
|
|
<script src="/js/prism.js"></script>
|
|
<script src="/js/prism.ruby.js"></script>
|
|
<a href="https://github.com/capistrano/documentation"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_white_ffffff.png" alt="Fork me on GitHub"></a>
|
|
</body>
|
|
</html>
|