diff options
Diffstat (limited to 'meta-openstack/recipes-support/salt/salt_2015.5.0.bb')
-rw-r--r-- | meta-openstack/recipes-support/salt/salt_2015.5.0.bb | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/meta-openstack/recipes-support/salt/salt_2015.5.0.bb b/meta-openstack/recipes-support/salt/salt_2015.5.0.bb new file mode 100644 index 0000000..0eb6f9d --- /dev/null +++ b/meta-openstack/recipes-support/salt/salt_2015.5.0.bb | |||
@@ -0,0 +1,144 @@ | |||
1 | HOMEPAGE = "http://saltstack.com/" | ||
2 | SECTION = "admin" | ||
3 | LICENSE = "Apache-2.0" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=5357642471cfab4740d1d0a20c51af6a" | ||
5 | DEPENDS = "\ | ||
6 | python-msgpack \ | ||
7 | python-pyyaml \ | ||
8 | python-jinja2 \ | ||
9 | python-markupsafe \ | ||
10 | python-pyzmq \ | ||
11 | python-pycrypto \ | ||
12 | python-m2crypto \ | ||
13 | " | ||
14 | |||
15 | SRCNAME = "salt" | ||
16 | SRC_URI = "http://pypi.python.org/packages/source/s/${SRCNAME}/${SRCNAME}-${PV}.tar.gz \ | ||
17 | file://set_python_location_hashbang.patch \ | ||
18 | file://minion \ | ||
19 | file://salt-minion \ | ||
20 | file://salt-common.bash_completion \ | ||
21 | file://salt-common.logrotate \ | ||
22 | file://salt-api \ | ||
23 | file://salt-master \ | ||
24 | file://master \ | ||
25 | file://salt-syndic \ | ||
26 | file://cloud \ | ||
27 | file://roster \ | ||
28 | " | ||
29 | |||
30 | SRC_URI[md5sum] = "5091f15202c852a3e92692035b05c872" | ||
31 | SRC_URI[sha256sum] = "e0d5b3ec220d8c956120bf2faa00bb7013e500eef7a697bc428cb179a136a5d2" | ||
32 | |||
33 | S = "${WORKDIR}/${SRCNAME}-${PV}" | ||
34 | |||
35 | inherit setuptools update-rc.d | ||
36 | |||
37 | PACKAGES += "\ | ||
38 | ${PN}-api \ | ||
39 | ${PN}-cloud \ | ||
40 | ${PN}-common \ | ||
41 | ${PN}-master \ | ||
42 | ${PN}-minion \ | ||
43 | ${PN}-ssh \ | ||
44 | ${PN}-syndic \ | ||
45 | ${PN}-bash-completion \ | ||
46 | " | ||
47 | |||
48 | do_install_append() { | ||
49 | install -d ${D}${sysconfdir}/bash_completion.d/ | ||
50 | install -m 0644 ${WORKDIR}/salt-common.bash_completion ${D}${sysconfdir}/bash_completion.d/${PN}-common | ||
51 | install -d ${D}${sysconfdir}/logrotate.d/ | ||
52 | install -m 0644 ${WORKDIR}/salt-common.logrotate ${D}${sysconfdir}/logrotate.d/${PN}-common | ||
53 | install -d ${D}${sysconfdir}/init.d/ | ||
54 | install -m 0755 ${WORKDIR}/salt-minion ${D}${sysconfdir}/init.d/${PN}-minion | ||
55 | install -m 0755 ${WORKDIR}/salt-api ${D}${sysconfdir}/init.d/${PN}-api | ||
56 | install -m 0755 ${WORKDIR}/salt-master ${D}${sysconfdir}/init.d/${PN}-master | ||
57 | install -m 0755 ${WORKDIR}/salt-syndic ${D}${sysconfdir}/init.d/${PN}-syndic | ||
58 | install -d ${D}${sysconfdir}/${PN}/ | ||
59 | install -m 0644 ${WORKDIR}/minion ${D}${sysconfdir}/${PN}/minion | ||
60 | install -m 0644 ${WORKDIR}/master ${D}${sysconfdir}/${PN}/master | ||
61 | install -m 0644 ${WORKDIR}/cloud ${D}${sysconfdir}/${PN}/cloud | ||
62 | install -m 0644 ${WORKDIR}/roster ${D}${sysconfdir}/${PN}/roster | ||
63 | install -d ${D}${sysconfdir}/${PN}/cloud.conf.d ${D}${sysconfdir}/${PN}/cloud.profiles.d ${D}${sysconfdir}/${PN}/cloud.providers.d | ||
64 | } | ||
65 | |||
66 | ALLOW_EMPTY_${PN} = "1" | ||
67 | FILES_${PN} = "" | ||
68 | |||
69 | INITSCRIPT_PACKAGES = "${PN}-minion ${PN}-api ${PN}-master ${PN}-syndic" | ||
70 | |||
71 | DESCRIPTION_COMMON = "salt is a powerful remote execution manager that can be used to administer servers in a\ | ||
72 | fast and efficient way. It allows commands to be executed across large groups of servers. This means systems\ | ||
73 | can be easily managed, but data can also be easily gathered. Quick introspection into running systems becomes\ | ||
74 | a reality. Remote execution is usually used to set up a certain state on a remote system. Salt addresses this\ | ||
75 | problem as well, the salt state system uses salt state files to define the state a server needs to be in. \ | ||
76 | Between the remote execution system, and state management Salt addresses the backbone of cloud and data center\ | ||
77 | management." | ||
78 | |||
79 | SUMMARY_${PN}-minion = "client package for salt, the distributed remote execution system" | ||
80 | DESCRIPTION_${PN}-minion = "${DESCRIPTION_COMMON} This particular package provides the worker agent for salt." | ||
81 | RDEPENDS_${PN}-minion = "python ${PN}-common (= ${EXTENDPKGV}) python-m2crypto python-pycrypto python-msgpack python-pyzmq (>= 13.1.0)" | ||
82 | RRECOMMENDS_${PN}-minion_append_x64 = "dmidecode" | ||
83 | RSUGGESTS_${PN}-minion = "python-augeas" | ||
84 | CONFFILES_${PN}-minion = "${sysconfdir}/${PN}/minion ${sysconfdir}/init.d/${PN}-minion" | ||
85 | FILES_${PN}-minion = "${bindir}/${PN}-minion ${sysconfdir}/${PN}/minion.d/ ${CONFFILES_${PN}-minion}" | ||
86 | INITSCRIPT_NAME_${PN}-minion = "${PN}-minion" | ||
87 | INITSCRIPT_PARAMS_${PN}-minion = "defaults" | ||
88 | |||
89 | SUMMARY_${PN}-common = "shared libraries that salt requires for all packages" | ||
90 | DESCRIPTION_${PN}-common ="${DESCRIPTION_COMMON} This particular package provides shared libraries that \ | ||
91 | salt-master, salt-minion, and salt-syndic require to function." | ||
92 | RDEPENDS_${PN}-common = "python (>= 2.7) python (< 2.8) python-jinja2 python-pyyaml" | ||
93 | RRECOMMENDS_${PN}-common = "lsb" | ||
94 | RSUGGESTS_${PN}-common = "python-mako python-git" | ||
95 | RCONFLICTS_${PN}-common = "python-mako (< 0.7.0)" | ||
96 | CONFFILES_${PN}-common="${sysconfdir}/logrotate.d/${PN}-common" | ||
97 | FILES_${PN}-common = "${bindir}/${PN}-call ${libdir}/python2.7/ ${CONFFILES_${PN}-common}" | ||
98 | |||
99 | SUMMARY_${PN}-ssh = "remote manager to administer servers via salt" | ||
100 | DESCRIPTION_${PN}-ssh = "${DESCRIPTION_COMMON} This particular package provides the salt ssh controller. It \ | ||
101 | is able to run salt modules and states on remote hosts via ssh. No minion or other salt specific software needs\ | ||
102 | to be installed on the remote host." | ||
103 | RDEPENDS_${PN}-ssh = "python ${PN}-common (= ${EXTENDPKGV}) python-msgpack" | ||
104 | CONFFILES_${PN}-ssh="${sysconfdir}/${PN}/roster" | ||
105 | FILES_${PN}-ssh = "${bindir}/${PN}-ssh ${CONFFILES_${PN}-ssh}" | ||
106 | |||
107 | SUMMARY_${PN}-api = "generic, modular network access system" | ||
108 | DESCRIPTION_${PN}-api = "a modular interface on top of Salt that can provide a variety of entry points into a \ | ||
109 | running Salt system. It can start and manage multiple interfaces allowing a REST API to coexist with XMLRPC or \ | ||
110 | even a Websocket API. The Salt API system is used to expose the fundamental aspects of Salt control to external\ | ||
111 | sources. salt-api acts as the bridge between Salt itself and REST, Websockets, etc. Documentation is available\ | ||
112 | on Read the Docs: http://salt-api.readthedocs.org/" | ||
113 | RDEPENDS_${PN}-api = "python ${PN}-master" | ||
114 | RSUGGESTS_${PN}-api = "python-cherrypy" | ||
115 | CONFFILES_${PN}-api = "${sysconfdir}/init.d/${PN}-api" | ||
116 | FILES_${PN}-api = "${bindir}/${PN}-api ${CONFFILES_${PN}-api}" | ||
117 | INITSCRIPT_NAME_${PN}-api = "${PN}-api" | ||
118 | INITSCRIPT_PARAMS_${PN}-api = "defaults" | ||
119 | |||
120 | SUMMARY_${PN}-master = "remote manager to administer servers via salt" | ||
121 | DESCRIPTION_${PN}-master ="${DESCRIPTION_COMMON} This particular package provides the salt controller." | ||
122 | RDEPENDS_${PN}-master = "python ${PN}-common (= ${EXTENDPKGV}) python-m2crypto python-pycrypto python-msgpack python-pyzmq (>= 13.1.0)" | ||
123 | CONFFILES_${PN}-master="${sysconfdir}/init.d/${PN}-master ${sysconfdir}/${PN}/master" | ||
124 | FILES_${PN}-master = "${bindir}/${PN} ${bindir}/${PN}-cp ${bindir}/${PN}-key ${bindir}/${PN}-master ${bindir}/${PN}-run ${bindir}/${PN}-unity ${CONFFILES_${PN}-master}" | ||
125 | INITSCRIPT_NAME_${PN}-master = "${PN}-master" | ||
126 | INITSCRIPT_PARAMS_${PN}-master = "defaults" | ||
127 | |||
128 | SUMMARY_${PN}-syndic = "master-of-masters for salt, the distributed remote execution system" | ||
129 | DESCRIPTION_${PN}-syndic = "${DESCRIPTION_COMMON} This particular package provides the master of masters for \ | ||
130 | salt; it enables the management of multiple masters at a time." | ||
131 | RDEPENDS_${PN}-syndic = "python ${PN}-master (= ${EXTENDPKGV})" | ||
132 | CONFFILES_${PN}-syndic="${sysconfdir}/init.d/${PN}-syndic" | ||
133 | FILES_${PN}-syndic = "${bindir}/${PN}-syndic ${CONFFILES_${PN}-syndic}" | ||
134 | INITSCRIPT_NAME_${PN}-syndic = "${PN}-syndic" | ||
135 | INITSCRIPT_PARAMS_${PN}-syndic = "defaults" | ||
136 | |||
137 | SUMMARY_${PN}-cloud = "public cloud VM management system" | ||
138 | DESCRIPTION_${PN}-cloud = "provision virtual machines on various public clouds via a cleanly controlled profile and mapping system." | ||
139 | RDEPENDS_${PN}-cloud = "python ${PN}-common (= ${EXTENDPKGV}) python-msgpack python-requests" | ||
140 | RSUGGESTS_${PN}-cloud = "python-netaddr python-botocore" | ||
141 | CONFFILES_${PN}-cloud = "${sysconfdir}/${PN}/cloud" | ||
142 | FILES_${PN}-cloud = "${bindir}/${PN}-cloud ${sysconfdir}/${PN}/cloud.conf.d/ ${sysconfdir}/${PN}/cloud.profiles.d/ ${sysconfdir}/${PN}/cloud.providers.d/ ${CONFFILES_${PN}-cloud}" | ||
143 | |||
144 | FILES_${PN}-bash-completion = "${sysconfdir}/bash_completion.d/${PN}-common" | ||