351 lines
15 KiB
YAML
351 lines
15 KiB
YAML
---
|
|
# RedHat Enterprise Linux 6.0+
|
|
name: rhel
|
|
platform_pattern: redhat(.*)|centos(.*)
|
|
packager_name: anvil.packaging.yum:YumPackager
|
|
dependency_handler: anvil.packaging.yum:YumDependencyHandler
|
|
commands:
|
|
apache:
|
|
name: httpd
|
|
restart: service httpd restart
|
|
start: service httpd start
|
|
status: service httpd status
|
|
stop: service httpd stop
|
|
libvirt:
|
|
restart: service libvirtd restart
|
|
status: service libvirtd status
|
|
# This is just used to check that libvirt will work with a given protocol
|
|
verify: virsh -c $VIRT_PROTOCOL uri
|
|
mysql:
|
|
# NOTE: we aren't stopping any sql injection...
|
|
create_db: mysql --user=$USER --password=$PASSWORD -e
|
|
"CREATE DATABASE $DB CHARACTER SET $CHARACTER_SET;"
|
|
drop_db: mysql --user=$USER --password=$PASSWORD -e
|
|
"DROP DATABASE IF EXISTS $DB;"
|
|
grant_all: mysql --user=$USER --password=$PASSWORD -e
|
|
"GRANT ALL PRIVILEGES ON *.* TO '$USER'@'%' IDENTIFIED BY '$PASSWORD'; FLUSH PRIVILEGES;"
|
|
restart: service mysqld restart
|
|
set_pwd: mysql --user=$USER --password=$OLD_PASSWORD -e
|
|
"USE mysql; UPDATE user SET password=PASSWORD('$NEW_PASSWORD') WHERE User='$USER'; FLUSH PRIVILEGES;"
|
|
start: service mysqld start
|
|
status: service mysqld status
|
|
stop: service mysqld stop
|
|
# Pip command varies depending on the distro
|
|
pip: pip-python
|
|
# Where component symlinks will go, the component name will become a directory
|
|
# under this directory where its configuration files will be connected to there
|
|
# actual location.
|
|
base_link_dir: /etc
|
|
rabbit-mq:
|
|
change_password: rabbitmqctl change_password
|
|
restart: service rabbitmq-server restart
|
|
start: service rabbitmq-server start
|
|
status: service rabbitmq-server status
|
|
stop: service rabbitmq-server stop
|
|
components:
|
|
cinder:
|
|
action_classes:
|
|
install: anvil.components.cinder:CinderInstaller
|
|
running: anvil.components.cinder:CinderRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
pips:
|
|
- name: hp3parclient
|
|
cinder-client:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
db:
|
|
action_classes:
|
|
install: anvil.distros.rhel:DBInstaller
|
|
package: anvil.packaging.base:EmptyPackager
|
|
running: anvil.components.db:DBRuntime
|
|
coverage: anvil.components.base_testing:EmptyTestingComponent
|
|
test: anvil.components.base_testing:EmptyTestingComponent
|
|
uninstall: anvil.components.db:DBUninstaller
|
|
packages:
|
|
- name: mysql
|
|
- name: mysql-server
|
|
general:
|
|
action_classes:
|
|
install: anvil.components.pkglist:Installer
|
|
package: anvil.packaging.base:EmptyPackager
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:EmptyTestingComponent
|
|
coverage: anvil.components.base_testing:EmptyTestingComponent
|
|
uninstall: anvil.components.pkglist:Uninstaller
|
|
packages:
|
|
# Shared system packages
|
|
- name: coreutils
|
|
removable: false
|
|
- name: curl
|
|
removable: false
|
|
- name: dnsmasq-utils
|
|
removable: false
|
|
- name: gawk
|
|
removable: false
|
|
- name: git
|
|
removable: false
|
|
- name: iputils
|
|
removable: false
|
|
# Needed to build the newer lxml version used by nova
|
|
- name: libxml2-devel
|
|
removable: false
|
|
- name: libxslt-devel
|
|
removable: false
|
|
- name: lsof
|
|
removable: false
|
|
- name: mlocate
|
|
removable: false
|
|
- name: openssh-server
|
|
removable: false
|
|
- name: psmisc
|
|
removable: false
|
|
- name: sudo
|
|
removable: false
|
|
- name: tcpdump
|
|
removable: false
|
|
- name: unzip
|
|
removable: false
|
|
- name: wget
|
|
removable: false
|
|
# Shared python packages
|
|
- name: python
|
|
removable: false
|
|
- name: python-devel
|
|
removable: false
|
|
- name: python-distutils-extra
|
|
removable: false
|
|
- name: python-setuptools
|
|
removable: false
|
|
nopips:
|
|
# these items fail to build from Python packages,
|
|
# but their RPMs are available from base and epel repos
|
|
- name: requests
|
|
- name: mysql-python
|
|
- name: pyOpenSSL
|
|
# these packages conflict with our deps and must be removed
|
|
nopackages:
|
|
- name: python-paste-deploy1.5
|
|
- name: python-nose1.1
|
|
- name: python-routes1.12
|
|
- name: python-sphinx10
|
|
- name: python-webob1.0
|
|
- name: Django14
|
|
glance:
|
|
action_classes:
|
|
install: anvil.components.glance:GlanceInstaller
|
|
running: anvil.components.glance:GlanceRuntime
|
|
coverage: anvil.components:PythonTestingComponent
|
|
test: anvil.components.glance:GlanceTester
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
packages:
|
|
- name: MySQL-python
|
|
pips:
|
|
# warlock requires jsonschema>=0.7,<2
|
|
# pip downloads jsonschema-2.0 and
|
|
# then ignores warlock's requirement
|
|
- name: jsonschema
|
|
version: ">=0.7,<2"
|
|
glance-client:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.glance_client:GlanceClientTester
|
|
coverage: anvil.components.glance_client:GlanceClientTester
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
horizon:
|
|
action_classes:
|
|
install: anvil.distros.rhel:HorizonInstaller
|
|
running: anvil.components.horizon:HorizonRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.horizon:HorizonUninstaller
|
|
packages:
|
|
- name: httpd
|
|
- name: mod_wsgi
|
|
- name: nodejs
|
|
django-openstack-auth:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:EmptyTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
keystone:
|
|
action_classes:
|
|
install: anvil.components.keystone:KeystoneInstaller
|
|
running: anvil.components.keystone:KeystoneRuntime
|
|
test: anvil.components.keystone:KeystoneTester
|
|
coverage: anvil.components.keystone:KeystoneTester
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
packages:
|
|
- name: MySQL-python
|
|
keystone-client:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
nova:
|
|
action_classes:
|
|
install: anvil.distros.rhel:NovaInstaller
|
|
running: anvil.components.nova:NovaRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.nova:NovaUninstaller
|
|
packages:
|
|
- name: MySQL-python
|
|
# Helpful utilities/core
|
|
# system requirements
|
|
- name: dnsmasq
|
|
removable: false
|
|
- name: ebtables
|
|
removable: false
|
|
- name: iptables
|
|
removable: false
|
|
- name: iputils
|
|
removable: false
|
|
- name: kpartx
|
|
removable: false
|
|
- name: parted
|
|
removable: false
|
|
- name: sqlite
|
|
removable: false
|
|
- name: vconfig
|
|
removable: false
|
|
pips:
|
|
# This seems to be a core dependency for a 'cas' tool
|
|
# so don't try to remove it since it will also remove
|
|
# said 'cas' tool, unfortunately the version of paramiko
|
|
# installed in rhel uses a old version of crypto which
|
|
# other components actually can't use. This sucks...
|
|
- name: paramiko
|
|
subsystems:
|
|
compute:
|
|
packages:
|
|
- name: avahi
|
|
removable: false
|
|
- name: fuse # Needed for mounting
|
|
removable: false
|
|
- name: guestfish
|
|
removable: false
|
|
- name: iscsi-initiator-utils
|
|
removable: false
|
|
- name: libguestfs
|
|
removable: false
|
|
- name: libguestfs-mount
|
|
removable: false
|
|
- name: libguestfs-tools
|
|
removable: false
|
|
- name: libvirt
|
|
removable: false
|
|
- name: libvirt-client
|
|
removable: false
|
|
- name: libvirt-python
|
|
removable: false
|
|
- name: postgresql-devel # for psycopg2
|
|
removable: false
|
|
- name: qemu-img
|
|
removable: false
|
|
- name: qemu-kvm
|
|
removable: false
|
|
volume:
|
|
packages:
|
|
- name: iscsi-initiator-utils
|
|
removable: false
|
|
- name: lvm2
|
|
removable: false
|
|
- name: scsi-target-utils
|
|
removable: false
|
|
nova-client:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
no-vnc:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
package: anvil.packaging.base:EmptyPackager
|
|
running: anvil.components.novnc:NoVNCRuntime
|
|
test: anvil.components.base_testing:EmptyTestingComponent
|
|
coverage: anvil.components.base_testing:EmptyTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
packages:
|
|
- name: python-websockify
|
|
- name: numpy
|
|
openstack-client:
|
|
action_classes:
|
|
install: anvil.components.openstack_client:OpenStackClientInstaller
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.openstack_client:OpenStackClientTester
|
|
coverage: anvil.components.openstack_client:OpenStackClientTester
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
oslo-config:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
oslo-incubator:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
quantum:
|
|
action_classes:
|
|
install: anvil.components.quantum:QuantumInstaller
|
|
running: anvil.components.quantum:QuantumRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
quantum-client:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
rabbit-mq:
|
|
action_classes:
|
|
install: anvil.components.rabbit:RabbitInstaller
|
|
package: anvil.packaging.base:EmptyPackager
|
|
running: anvil.distros.rhel:RabbitRuntime
|
|
test: anvil.components.base_testing:EmptyTestingComponent
|
|
coverage: anvil.components.base_testing:EmptyTestingComponent
|
|
uninstall: anvil.components.rabbit:RabbitUninstaller
|
|
packages:
|
|
- name: rabbitmq-server
|
|
# Disable qpidd as these rabbitmq & qpidd conflict
|
|
pre-install:
|
|
- cmd:
|
|
- service
|
|
- qpidd
|
|
- stop
|
|
ignore_failure: true
|
|
run_as_root: true
|
|
# Also stop it from starting on boot (if rebooted)
|
|
- cmd:
|
|
- chkconfig
|
|
- qpidd
|
|
- 'off'
|
|
ignore_failure: true
|
|
run_as_root: true
|
|
swift-client:
|
|
action_classes:
|
|
install: anvil.components.base_install:PythonInstallComponent
|
|
running: anvil.components.base_runtime:EmptyRuntime
|
|
test: anvil.components.base_testing:PythonTestingComponent
|
|
coverage: anvil.components.base_testing:PythonTestingComponent
|
|
uninstall: anvil.components.base_install:PkgUninstallComponent
|
|
...
|