mirror of
https://github.com/Evolix/chexpire.git
synced 2024-06-26 19:12:53 +02:00
69 lines
2.3 KiB
Ruby
69 lines
2.3 KiB
Ruby
|
require 'yaml'
|
||
|
# server-based syntax
|
||
|
# ======================
|
||
|
# Defines a single server with a list of roles and multiple properties.
|
||
|
# You can define all roles on a single server, or split them:
|
||
|
|
||
|
config = YAML::load_file(File.join(__dir__, 'config.yml')).fetch("staging")
|
||
|
|
||
|
config.fetch("servers").each do |sc|
|
||
|
server sc.fetch("host"), user: sc.fetch("user"), roles: sc.fetch("roles")
|
||
|
# server "example.com", user: "deploy", roles: %w{app web}, other_property: :other_value
|
||
|
# server "db.example.com", user: "deploy", roles: %w{db}
|
||
|
end
|
||
|
|
||
|
# Default deploy_to directory is /var/www/my_app_name
|
||
|
set :deploy_to, config.fetch("deploy_to")
|
||
|
set :branch, "staging"
|
||
|
|
||
|
# role-based syntax
|
||
|
# ==================
|
||
|
|
||
|
# Defines a role with one or multiple servers. The primary server in each
|
||
|
# group is considered to be the first unless any hosts have the primary
|
||
|
# property set. Specify the username and a domain or IP for the server.
|
||
|
# Don't use `:all`, it's a meta role.
|
||
|
|
||
|
# role :app, %w{deploy@example.com}, my_property: :my_value
|
||
|
# role :web, %w{user1@primary.com user2@additional.com}, other_property: :other_value
|
||
|
# role :db, %w{deploy@example.com}
|
||
|
|
||
|
|
||
|
|
||
|
# Configuration
|
||
|
# =============
|
||
|
# You can set any configuration variable like in config/deploy.rb
|
||
|
# These variables are then only loaded and set in this stage.
|
||
|
# For available Capistrano configuration variables see the documentation page.
|
||
|
# http://capistranorb.com/documentation/getting-started/configuration/
|
||
|
# Feel free to add new variables to customise your setup.
|
||
|
|
||
|
|
||
|
|
||
|
# Custom SSH Options
|
||
|
# ==================
|
||
|
# You may pass any option but keep in mind that net/ssh understands a
|
||
|
# limited set of options, consult the Net::SSH documentation.
|
||
|
# http://net-ssh.github.io/net-ssh/classes/Net/SSH.html#method-c-start
|
||
|
#
|
||
|
# Global options
|
||
|
# --------------
|
||
|
# set :ssh_options, {
|
||
|
# keys: %w(/home/rlisowski/.ssh/id_rsa),
|
||
|
# forward_agent: false,
|
||
|
# auth_methods: %w(password)
|
||
|
# }
|
||
|
#
|
||
|
# The server-based syntax can be used to override options:
|
||
|
# ------------------------------------
|
||
|
# server "example.com",
|
||
|
# user: "user_name",
|
||
|
# roles: %w{web app},
|
||
|
# ssh_options: {
|
||
|
# user: "user_name", # overrides user setting above
|
||
|
# keys: %w(/home/user_name/.ssh/id_rsa),
|
||
|
# forward_agent: false,
|
||
|
# auth_methods: %w(publickey password)
|
||
|
# # password: "please use keys"
|
||
|
# }
|