507
508
apt_install('haproxy/trusty-backports', fatal=True)
510
def git_install(projects):
511
def git_install(projects_yaml):
511
512
"""Perform setup, and install git repos specified in yaml parameter."""
512
513
if git_install_requested():
513
514
git_pre_install()
514
git_clone_and_install(yaml.load(projects), core_project='cinder')
515
git_clone_and_install(projects_yaml, core_project='cinder')
516
git_post_install(projects_yaml)
518
519
def git_pre_install():
519
"""Perform pre cinder installation setup."""
520
"""Perform cinder pre-install setup."""
522
523
'/etc/cinder/rootwrap.d',
547
548
write_file(l, '', owner='cinder', group='cinder', perms=0600)
550
def git_post_install():
551
"""Perform post cinder installation setup."""
552
src_etc = os.path.join(charm_dir(), '/mnt/openstack-git/cinder.git/etc/cinder')
551
def git_post_install(projects_yaml):
552
"""Perform cinder post-install setup."""
553
src_etc = os.path.join(git_src_dir(projects_yaml, 'cinder'), 'etc')
555
556
'src': os.path.join(src_etc, 'policy.json'),
575
576
cinder_api_context = {
576
577
'service_description': 'Cinder API server',
578
'service_name': 'Cinder',
579
'user_name': 'cinder',
580
'start_dir': '/var/lib/cinder',
577
581
'process_name': 'cinder-api',
582
'executable_name': '/usr/local/bin/cinder-api',
580
585
cinder_backup_context = {
581
586
'service_description': 'Cinder backup server',
587
'service_name': 'Cinder',
588
'user_name': 'cinder',
589
'start_dir': '/var/lib/cinder',
582
590
'process_name': 'cinder-backup',
591
'executable_name': '/usr/local/bin/cinder-backup',
585
594
cinder_scheduler_context = {
586
595
'service_description': 'Cinder scheduler server',
596
'service_name': 'Cinder',
597
'user_name': 'cinder',
598
'start_dir': '/var/lib/cinder',
587
599
'process_name': 'cinder-scheduler',
600
'executable_name': '/usr/local/bin/cinder-scheduler',
590
603
cinder_volume_context = {
591
604
'service_description': 'Cinder volume server',
605
'service_name': 'Cinder',
606
'user_name': 'cinder',
607
'start_dir': '/var/lib/cinder',
592
608
'process_name': 'cinder-volume',
609
'executable_name': '/usr/local/bin/cinder-volume',
595
render('upstart/cinder.upstart', '/etc/init/cinder-api.conf',
596
cinder_api_context, perms=0o644)
597
render('upstart/cinder.upstart', '/etc/init/cinder-backup.conf',
598
cinder_backup_context, perms=0o644)
599
render('upstart/cinder.upstart', '/etc/init/cinder-scheduler.conf',
600
cinder_scheduler_context, perms=0o644)
601
render('upstart/cinder.upstart', '/etc/init/cinder-volume.conf',
602
cinder_volume_context, perms=0o644)
612
# NOTE(coreycb): Needs systemd support
613
templates_dir = 'hooks/charmhelpers/contrib/openstack/templates'
614
templates_dir = os.path.join(charm_dir(), templates_dir)
615
render('git.upstart', '/etc/init/cinder-api.conf',
616
cinder_api_context, perms=0o644, templates_dir=templates_dir)
617
render('git.upstart', '/etc/init/cinder-backup.conf',
618
cinder_backup_context, perms=0o644, templates_dir=templates_dir)
619
render('git.upstart', '/etc/init/cinder-scheduler.conf',
620
cinder_scheduler_context, perms=0o644, templates_dir=templates_dir)
621
render('git.upstart', '/etc/init/cinder-volume.conf',
622
cinder_volume_context, perms=0o644, templates_dir=templates_dir)
604
624
service_restart('tgtd')