dev/provisioning/modules/sysconfig/manifests/handle.pp
author ymh <ymh.work@gmail.com>
Fri, 08 Apr 2016 17:53:56 +0200
changeset 146 dc4d1cdc47e0
child 150 cb4c47eda2db
permissions -rw-r--r--
first implementation of handle install. Need refinement
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 (
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
    $hdl_host     = hiera('sysconfig::params::hdl_host', $sysconfig::params::hdl_host),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
    $hdl_user     = hiera('sysconfig::params::hdl_user', $sysconfig::params::hdl_user),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
    $hdl_srv_port = hiera('sysconfig::params::hdl_srv_port', $sysconfig::params::hdl_srv_port),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
    $hdl_web_port = hiera('sysconfig::params::hdl_web_port', $sysconfig::params::hdl_web_port),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
    $hdl_key_pswd = hiera('sysconfig::params::hdl_key_pswd', $sysconfig::params::hdl_key_pswd),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
    $hdl_prefix   = hiera('sysconfig::params::hdl_prefix', $sysconfig::params::hdl_prefix),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
    $hdl_db_name  = hiera('sysconfig::params::hdl_db_name', $sysconfig::params::hdl_db_name),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
    $db_user      = hiera('sysconfig::params::db_user',      $sysconfig::params::db_user),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
    $db_pw        = hiera('sysconfig::params::db_pw',        $sysconfig::params::db_pw),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
    $db_host      = hiera('sysconfig::params::db_host',      $sysconfig::params::db_host)
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
) inherits sysconfig::params {
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
    # 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
    15
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
    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
    17
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
    $handle_dirs = [
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
        "/opt/handle",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
        "/opt/handle/sbin",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
        "/tmp/handle"
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
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
    archive { 'handle-8.1':
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
        ensure => present,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
        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
    47
        checksum => false,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
        follow_redirects => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
        strip_components => 1,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
        target => "/opt/handle",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
        src_target => '/tmp',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
        timeout => 500,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
    file { "/opt/handle/sbin/start_handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
        mode => "0750",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
        source => "puppet:///modules/sysconfig/handle/start_handle",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
    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
    61
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
        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
    63
        mode => "0644"
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 { '/tmp/handle/handle_db.sql':
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/handle_db.sql",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
        mode => "0750"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
    mysql::db { "handle_db":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
        dbname => $hdl_db_name,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
        user => $db_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
        password => $db_pw,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
        host => $db_host,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
        sql => '/tmp/handle/handle_db.sql',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
        charset => 'utf8',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
        collate => 'utf8_general_ci',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
        notify => Exec['rm-tmp-handle-db'],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
        require => Service["mariadb"],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
    file { "/tmp/handle/handle_init_script.exp":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
        content => template("sysconfig/handle/handle_script.exp.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
        mode => "0750"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
    exec { "init-handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
        command => "/tmp/handle/handle_init_script.exp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
        cwd => "/opt/handle/bin",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
        provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
        creates => "/var/lib/handle/sitebndl.zip",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
        user => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
        notify => Exec['rm-tmp-handle'],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
        require => [Package['java-install'], Package['expect']]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
    file { "/var/lib/handle/config.dct":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
        owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
        content => template("sysconfig/handle/handle_config.dct.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
        replace => true
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   105
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
    exec { "handle-first-start":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
        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
   108
        provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
        creates => "/var/lib/handle/.handle_initialized",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
        user => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
        require => File['/etc/sysconfig/handle']
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   112
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   113
    exec { "handle-first-stop":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   114
        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
   115
        provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   116
        creates => "/var/lib/handle/.handle_initialized",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   117
        user => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   118
        require => File['/etc/sysconfig/handle']
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
    file_line { "handle-detached-prefix":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   121
        path => "/var/lib/handle/config.dct",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   122
        match => "\s*\"300:0.NA/$hdl_prefix\"",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   123
        line => "      \"300:$hdl_prefix/ADMIN\"",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   124
        multiple => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   125
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   126
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   127
    # file { "/tmp/handle/handle_answers.txt":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   128
    #     ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   129
    #     content => template("sysconfig/handle/handle_answers.tmp.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   130
    # }#->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   131
    # exec { "init-handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   132
    #     command => "/opt/handle/bin/hdl-setup-server /var/lib/handle < /tmp/handle/handle_answers.txt",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   133
    #     cwd => "/opt/handle/bin",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   134
    #     provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   135
    #     creates => "/var/lib/handle/sitebndl.zip",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   136
    #     user => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   137
    #     notify => Exec['rm-tmp-handle'],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   138
    #     require => Package['java-install']
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   139
    # }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   140
    # file { "/var/lib/handle/config.dct":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   141
    #     ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   142
    #     owner => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   143
    #     group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   144
    #     content => template("sysconfig/handle/handle_config.dct.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   145
    #     replace => true
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   146
    # }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   147
    # exec { "open-handle-web-port":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   148
    #     command => "firewall-cmd --permanent --add-port=8000/tcp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   149
    #     path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   150
    # }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   151
    # exec { "open-handle-srv-port":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   152
    #     command => "firewall-cmd --permanent --add-port=2641/tcp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   153
    #     path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   154
    # }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   155
    # exec { "open-handle-port-reload":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   156
    #     command => "firewall-cmd --reload",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   157
    #     path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   158
    # }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   159
    # exec { "handle-first-start":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   160
    #     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
   161
    #     provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   162
    #     creates => "/var/lib/handle/.handle_initialized",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   163
    #     user => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   164
    #     require => File['/etc/sysconfig/handle']
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
    # exec { "handle-first-stop":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   167
    #     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
   168
    #     provider => 'shell',
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   169
    #     creates => "/var/lib/handle/.handle_initialized",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   170
    #     user => $hdl_user,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   171
    #     require => File['/etc/sysconfig/handle']
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   172
    # }#->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   173
    # file_line { "handle-detached-prefix":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   174
    #     path => "/var/lib/handle/config.dct",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   175
    #     match => "\s*\"300:0.NA/$hdl_prefix\"",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   176
    #     line => "      \"300:$hdl_prefix/ADMIN\"",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   177
    #     multiple => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   178
    # }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   179
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   180
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   181
    file { "/etc/sysconfig/handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   182
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   183
        owner => "root",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   184
        group => "$hdl_user",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   185
        content => template("sysconfig/handle/handle_sysconfig.erb"),
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   186
        replace => true,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   187
        mode => "0640"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   188
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   189
    file { "/etc/systemd/system/handle.service":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   190
        ensure => file,
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   191
        owner => "root",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   192
        group => "root",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   193
        source => "puppet:///modules/sysconfig/handle/handle.service",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   194
        require => File['/opt/handle/sbin/start_handle'],
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   195
        notify => Exec['systemctl-daemon-reload']
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   196
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   197
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   198
    exec { "handle-enable-on-boot":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   199
        command => "/usr/bin/systemctl enable handle",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   200
        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
   201
        unless => "/usr/bin/systemctl is-enabled handle.service"
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   202
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   203
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   204
    # exec { "rm-tmp-handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   205
    #     command => "/usr/bin/rm /tmp/handle/handle_answers.txt",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   206
    #     refreshonly => true
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   207
    # }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   208
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   209
    exec { "rm-tmp-handle":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   210
        command => "/usr/bin/rm /tmp/handle/handle_init_script.exp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   211
        refreshonly => true
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   212
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   213
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   214
    exec { "rm-tmp-handle-db":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   215
        command => "/usr/bin/rm /tmp/handle/handle_db.sql",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   216
        refreshonly => true
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   217
    }
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-web-port":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   220
        command => "firewall-cmd --permanent --add-port=8000/tcp",
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
    exec { "open-handle-srv-port":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   224
        command => "firewall-cmd --permanent --add-port=2641/tcp",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   225
        path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   226
    }->
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   227
    exec { "open-handle-port-reload":
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   228
        command => "firewall-cmd --reload",
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   229
        path => [ '/bin', '/usr/bin', '/usr/local/bin' ]
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   230
    }
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   231
dc4d1cdc47e0 first implementation of handle install. Need refinement
ymh <ymh.work@gmail.com>
parents:
diff changeset
   232
}