airshipctl/roles/libvirt-network/tasks/create.yaml
Yasin, Siraj (SY495P) c25d223c7b Add copyright for missing files
* added license templates for go, bash & yaml in tools dir
* added a script that will add license information for all
    missing files. Type:  go, yaml, yml, sh
* skip adding license for all files within testdata
* Syntax:
   > ./tools/add_license.sh

* Skip license for manifests folder
* Added one extra line after licene for yaml files
* Added License after Hashbang for bash.
* Add an extra line after hashbang and before license
* Updated the go template to use multiline comments

New Files:
  1. tools/add_license.sh
  2. tools/license_go.txt
  3. tools/license_yaml.txt
  4. tools/license_bash.txt

Change-Id: Ia4da5b261e7cd518d446896b72c810421877472a
Realtes-To:#147
2020-04-09 08:35:59 -05:00

86 lines
2.2 KiB
YAML

# 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.
# Description:
# Creates a libvirt network. libvirt_network are
# exactly converted to XML from YAML so there
# is no validation whether the arguments are
# correct or not. Caller must ensure that yaml
# is formulated correctly.
#
# Inputs:
# network_action: "create"
# libvirt_network:
# name: <name of network>
# persistent: <boolean>
# autostart: <boolean>
# recreate: <boolean>
# spec:
# forward:
# mode:
# nat:
# port:
# - start:
# end:
# bridge:
# name:
# stp:
# delay:
# domain:
# name:
# localOnly:
# dns:
# forwarder:
# domain:
# addr:
# mac:
# address:
# ip:
# address:
# netmask:
# dhcp:
# - range:
# start:
# end:
- name: Validate input
assert:
that:
- "libvirt_network is defined"
- "libvirt_network.name is defined"
- "libvirt_network.spec is defined"
- name: Create yaml for template
set_fact:
net_yaml: >-
{{
libvirt_network.spec
| combine({'name': libvirt_network.name}, recursive=True)
}}
- name: "Define network"
virt_net:
command: define
# If libvirt_network.xml is defined, spec will be ignored.
xml: "{{ libvirt_network.xml | default(libvirt_network_template_default) }}"
name: "{{ libvirt_network.name }}"
- name: "Start network"
virt_net:
state: active
name: "{{ libvirt_network.name }}"
- name: "Autostart network"
virt_net:
name: "{{ libvirt_network.name }}"
autostart: "{{ libvirt_network.autostart |default(true) }}"