d3200c4267
Currently there is no way to use a variant other than 'default' without having to override the entire template download options variable. This adds a variable to allow the override of the default variant and another to allow the deployer to add extra options. Examples include turning off verification, flushing the cache, etc. This patch provides the option to change it to something else. This is helpful when pre-building a different default variant that you wish to use in your own deployments instead of being forced to rely on the current default. Change-Id: Id31bdfa34e0ce117d7b64ea9234653ccdf6ac4c6
70 lines
2.5 KiB
YAML
70 lines
2.5 KiB
YAML
---
|
|
# Copyright 2016, Rackspace US, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
- name: Remove existing cache archive
|
|
file:
|
|
path: "{{ lxc_container_cache_path }}/{{ lxc_cache_map.distro }}/{{ lxc_cache_map.release }}/{{ lxc_cache_map.arch }}/{{ lxc_cache_default_variant }}/rootfs.tar.xz"
|
|
state: "absent"
|
|
tags:
|
|
- lxc-cache
|
|
- lxc-image-cache-create
|
|
|
|
# This is using a shell command because the ansible archive module does not
|
|
# provide for the options needed to properly create an LXC image archive.
|
|
- name: Create lxc image
|
|
shell: |
|
|
tar -Opc -C /var/lib/lxc/LXC_NAME/rootfs . | {{ lxc_xz_bin }} -{{ lxc_image_compression_ratio }} -c - > rootfs.tar.xz
|
|
args:
|
|
chdir: "{{ lxc_container_cache_path }}/{{ lxc_cache_map.distro }}/{{ lxc_cache_map.release }}/{{ lxc_cache_map.arch }}/{{ lxc_cache_default_variant }}/"
|
|
notify: Destroy base container
|
|
tags:
|
|
- skip_ansible_lint
|
|
- lxc-cache
|
|
- lxc-image-cache-create
|
|
|
|
- name: Create base container to use for overlayfs containers
|
|
lxc_container:
|
|
name: "{{ lxc_container_base_name }}"
|
|
template: "download"
|
|
state: stopped
|
|
backing_store: "dir"
|
|
template_options: "{{ lxc_cache_download_template_options }}"
|
|
register: cache_download
|
|
retries: 3
|
|
delay: 10
|
|
until: cache_download|success
|
|
environment: "{{ lxc_cache_environment }}"
|
|
when:
|
|
- lxc_container_backing_store is defined
|
|
- lxc_container_backing_store == 'overlayfs'
|
|
|
|
- name: Create base container to use for LVM-backed copy-on-write containers
|
|
lxc_container:
|
|
name: "{{ lxc_container_base_name }}"
|
|
template: "download"
|
|
state: stopped
|
|
backing_store: "lvm"
|
|
template_options: "{{ lxc_cache_download_template_options }}"
|
|
register: cache_download
|
|
retries: 3
|
|
delay: 10
|
|
until: cache_download|success
|
|
environment: "{{ lxc_cache_environment }}"
|
|
when:
|
|
- lxc_container_backing_store is defined
|
|
- lxc_container_backing_store == 'lvm'
|
|
- lxc_container_backing_method is defined
|
|
- lxc_container_backing_method == 'copy-on-write'
|