Explorar o código

Add capistrano to development environment

Eugen Rochko %!s(int64=7) %!d(string=hai) anos
pai
achega
a2a85e8549
Modificáronse 5 ficheiros con 62 adicións e 0 borrados
  1. 3 0
      .gitignore
  2. 13 0
      Capfile
  3. 5 0
      Gemfile
  4. 30 0
      Gemfile.lock
  5. 11 0
      config/deploy.rb

+ 3 - 0
.gitignore

@@ -25,3 +25,6 @@ neo4j/
 
 # Ignore Vagrant files
 .vagrant/
+
+# Ignore Capistrano customizations
+config/deploy/*

+ 13 - 0
Capfile

@@ -0,0 +1,13 @@
+require 'capistrano/setup'
+require 'capistrano/deploy'
+require 'capistrano/scm/git'
+
+install_plugin Capistrano::SCM::Git
+
+require 'capistrano/rbenv'
+require 'capistrano/bundler'
+require 'capistrano/yarn'
+require 'capistrano/rails/assets'
+require 'capistrano/rails/migrations'
+
+Dir.glob('lib/capistrano/tasks/*.rake').each { |r| import r }

+ 5 - 0
Gemfile

@@ -78,6 +78,11 @@ group :development do
   gem 'letter_opener_web'
   gem 'bullet'
   gem 'active_record_query_trace'
+
+  gem 'capistrano'
+  gem 'capistrano-rails'
+  gem 'capistrano-rbenv'
+  gem 'capistrano-yarn'
 end
 
 group :production do

+ 30 - 0
Gemfile.lock

@@ -41,6 +41,8 @@ GEM
       tzinfo (~> 1.1)
     addressable (2.5.0)
       public_suffix (~> 2.0, >= 2.0.2)
+    airbrussh (1.1.2)
+      sshkit (>= 1.6.1, != 1.7.0)
     arel (7.1.4)
     ast (2.3.0)
     attr_encrypted (3.0.3)
@@ -78,6 +80,24 @@ GEM
     bullet (5.3.0)
       activesupport (>= 3.0.0)
       uniform_notifier (~> 1.10.0)
+    capistrano (3.7.2)
+      airbrussh (>= 1.0.0)
+      capistrano-harrow
+      i18n
+      rake (>= 10.0.0)
+      sshkit (>= 1.9.0)
+    capistrano-bundler (1.2.0)
+      capistrano (~> 3.1)
+      sshkit (~> 1.2)
+    capistrano-harrow (0.5.3)
+    capistrano-rails (1.2.2)
+      capistrano (~> 3.1)
+      capistrano-bundler (~> 1.1)
+    capistrano-rbenv (2.1.0)
+      capistrano (~> 3.1)
+      sshkit (~> 1.3)
+    capistrano-yarn (2.0.2)
+      capistrano (~> 3.0)
     chunky_png (1.3.8)
     climate_control (0.1.0)
     cocaine (0.5.8)
@@ -213,6 +233,9 @@ GEM
     minitest (5.10.1)
     multi_json (1.12.1)
     multi_xml (0.6.0)
+    net-scp (1.2.1)
+      net-ssh (>= 2.6.5)
+    net-ssh (4.0.1)
     nio4r (1.2.1)
     nokogiri (1.7.0.1)
       mini_portile2 (~> 2.1.0)
@@ -389,6 +412,9 @@ GEM
       actionpack (>= 4.0)
       activesupport (>= 4.0)
       sprockets (>= 3.0.0)
+    sshkit (1.11.5)
+      net-scp (>= 1.1.2)
+      net-ssh (>= 2.8.0)
     statsd-instrument (2.1.2)
     temple (0.7.7)
     term-ansicolor (1.4.0)
@@ -433,6 +459,10 @@ DEPENDENCIES
   binding_of_caller
   browserify-rails
   bullet
+  capistrano
+  capistrano-rails
+  capistrano-rbenv
+  capistrano-yarn
   coffee-rails (~> 4.1.0)
   devise
   devise-two-factor

+ 11 - 0
config/deploy.rb

@@ -0,0 +1,11 @@
+lock '3.7.2'
+
+set :application, 'mastodon'
+set :repo_url, 'https://github.com/tootsuite/mastodon.git'
+set :branch, 'master'
+set :rbenv_type, :user
+set :rbenv_ruby, File.read('.ruby-version').strip
+set :migration_role, :app
+
+append :linked_files, '.env.production'
+append :linked_dirs, 'vendor/bundle', 'node_modules', 'public/system'