summaryrefslogtreecommitdiff
path: root/manifests/mirror_db.pp
blob: a6ba54922c37fc3291f53b1166cfaeb9c1195a82 (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}\"] } }",
    require => Couchdb::Query["create_db_${name}"]
  }
}