Sync /templates and /scripts dir from resource
This commit is contained in:
parent
0366126cb4
commit
7d6790d312
@ -26,12 +26,12 @@
|
||||
- file: path={{ config_dir.value['src'] }}/policy.json state=touch
|
||||
- file: path={{ config_dir.value['src'] }}/schema-image.json state=touch
|
||||
- file: path={{ config_dir.value['src'] }}/exports state=touch
|
||||
- template: src={{ resource_dir }}/templates/glance-api.conf dest={{ config_dir.value['src'] }}/glance-api.conf
|
||||
- template: src={{ resource_dir }}/templates/glance-api-paste.ini dest={{ config_dir.value['src'] }}/glance-api-paste.ini
|
||||
- template: src={{ resource_dir }}/templates/glance-cache.conf dest={{ config_dir.value['src'] }}/glance-cache.conf
|
||||
- template: src={{ resource_dir }}/templates/glance-registry.conf dest={{ config_dir.value['src'] }}/glance-registry.conf
|
||||
- template: src={{ resource_dir }}/templates/glance-registry-paste.ini dest={{ config_dir.value['src'] }}/glance-registry-paste.ini
|
||||
- template: src={{ resource_dir }}/templates/glance-scrubber.conf dest={{ config_dir.value['src'] }}/glance-scrubber.conf
|
||||
- template: src={{ resource_dir }}/templates/policy.json dest={{ config_dir.value['src'] }}/policy.json
|
||||
- template: src={{ resource_dir }}/templates/schema-image.json dest={{ config_dir.value['src'] }}/schema-image.json
|
||||
- template: src={{ resource_dir }}/templates/exports dest={{ config_dir.value['src'] }}/glance-export
|
||||
- template: src={{templates_dir}}/glance-api.conf dest={{ config_dir.value['src'] }}/glance-api.conf
|
||||
- template: src={{templates_dir}}/glance-api-paste.ini dest={{ config_dir.value['src'] }}/glance-api-paste.ini
|
||||
- template: src={{templates_dir}}/glance-cache.conf dest={{ config_dir.value['src'] }}/glance-cache.conf
|
||||
- template: src={{templates_dir}}/glance-registry.conf dest={{ config_dir.value['src'] }}/glance-registry.conf
|
||||
- template: src={{templates_dir}}/glance-registry-paste.ini dest={{ config_dir.value['src'] }}/glance-registry-paste.ini
|
||||
- template: src={{templates_dir}}/glance-scrubber.conf dest={{ config_dir.value['src'] }}/glance-scrubber.conf
|
||||
- template: src={{templates_dir}}/policy.json dest={{ config_dir.value['src'] }}/policy.json
|
||||
- template: src={{templates_dir}}/schema-image.json dest={{ config_dir.value['src'] }}/schema-image.json
|
||||
- template: src={{templates_dir}}/exports dest={{ config_dir.value['src'] }}/glance-export
|
||||
|
@ -19,4 +19,4 @@
|
||||
tasks:
|
||||
- file: path={{ config_dir.value['src'] }}/ state=directory
|
||||
- file: path={{ config_dir.value['src'] }}/haproxy.cfg state=touch
|
||||
- template: src={{ resource_dir }}/templates/haproxy.cfg dest=/etc/haproxy/haproxy.cfg
|
||||
- template: src={{templates_dir}}/haproxy.cfg dest=/etc/haproxy/haproxy.cfg
|
||||
|
@ -19,4 +19,4 @@
|
||||
tasks:
|
||||
- file: path={{ config_dir.value['src'] }}/ state=directory
|
||||
- file: path={{ config_dir.value['src'] }}/haproxy.cfg state=touch
|
||||
- template: src={{ resource_dir }}/templates/haproxy.cfg dest=/etc/haproxy/haproxy.cfg
|
||||
- template: src={{templates_dir}}/haproxy.cfg dest=/etc/haproxy/haproxy.cfg
|
||||
|
@ -10,8 +10,8 @@
|
||||
db_name: {{db_name}}
|
||||
tasks:
|
||||
- file: path={{config_dir}} state=directory
|
||||
- template: src={{resource_dir}}/templates/keystone.conf dest={{config_dir}}/keystone.conf
|
||||
- template: src={{resource_dir}}/templates/default_catalog.templates dest={{config_dir}}/default_catalog.templates
|
||||
- template: src={{resource_dir}}/templates/logging.conf dest={{config_dir}}/logging.conf
|
||||
- template: src={{resource_dir}}/templates/policy.json dest={{config_dir}}/policy.json
|
||||
- template: src={{resource_dir}}/templates/exports dest={{ config_dir }}/keystone-exports
|
||||
- template: src={{templates_dir}}/keystone.conf dest={{config_dir}}/keystone.conf
|
||||
- template: src={{templates_dir}}/default_catalog.templates dest={{config_dir}}/default_catalog.templates
|
||||
- template: src={{templates_dir}}/logging.conf dest={{config_dir}}/logging.conf
|
||||
- template: src={{templates_dir}}/policy.json dest={{config_dir}}/policy.json
|
||||
- template: src={{templates_dir}}/exports dest={{ config_dir }}/keystone-exports
|
||||
|
@ -7,4 +7,4 @@
|
||||
keystone_host: {{keystone_host}}
|
||||
keystone_port: {{keystone_port}}
|
||||
tasks:
|
||||
- template: src={{resource_dir}}/templates/openrc.template dest=/root/openrc
|
||||
- template: src={{templates_dir}}/openrc.template dest=/root/openrc
|
||||
|
@ -5,4 +5,4 @@
|
||||
admin_password: {{admin_password}}
|
||||
tasks:
|
||||
- file: path={{config_dir}} state=directory
|
||||
- template: src={{resource_dir}}/templates/rabbitmq.conf dest={{config_dir}}/rabbitmq.conf
|
||||
- template: src={{templates_dir}}/rabbitmq.conf dest={{config_dir}}/rabbitmq.conf
|
||||
|
@ -18,7 +18,7 @@
|
||||
state: stopped
|
||||
- file: path=/etc/riak/riak.conf state=touch
|
||||
- template:
|
||||
src: {{ resource_dir }}/templates/riak.conf
|
||||
src: {{templates_dir}}/riak.conf
|
||||
dest: /etc/riak/riak.conf
|
||||
- shell: rm -fr /var/lib/riak/kv_vnode/*
|
||||
- shell: rm -fr /var/lib/riak/ring/*
|
||||
|
@ -5,7 +5,7 @@
|
||||
name: riak
|
||||
state: stopped
|
||||
- template:
|
||||
src: {{ resource_dir }}/templates/riak.conf
|
||||
src: {{templates_dir}}/riak.conf
|
||||
dest: /etc/riak/riak.conf
|
||||
- service:
|
||||
name: riak
|
||||
|
@ -22,6 +22,7 @@ class AnsibleTemplate(TempFileHandler):
|
||||
log.debug('playbook_file: %s', playbook_file)
|
||||
|
||||
# self.transport_sync.copy(resource, self.dirs[resource.name], self.dirs[resource.name])
|
||||
self._copy_templates_and_scripts(resource, action_name)
|
||||
self.transport_sync.copy(resource, self.dst, '/tmp')
|
||||
self.transport_sync.copy(resource, '/vagrant/library', '/tmp')
|
||||
self.transport_sync.sync_all()
|
||||
|
@ -67,9 +67,39 @@ class TempFileHandler(BaseHandler):
|
||||
tpl = Template(f.read())
|
||||
return tpl.render(str=str, zip=zip, **args)
|
||||
|
||||
def _copy_templates_and_scripts(self, resource, action):
|
||||
# TODO: we might need to optimize it later, like provide list
|
||||
# templates/scripts per action
|
||||
log.debug("Adding templates for %s %s", resource.name, action)
|
||||
trg_templates_dir = None
|
||||
trg_scripts_dir = None
|
||||
|
||||
base_path = resource.metadata['base_path']
|
||||
src_templates_dir = os.path.join(base_path, 'templates')
|
||||
if os.path.exists(src_templates_dir):
|
||||
trg_templates_dir = os.path.join(self.dirs[resource.name], 'templates')
|
||||
shutil.copytree(src_templates_dir, trg_templates_dir)
|
||||
|
||||
src_scripts_dir = os.path.join(base_path, 'scripts')
|
||||
if os.path.exists(src_scripts_dir):
|
||||
trg_scripts_dir = os.path.join(self.dirs[resource.name], 'scripts')
|
||||
shutil.copytree(src_scripts_dir, trg_scripts_dir)
|
||||
|
||||
return (trg_templates_dir, trg_scripts_dir)
|
||||
|
||||
def prepare_templates_and_scripts(self, resource, action, target_dir=None):
|
||||
target_dir = target_dir or self.dirs[resource.name]
|
||||
templates, scripts = self._copy_templates_and_scripts(resource, action)
|
||||
if templates:
|
||||
self.transport_sync.copy(resource, templates, target_dir)
|
||||
if scripts:
|
||||
self.transport_sync.copy(resource, scripts, target_dir)
|
||||
|
||||
def _make_args(self, resource):
|
||||
args = {'resource_name': resource.name}
|
||||
args['resource_dir'] = resource.metadata['base_path']
|
||||
args['templates_dir'] = 'templates/'
|
||||
args['scripts_dir'] = 'scripts/'
|
||||
args.update(resource.args)
|
||||
return args
|
||||
|
||||
|
@ -155,6 +155,7 @@ class Puppet(TempFileHandler):
|
||||
|
||||
self.upload_manifests(resource)
|
||||
|
||||
self.prepare_templates_and_scripts(resource, action_file, '')
|
||||
self.transport_sync.copy(resource, action_file, '/tmp/action.pp')
|
||||
self.transport_sync.sync_all()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user