Add "direct" option for logging to console.
[integration/packaging/puppet-opendaylight.git] / manifests / install.pp
index e4edcef75d6830255ee7fc972ece19953ec2249a..e8cd8d89b897c213355d23e02f3f603666527faf 100644 (file)
@@ -2,80 +2,17 @@
 #
 # Manages the installation of OpenDaylight.
 #
+# There are two install methods: RPM-based and deb-based. The resulting
+# system state should be functionally equivalent.
+#
 class opendaylight::install {
-  if $opendaylight::install_method == 'rpm' {
-    # Choose Yum URL based on OS (CentOS vs Fedora)
-    $base_url = $::operatingsystem ? {
-      'CentOS' => 'https://copr-be.cloud.fedoraproject.org/results/dfarrell07/OpenDaylight/epel-7-$basearch/',
-      'Fedora' => 'https://copr-be.cloud.fedoraproject.org/results/dfarrell07/OpenDaylight/fedora-$releasever-$basearch/',
-    }
-
-    # Add OpenDaylight's Yum repository
-    yumrepo { 'opendaylight':
-      # 'ensure' isn't supported with Puppet <3.5
-      # Seems to default to present, but docs don't say
-      # https://docs.puppetlabs.com/references/3.4.0/type.html#yumrepo
-      # https://docs.puppetlabs.com/references/3.5.0/type.html#yumrepo
-      baseurl  => $base_url,
-      descr    => 'OpenDaylight SDN controller',
-      gpgcheck => 0,
-      enabled  => 1,
-      before   => Package['opendaylight'],
-    }
 
-    # Install the OpenDaylight RPM
-    package { 'opendaylight':
-      ensure  => present,
-      require => Yumrepo['opendaylight'],
-    }
+  if $::opendaylight::manage_repositories {
+    require ::opendaylight::repos
   }
-  elsif $opendaylight::install_method == 'tarball' {
-    # Install Java
-    # See: https://github.com/dfarrell07/puppet-opendaylight/issues/56
-    class { 'java':
-      # NB: ODL is currently in the process of moving to Java 8
-      package => 'java-1.7.0-openjdk',
-    }
-
-    # Download and extract the ODL tarball
-    archive { 'opendaylight-0.2.2':
-      ensure           => present,
-      url              => $opendaylight::tarball_url,
-      # Will end up installing /opt/opendaylight-0.2.2
-      target           => '/opt/opendaylight-0.2.2',
-      # ODL doesn't provide a checksum in the expected path, would fail
-      checksum         => false,
-      # This discards top-level dir of extracted tarball
-      # Required to get proper /opt/opendaylight-<version> path
-      strip_components => 1,
-      # Default timeout is 120s, which may not be enough. See Issue #53:
-      # https://github.com/dfarrell07/puppet-opendaylight/issues/53
-      timeout          => 600,
-    }
-
-    # Download ODL systemd .service file and put in right location
-    archive { 'opendaylight-systemd':
-      ensure           => present,
-      url              => $opendaylight::unitfile_url,
-      # Will end up installing /usr/lib/systemd/system/opendaylight.service
-      target           => '/usr/lib/systemd/system/',
-      # Required by archive mod for correct exec `creates` param
-      root_dir         => 'opendaylight.service',
-      # ODL doesn't provide a checksum in the expected path, would fail
-      checksum         => false,
-      # This discards top-level dir of extracted tarball
-      # Required to get proper /opt/opendaylight-<version> path
-      strip_components => 1,
-      # May end up with an HTML redirect output in a text file without this
-      # Note that the curl'd down file would still have a .tar.gz name
-      follow_redirects => true,
-    }
 
-    # TODO: Create odl:odl user:group and set perms on extracted archives
-    # See: https://github.com/dfarrell07/puppet-opendaylight/issues/51
-
-  }
-  else {
-    fail("Unknown install method: ${opendaylight::install_method}")
+  package { 'opendaylight':
+    ensure  => present,
   }
+
 }