blob: 9bd4217820f35ecb571e5af6a327432ee0e0ed29 [file] [log] [blame]
Alexander Gordeev06fb29c2014-01-31 18:02:07 +04001# lib/nova_plugins/hypervisor-ironic
2# Configure the ironic hypervisor
3
4# Enable with:
5# VIRT_DRIVER=ironic
6
7# Dependencies:
8# ``functions`` file
9# ``nova`` configuration
10
11# install_nova_hypervisor - install any external requirements
12# configure_nova_hypervisor - make configuration changes, including those to other services
13# start_nova_hypervisor - start any external services
14# stop_nova_hypervisor - stop any external services
15# cleanup_nova_hypervisor - remove transient data and cache
16
17# Save trace setting
18MY_XTRACE=$(set +o | grep xtrace)
19set +o xtrace
20
Adam Gandelmanea861742014-03-17 16:23:01 -070021source $TOP_DIR/lib/nova_plugins/functions-libvirt
Alexander Gordeev06fb29c2014-01-31 18:02:07 +040022
23# Defaults
24# --------
25
26# Entry Points
27# ------------
28
29# clean_nova_hypervisor - Clean up an installation
30function cleanup_nova_hypervisor {
31 # This function intentionally left blank
32 :
33}
34
35# configure_nova_hypervisor - Set config files, create data dirs, etc
36function configure_nova_hypervisor {
Adam Gandelmanea861742014-03-17 16:23:01 -070037 configure_libvirt
Alexander Gordeev06fb29c2014-01-31 18:02:07 +040038 iniset $NOVA_CONF ironic sql_connection `database_connection_url nova_bm`
39 LIBVIRT_FIREWALL_DRIVER=${LIBVIRT_FIREWALL_DRIVER:-"nova.virt.firewall.NoopFirewallDriver"}
Davide Guerri08448e32014-03-21 18:14:18 +000040 iniset $NOVA_CONF DEFAULT compute_driver nova.virt.ironic.IronicDriver
41
Alexander Gordeev06fb29c2014-01-31 18:02:07 +040042 iniset $NOVA_CONF DEFAULT firewall_driver $LIBVIRT_FIREWALL_DRIVER
43 iniset $NOVA_CONF DEFAULT scheduler_host_manager ironic.nova.scheduler.ironic_host_manager.IronicHostManager
44 iniset $NOVA_CONF DEFAULT ram_allocation_ratio 1.0
45 iniset $NOVA_CONF DEFAULT reserved_host_memory_mb 0
46 # ironic section
47 iniset $NOVA_CONF ironic admin_username admin
48 iniset $NOVA_CONF ironic admin_password $ADMIN_PASSWORD
49 iniset $NOVA_CONF ironic admin_url $KEYSTONE_AUTH_PROTOCOL://$KEYSTONE_AUTH_HOST:$KEYSTONE_AUTH_PORT/v2.0
50 iniset $NOVA_CONF ironic admin_tenant_name demo
Ruby Loo11174792014-03-26 17:19:36 +000051 iniset $NOVA_CONF ironic api_endpoint http://$SERVICE_HOST:6385/v1
Alexander Gordeev06fb29c2014-01-31 18:02:07 +040052}
53
54# install_nova_hypervisor() - Install external components
55function install_nova_hypervisor {
Adam Gandelmanea861742014-03-17 16:23:01 -070056 install_libvirt
Alexander Gordeev06fb29c2014-01-31 18:02:07 +040057}
58
59# start_nova_hypervisor - Start any required external services
60function start_nova_hypervisor {
61 # This function intentionally left blank
62 :
63}
64
65# stop_nova_hypervisor - Stop any external services
66function stop_nova_hypervisor {
67 # This function intentionally left blank
68 :
69}
70
71
72# Restore xtrace
73$MY_XTRACE
74
75# Local variables:
76# mode: shell-script
77# End: