---
# Copyright 2017-present Open Networking Foundation
#
# 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.

# test-client-install/tasks/main.yml

- name: Create testclient LXD profile
  lxd_profile:
    name: testclient
    state: present
    config:
      user.user-data: |
        #cloud-config
        write_files:
          - path: /etc/rc.local
            permissions: "0755"
            content: |
              #!/bin/sh -e
              # Set up VLAN tagging interface ("simulated OLT")
              ip link add link eth0 name eth0.222 type vlan id 222
              ip link add link eth0.222 name eth0.222.111 type vlan id 111
              ifconfig eth0.222 up
              ifconfig eth0.222.111 up
              dhclient eth0.222.111
              exit 0
        bootcmd:
          - sed -i 's/eth0 inet dhcp/eth0 inet manual/g' /etc/network/interfaces.d/eth0.cfg
    description: 'Subscriber test client'
    devices:
      eth0:
        nictype: macvlan
        parent: "{{ headnode_fabric_bridge }}"
        type: nic

- name: Create testclient container
  lxd_container:
    name: testclient
    architecture: x86_64
    state: started
    source:
      type: image
      mode: pull
      server: https://cloud-images.ubuntu.com/releases
      protocol: simplestreams
      alias: "{{ ansible_distribution_release }}"
    profiles: ["testclient"]
    timeout: 600

- name: Stop container
  lxd_container:
    name: testclient
    state: stopped
  register: result
  until: result is success
  retries: 3
  delay: 10

