aboutsummaryrefslogtreecommitdiffhomepage
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/deploy.rb66
-rw-r--r--config/deploy/production.rb61
-rw-r--r--config/deploy/staging.rb64
3 files changed, 191 insertions, 0 deletions
diff --git a/config/deploy.rb b/config/deploy.rb
new file mode 100644
index 00000000..67eb0c9c
--- /dev/null
+++ b/config/deploy.rb
@@ -0,0 +1,66 @@
1# config valid only for current version of Capistrano
2lock '3.4.0'
3
4set :application, 'wallabag'
5set :repo_url, 'git@github.com:wallabag/wallabag.git'
6
7set :ssh_user, 'ssh_user'
8server 'server_ip', user: fetch(:ssh_user), roles: %w{web app db}
9
10set :scm, :git
11
12set :format, :pretty
13set :log_level, :info
14# set :log_level, :debug
15
16set :composer_install_flags, '--no-dev --prefer-dist --no-interaction --optimize-autoloader'
17
18set :linked_files, %w{app/config/parameters.yml}
19set :linked_dirs, %w{app/logs web/uploads}
20
21set :keep_releases, 3
22
23after 'deploy:finishing', 'deploy:cleanup'
24
25# Default branch is :master
26# ask :branch, `git rev-parse --abbrev-ref HEAD`.chomp
27
28# Default deploy_to directory is /var/www/my_app_name
29# set :deploy_to, '/var/www/my_app_name'
30
31# Default value for :scm is :git
32# set :scm, :git
33
34# Default value for :format is :pretty
35# set :format, :pretty
36
37# Default value for :log_level is :debug
38# set :log_level, :debug
39
40# Default value for :pty is false
41# set :pty, true
42
43# Default value for :linked_files is []
44# set :linked_files, fetch(:linked_files, []).push('config/database.yml', 'config/secrets.yml')
45
46# Default value for linked_dirs is []
47# set :linked_dirs, fetch(:linked_dirs, []).push('log', 'tmp/pids', 'tmp/cache', 'tmp/sockets', 'public/system')
48
49# Default value for default_env is {}
50# set :default_env, { path: "/opt/ruby/bin:$PATH" }
51
52# Default value for keep_releases is 5
53# set :keep_releases, 5
54
55namespace :deploy do
56
57 after :restart, :clear_cache do
58 on roles(:web), in: :groups, limit: 3, wait: 10 do
59 # Here we can do anything such as:
60 # within release_path do
61 # execute :rake, 'cache:clear'
62 # end
63 end
64 end
65
66end
diff --git a/config/deploy/production.rb b/config/deploy/production.rb
new file mode 100644
index 00000000..4fc06fa9
--- /dev/null
+++ b/config/deploy/production.rb
@@ -0,0 +1,61 @@
1# server-based syntax
2# ======================
3# Defines a single server with a list of roles and multiple properties.
4# You can define all roles on a single server, or split them:
5
6# server 'example.com', user: 'deploy', roles: %w{app db web}, my_property: :my_value
7# server 'example.com', user: 'deploy', roles: %w{app web}, other_property: :other_value
8# server 'db.example.com', user: 'deploy', roles: %w{db}
9
10
11
12# role-based syntax
13# ==================
14
15# Defines a role with one or multiple servers. The primary server in each
16# group is considered to be the first unless any hosts have the primary
17# property set. Specify the username and a domain or IP for the server.
18# Don't use `:all`, it's a meta role.
19
20# role :app, %w{deploy@example.com}, my_property: :my_value
21# role :web, %w{user1@primary.com user2@additional.com}, other_property: :other_value
22# role :db, %w{deploy@example.com}
23
24
25
26# Configuration
27# =============
28# You can set any configuration variable like in config/deploy.rb
29# These variables are then only loaded and set in this stage.
30# For available Capistrano configuration variables see the documentation page.
31# http://capistranorb.com/documentation/getting-started/configuration/
32# Feel free to add new variables to customise your setup.
33
34
35
36# Custom SSH Options
37# ==================
38# You may pass any option but keep in mind that net/ssh understands a
39# limited set of options, consult the Net::SSH documentation.
40# http://net-ssh.github.io/net-ssh/classes/Net/SSH.html#method-c-start
41#
42# Global options
43# --------------
44# set :ssh_options, {
45# keys: %w(/home/rlisowski/.ssh/id_rsa),
46# forward_agent: false,
47# auth_methods: %w(password)
48# }
49#
50# The server-based syntax can be used to override options:
51# ------------------------------------
52# server 'example.com',
53# user: 'user_name',
54# roles: %w{web app},
55# ssh_options: {
56# user: 'user_name', # overrides user setting above
57# keys: %w(/home/user_name/.ssh/id_rsa),
58# forward_agent: false,
59# auth_methods: %w(publickey password)
60# # password: 'please use keys'
61# }
diff --git a/config/deploy/staging.rb b/config/deploy/staging.rb
new file mode 100644
index 00000000..76e23bb7
--- /dev/null
+++ b/config/deploy/staging.rb
@@ -0,0 +1,64 @@
1# server-based syntax
2# ======================
3# Defines a single server with a list of roles and multiple properties.
4# You can define all roles on a single server, or split them:
5
6set :branch, 'v2'
7set :deploy_to, '/var/www/'
8
9# server 'example.com', user: 'deploy', roles: %w{app db web}, my_property: :my_value
10# server 'example.com', user: 'deploy', roles: %w{app web}, other_property: :other_value
11# server 'db.example.com', user: 'deploy', roles: %w{db}
12
13
14
15# role-based syntax
16# ==================
17
18# Defines a role with one or multiple servers. The primary server in each
19# group is considered to be the first unless any hosts have the primary
20# property set. Specify the username and a domain or IP for the server.
21# Don't use `:all`, it's a meta role.
22
23# role :app, %w{deploy@example.com}, my_property: :my_value
24# role :web, %w{user1@primary.com user2@additional.com}, other_property: :other_value
25# role :db, %w{deploy@example.com}
26
27
28
29# Configuration
30# =============
31# You can set any configuration variable like in config/deploy.rb
32# These variables are then only loaded and set in this stage.
33# For available Capistrano configuration variables see the documentation page.
34# http://capistranorb.com/documentation/getting-started/configuration/
35# Feel free to add new variables to customise your setup.
36
37
38
39# Custom SSH Options
40# ==================
41# You may pass any option but keep in mind that net/ssh understands a
42# limited set of options, consult the Net::SSH documentation.
43# http://net-ssh.github.io/net-ssh/classes/Net/SSH.html#method-c-start
44#
45# Global options
46# --------------
47# set :ssh_options, {
48# keys: %w(/home/rlisowski/.ssh/id_rsa),
49# forward_agent: false,
50# auth_methods: %w(password)
51# }
52#
53# The server-based syntax can be used to override options:
54# ------------------------------------
55# server 'example.com',
56# user: 'user_name',
57# roles: %w{web app},
58# ssh_options: {
59# user: 'user_name', # overrides user setting above
60# keys: %w(/home/user_name/.ssh/id_rsa),
61# forward_agent: false,
62# auth_methods: %w(publickey password)
63# # password: 'please use keys'
64# }