summaryrefslogtreecommitdiffstats
path: root/fuel/build/f_odl_docker/puppet/modules/opnfv/manifests/odl_docker.pp
blob: c286127a44263e3f991b1639586faaad909f65c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
class opnfv::odl_docker
{
  case $::fuel_settings['role'] {
    /controller/: {

      file { '/opt':
        ensure => 'directory',
      }

      file { '/opt/opnfv':
        ensure => 'directory',
        owner  => 'root',
        group  => 'root',
        mode   => 777,
      }

      file { '/opt/opnfv/odl':
        ensure => 'directory',
      }

      file { '/opt/opnfv/odl/odl_docker_image.tar':
        ensure => present,
        source => '/etc/puppet/modules/opnfv/odl_docker/odl_docker_image.tar',
        mode   => 750,
      }

      file { '/opt/opnfv/odl/docker-latest':
        ensure => present,
        source => '/etc/puppet/modules/opnfv/odl_docker/docker-latest',
        mode   => 750,
      }

      file { '/opt/opnfv/odl/start_odl_conatiner.sh':
        ensure => present,
        source => '/etc/puppet/modules/opnfv/scripts/start_odl_container.sh',
        mode   => 750,
      }
      file { '/opt/opnfv/odl/stage_odl.sh':
        ensure => present,
        source => '/etc/puppet/modules/opnfv/scripts/stage_odl.sh',
        mode   => 750,
      }
      file { '/opt/opnfv/odl/config_net_odl.sh':
        ensure => present,
        source => '/etc/puppet/modules/opnfv/scripts/config_net_odl.sh',
        mode   => 750,
      }
      file { '/opt/opnfv/odl/change.sh':
        ensure => present,
        source => '/etc/puppet/modules/opnfv/scripts/change.sh',
        mode   => 750,
      }


      # fix failed to find the cgroup root issue
      # https://github.com/docker/docker/issues/8791
      case $::operatingsystem {
        'ubuntu': {
          package {'cgroup-lite':
            ensure => present,
          }

          service {'cgroup-lite':
            ensure  => running,
            enable  => true,
            require => Package['cgroup-lite'],
          }
        }
        'centos': {
          package {'docker-io':
            ensure => latest,
          }
        }
      }
    }
  }
}