dev/provisioning/modules/sysconfig/manifests/handle.pp
author ymh <ymh.work@gmail.com>
Tue, 12 Apr 2016 13:05:43 +0200
changeset 150 cb4c47eda2db
parent 146 dc4d1cdc47e0
child 153 338bcc78d431
permissions -rw-r--r--
finish handle support in dev VM
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
class sysconfig::handle (
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     2
    $hdl_host           = hiera('sysconfig::params::hdl_host', $sysconfig::params::hdl_host),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     3
    $hdl_user           = hiera('sysconfig::params::hdl_user', $sysconfig::params::hdl_user),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     4
    $hdl_srv_port       = hiera('sysconfig::params::hdl_srv_port', $sysconfig::params::hdl_srv_port),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     5
    $hdl_web_port       = hiera('sysconfig::params::hdl_web_port', $sysconfig::params::hdl_web_port),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     6
    $hdl_key_pswd       = hiera('sysconfig::params::hdl_key_pswd', $sysconfig::params::hdl_key_pswd),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     7
    $hdl_prefix         = hiera('sysconfig::params::hdl_prefix', $sysconfig::params::hdl_prefix),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     8
    $hdl_prefix_admin   = hiera('sysconfig::params::hdl_prefix_admin', $sysconfig::params::hdl_prefix_admin),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
     9
    $hdl_db_name        = hiera('sysconfig::params::hdl_db_name', $sysconfig::params::hdl_db_name),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    10
    $db_user            = hiera('sysconfig::params::db_user', $sysconfig::params::db_user),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    11
    $db_pw              = hiera('sysconfig::params::db_pw', $sysconfig::params::db_pw),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    12
    $db_host            = hiera('sysconfig::params::db_host', $sysconfig::params::db_host)
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
) inherits sysconfig::params {
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
    # iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 1080
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
    notify {'handle': name => "\$hdl_host : ${hdl_host}, \$hdl_srv_port : ${hdl_srv_port}, \$hdl_web_port : ${hdl_web_port}", withpath => true }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
    $handle_dirs = [
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
        "/opt/handle",
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    21
        "/opt/handle/sbin"
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
    ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
    group { "$hdl_user":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
        ensure => present,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
    user { "handle user":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
        name => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
        ensure => present,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
        gid => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
        system => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
        home => '/var/lib/handle',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
        managehome => false,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
        shell => '/sbin/nologin'
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
    file { "/var/lib/handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
        ensure => directory,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
        group => "$hdl_user"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
    file { $handle_dirs:
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
        ensure => directory,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
    }->
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    44
    file { "/tmp/handle":
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    45
        ensure => directory,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    46
        owner => "$hdl_user",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    47
        group => "$hdl_user"
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    48
    }->
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
    archive { 'handle-8.1':
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
        ensure => present,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
        url => "http://www.handle.net/hnr-source/hsj-8.1.0.tar.gz",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
        checksum => false,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
        follow_redirects => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
        strip_components => 1,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
        target => "/opt/handle",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
        src_target => '/tmp',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
        timeout => 500,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
    file { "/opt/handle/sbin/start_handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
        mode => "0750",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
        source => "puppet:///modules/sysconfig/handle/start_handle",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    64
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
    file { '/opt/handle/lib/mysql-connector-java-5.1.38-bin.jar':
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
        source => "puppet:///modules/sysconfig/handle/mysql-connector-java-5.1.38-bin.jar",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
        mode => "0644"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
    file { "/tmp/handle/handle_init_script.exp":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
        content => template("sysconfig/handle/handle_script.exp.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
        mode => "0750"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
    exec { "init-handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
        command => "/tmp/handle/handle_init_script.exp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
        cwd => "/opt/handle/bin",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
        provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
        creates => "/var/lib/handle/sitebndl.zip",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
        user => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
        notify => Exec['rm-tmp-handle'],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
        require => [Package['java-install'], Package['expect']]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
    file { "/var/lib/handle/config.dct":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
        content => template("sysconfig/handle/handle_config.dct.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
        replace => true
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    92
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    93
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    94
    # create handle admin handle keys
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    95
    file { "/tmp/handle/handle_script_corpus_admin_keys.exp":
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    96
        ensure => file,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    97
        source => "puppet:///modules/sysconfig/handle/handle_script_corpus_admin_keys.exp",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    98
        owner => "$hdl_user",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
    99
        group => "$hdl_user",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   100
        mode => "0750"
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
    }->
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   102
    exec { "init-handle-corpus-admin-keys":
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   103
        command => "/tmp/handle/handle_script_corpus_admin_keys.exp",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   104
        cwd => "/opt/handle/bin",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   105
        provider => 'shell',
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   106
        creates => "/var/lib/handle/corpusadmpriv.bin",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   107
        user => $hdl_user,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   108
        notify => Exec['rm-tmp-handle-corpus-admin-key'],
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   109
        require => [Archive["handle-8.1"], Package['java-install'], Package['expect']]
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   110
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   111
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   112
    file { '/tmp/handle/handle_data.sql.sh':
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   113
        ensure => file,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   114
        content => template("sysconfig/handle/handle_data.sql.sh.erb"),
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   115
        owner => "$hdl_user",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   116
        group => "$hdl_user",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   117
        mode => "0750"
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   118
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   119
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   120
    exec { "init_handle_db_data":
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   121
        command => "/tmp/handle/handle_data.sql.sh",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   122
        creates => "/tmp/handle/handle_data.sql",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   123
        user => $hdl_user,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   124
        require => [File['/tmp/handle/handle_data.sql.sh'], Exec['init-handle-corpus-admin-keys']]
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   125
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   126
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   127
    file { '/tmp/handle/handle_db.sql':
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   128
        ensure => file,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   129
        source => "puppet:///modules/sysconfig/handle/handle_db.sql",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   130
        owner => "$hdl_user",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   131
        group => "$hdl_user",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   132
        mode => "0750"
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   133
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   134
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   135
    mysql::db { "handle_db":
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   136
        dbname => $hdl_db_name,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   137
        user => $db_user,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   138
        password => $db_pw,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   139
        host => $db_host,
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   140
        sql => ['/tmp/handle/handle_db.sql', '/tmp/handle/handle_data.sql'],
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   141
        charset => 'utf8',
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   142
        collate => 'utf8_general_ci',
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   143
        notify => [Exec['rm-tmp-handle-db'], Exec['rm-tmp-handle-data']],
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   144
        require => [Service["mariadb"], File['/tmp/handle/handle_db.sql'], Exec['init_handle_db_data']],
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   145
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   146
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   147
    exec { "handle-first-start":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   148
        command => "/usr/bin/echo \"${HANDLE_KEY_PSWD}\" | /opt/handle/bin/hdl-server /var/lib/handle &",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   149
        provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   150
        creates => "/var/lib/handle/.handle_initialized",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   151
        user => $hdl_user,
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   152
        require => [File['/etc/sysconfig/handle'], File['/var/lib/handle/config.dct'], Mysql::Db['handle_db']]
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   153
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   154
    exec { "handle-first-stop":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   155
        command => "/usr/bin/sleep 10 && rm -f /var/lib/handle/delete_this_to_stop_server && touch /var/lib/handle/.handle_initialized",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   156
        provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   157
        creates => "/var/lib/handle/.handle_initialized",
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   158
        user => $hdl_user
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   159
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   160
    file_line { "handle-detached-prefix":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   161
        path => "/var/lib/handle/config.dct",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   162
        match => "\s*\"300:0.NA/$hdl_prefix\"",
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   163
        line => "      \"300:$hdl_prefix/$hdl_prefix_admin\"",
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   164
        multiple => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   165
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   166
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   167
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   168
    file { "/etc/sysconfig/handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   169
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   170
        owner => "root",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   171
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   172
        content => template("sysconfig/handle/handle_sysconfig.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   173
        replace => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   174
        mode => "0640"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   175
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   176
    file { "/etc/systemd/system/handle.service":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   177
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   178
        owner => "root",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   179
        group => "root",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   180
        source => "puppet:///modules/sysconfig/handle/handle.service",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   181
        require => File['/opt/handle/sbin/start_handle'],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   182
        notify => Exec['systemctl-daemon-reload']
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   183
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   184
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   185
    exec { "handle-enable-on-boot":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   186
        command => "/usr/bin/systemctl enable handle",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   187
        subscribe => [ Exec['systemctl-daemon-reload'], File['/etc/systemd/system/handle.service'] ],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   188
        unless => "/usr/bin/systemctl is-enabled handle.service"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   189
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   190
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   191
    exec { "rm-tmp-handle":
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   192
        command => "/usr/bin/rm -f /tmp/handle/handle_init_script.exp",
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   193
        refreshonly => true
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   194
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   195
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   196
    exec { "rm-tmp-handle-db":
150
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   197
        command => "/usr/bin/rm -f /tmp/handle/handle_db.sql",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   198
        refreshonly => true
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   199
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   200
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   201
    exec { "rm-tmp-handle-data":
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   202
        command => "/usr/bin/rm -f /tmp/handle/handle_data.sql.sh /tmp/handle/handle_data.sql",
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   203
        refreshonly => true
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   204
    }
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   205
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   206
    exec { "rm-tmp-handle-corpus-admin-key":
cb4c47eda2db finish handle support in dev VM
ymh <ymh.work@gmail.com>
parents: 146
diff changeset
   207
        command => "/usr/bin/rm -f /tmp/handle/handle_script_corpus_admin_keys.exp",
146
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   208
        refreshonly => true
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   209
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   210
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   211
    exec { "open-handle-web-port":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   212
        command => "firewall-cmd --permanent --add-port=8000/tcp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   213
        path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   214
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   215
    exec { "open-handle-srv-port":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   216
        command => "firewall-cmd --permanent --add-port=2641/tcp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   217
        path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   218
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   219
    exec { "open-handle-port-reload":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   220
        command => "firewall-cmd --reload",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   221
        path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   222
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   223
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   224
}