summaryrefslogtreecommitdiff
path: root/puppet/modules/couchdb/manifests/mirror_db.pp
blob: b07b6749355569ed949f354efaf88e2a2d0514f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
define couchdb::mirror_db (
  $host='127.0.0.1:5984',
  $from='',
  $to='',
  $user='replication',
  $role='replication'
  )
{
  $source = "${from}/${name}"
  if $to == '' { $target = $name }
  else { $target = "${to}/${name}" }

  couchdb::document { "${name}_replication":
    db      => "_replicator",
    id      => "${name}_replication",
    netrc   => "/etc/couchdb/couchdb-${user}.netrc",
    host    => $host,
    data    => "{ \"source\": \"${source}\", \"target\": \"${target}\", \"continuous\": true, \"user_ctx\": { \"name\": \"${user}\", \"roles\": [\"${role}\"] }, \"owner\": \"${user}\" }",
    require => Couchdb::Query["create_db_${name}"]
  }
}