Puppet Class: ckan::ckanapi

Defined in:
manifests/ckanapi.pp

Summary

Installs the ckan commandline api

Overview

Additional features:

  • Installs a helper script in /usr/bin/ckan/ckanapi.bash which can be used to call ckanapi directly.



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
# File 'manifests/ckanapi.pp', line 10

class ckan::ckanapi {
  $extdir = '/usr/lib/ckan/default/src/ckanapi'
  vcsrepo { $extdir:
    ensure   => 'present',
    provider => 'git',
    source   => 'http://github.com/ckan/ckanapi',
    revision => "ckanapi-${ckan::ckan_api_version}",
  }
  exec { 'install ckanapi requirements':
    command     => "${ckan::pip} install -r '${extdir}/requirements.txt'",
    onlyif      => "/usr/bin/test -e '${extdir}/requirements.txt'",
    refreshonly => true,
    subscribe   => Vcsrepo[$extdir],
  }
  exec { 'install ckanapi':
    command     => "${ckan::python} setup.py install",
    cwd         => $extdir,
    refreshonly => true,
    subscribe   => Exec['install ckanapi requirements'],
  }
  file { '/usr/local/bin/ckanapi.bash':
    ensure  => file,
    source  => 'puppet:///modules/ckan/ckanapi.bash',
    mode    => '0755',
    require => Exec['install ckanapi'],
  }
}