# Copyright (c) 2023 VEXXHOST, 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.

dependency:
  name: galaxy
driver:
  name: docker
platforms:
  - name: instance
    image: geerlingguy/docker-${MOLECULE_DISTRO:-ubuntu2004}-ansible:latest
    command: ${MOLECULE_DOCKER_COMMAND:-""}
    privileged: true
    cgroupns_mode: host
    pre_build_image: true
    purge_networks: true
    dns_servers:
      - 1.1.1.1
    docker_networks:
      - name: mgmt
        ipam_config:
          - subnet: 10.96.240.0/24
            gateway: 10.96.240.1
      - name: public
        ipam_config:
          - subnet: 10.96.250.0/24
            gateway: 10.96.250.1
    networks:
      - name: mgmt
      - name: public
    security_opts:
      - apparmor=unconfined
    volumes:
      - /dev:/dev
      - /lib/modules:/lib/modules:ro
      - /sys/fs/cgroup:/sys/fs/cgroup:rw
      - /usr/src:/usr/src:ro
    groups:
      - controllers
      - cephs
      - computes
provisioner:
  name: ansible
  config_options:
    connection:
      pipelining: true
    tags:
      skip: >-
        sysctl,
        ethtool,
        node-feature-discovery,
        kube-prometheus-stack,
        loki,
        vector,
        prometheus-ethtool-exporter,
        ipmi-exporter,
        prometheus-pushgateway,
        multipathd,
        lpfc,
        senlin,
        designate,
        heat,
        octavia,
        magnum,
        manila,
        horizon,
        openstack-exporter
  options:
    inventory: "${MOLECULE_EPHEMERAL_DIRECTORY}/workspace"
  inventory:
    links:
      host_vars: "${MOLECULE_SCENARIO_DIRECTORY}/host_vars"
      group_vars: "${MOLECULE_SCENARIO_DIRECTORY}/group_vars"
verifier:
  name: ansible
