Skip to content
This repository was archived by the owner on Apr 20, 2021. It is now read-only.

Commit 1704db1

Browse files
committed
DNM: add zuul vyos testing
This is an example job to start testing vyos Depends-On: ansible/ansible-zuul-jobs#34 Signed-off-by: Paul Belanger <[email protected]>
1 parent 58b40c9 commit 1704db1

File tree

14 files changed

+38
-39
lines changed

14 files changed

+38
-39
lines changed

.zuul.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
- job:
2+
name: network-vyos-test
3+
parent: ansible-network-vyos-base
4+
run: tests/foo.yaml
5+
6+
- project:
7+
check:
8+
jobs:
9+
- network-vyos-test

module_utils/vyos/facts/interfaces/interfaces.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
from ansible.module_utils. \
1313
vyos.facts.base import FactsBase
1414
from re import findall, M
15-
import q
15+
1616

1717
class InterfacesFacts(FactsBase):
1818
""" The vyos interfaces fact class

requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
ansible>=2.4.0

test-requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1+
ara
12
flake8
23
yamllint

tests/ansible.cfg

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[defaults]
2+
callback_whitelist = profile_tasks, timer
3+
retry_files_enabled = false
4+
roles_path = ../..
5+
stdout_callback = yaml
6+
7+
[ssh_connection]
8+
pipelining = true

tests/foo.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
- hosts: controller
2+
tasks:
3+
- name: Bootstrap tox environment
4+
args:
5+
chdir: ~/src/github.com/ansible/network
6+
shell: tox -v -evenv --notest
7+
8+
- name: Run ansible tests
9+
args:
10+
chdir: ~/src/github.com/ansible/network
11+
shell: tox -evenv -- ansible-playbook -v -c network_cli tests/vyos/modules/interfaces/main.yaml

tests/vyos/modules/interfaces/deleted.yaml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88
vyos_interfaces: &deleted
99
config:
1010
- name: eth1
11-
12-
- name: eth2
1311
state: deleted
1412
register: result
1513

@@ -21,7 +19,6 @@
2119
- "'delete interfaces ethernet {{ intf }} mtu' in result.commands"
2220
loop:
2321
- eth1
24-
- eth2
2522
loop_control:
2623
loop_var: intf
2724

tests/vyos/modules/interfaces/main.yaml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
---
22
- hosts: appliance
33
gather_facts: true
4-
gather_subset:
5-
- net_configuration_interfaces
64
tasks:
75
- import_role:
8-
name: ~/collections/network
6+
name: network
97

108
- include_tasks: "{{ item }}.yaml"
119
loop:

tests/vyos/modules/interfaces/merged.yaml

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,6 @@
1313
speed: auto
1414
duplex: auto
1515

16-
- name: eth2
17-
description: "Configured by Ansible - Interface 2 (ADMIN DOWN)"
18-
mtu: 600
19-
enable: false
20-
21-
- name: eth3
22-
description: "Configured by Ansible - Interface 3"
23-
speed: 100
24-
duplex: full
2516
state: merged
2617
register: result
2718

@@ -34,12 +25,6 @@
3425
- "'set interfaces ethernet eth1 mtu \\'1200\\'' in result.commands"
3526
- "'set interfaces ethernet eth1 duplex \\'auto\\'' in result.commands"
3627
- "'set interfaces ethernet eth1 speed \\'auto\\'' in result.commands"
37-
- "'set interfaces ethernet eth2 description \\'Configured by Ansible - Interface 2 (ADMIN DOWN)\\'' in result.commands"
38-
- "'set interfaces ethernet eth2 mtu \\'600\\'' in result.commands"
39-
- "'set interfaces ethernet eth2 disable' in result.commands"
40-
- "'set interfaces ethernet eth3 description \\'Configured by Ansible - Interface 3\\'' in result.commands"
41-
- "'set interfaces ethernet eth3 speed \\'100\\'' in result.commands"
42-
- "'set interfaces ethernet eth3 duplex \\'full\\'' in result.commands"
4328

4429
- name: Merge the provided configuration with the existing running configuration (IDEMPOTENT)
4530
vyos_interfaces: *merged

tests/vyos/modules/interfaces/overridden.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
- name: Overrides all device configuration with provided configuration
88
vyos_interfaces: &overridden
99
config:
10-
- name: eth2
10+
- name: eth1
1111
description: "Overridden by Ansible"
1212
mtu: 1500
1313
state: overridden
@@ -19,11 +19,8 @@
1919
- "'delete interfaces ethernet {{ item }} speed' in result.commands"
2020
- "'delete interfaces ethernet {{ item }} duplex' in result.commands"
2121
- "'delete interfaces ethernet {{ item }} mtu' in result.commands"
22-
- "'set interfaces ethernet eth2 description \\'Overridden by Ansible\\'' in result.commands"
23-
- "'set interfaces ethernet eth2 mtu \\'1500\\'' in result.commands"
2422
loop:
2523
- eth1
26-
- eth3
2724

2825
- name: Overrides all device configuration with provided configurations (IDEMPOTENT)
2926
vyos_interfaces: *overridden

tests/vyos/modules/interfaces/populate.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,5 @@
1010
set interfaces ethernet "{{ intf }}" mtu '1200'
1111
loop:
1212
- eth1
13-
- eth2
14-
- eth3
1513
loop_control:
1614
loop_var: intf

tests/vyos/modules/interfaces/remove_config.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,5 @@
1111
delete interfaces ethernet "{{ intf }}" disable
1212
loop:
1313
- eth1
14-
- eth2
15-
- eth3
1614
loop_control:
1715
loop_var: intf

tests/vyos/modules/interfaces/replaced.yaml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@
99
config:
1010
- name: eth1
1111
description: "Replaced by Ansible"
12-
13-
- name: eth2
14-
mtu: 1500
15-
description: "Replaced by Ansible"
1612
state: replaced
1713
register: result
1814

@@ -22,10 +18,6 @@
2218
- "'delete interfaces ethernet eth1 speed' in result.commands"
2319
- "'delete interfaces ethernet eth1 duplex' in result.commands"
2420
- "'set interfaces ethernet eth1 description \\'Replaced by Ansible\\'' in result.commands"
25-
- "'set interfaces ethernet eth2 mtu \\'1500\\'' in result.commands"
26-
- "'delete interfaces ethernet eth2 speed' in result.commands"
27-
- "'delete interfaces ethernet eth2 duplex' in result.commands"
28-
- "'set interfaces ethernet eth2 description \\'Replaced by Ansible\\'' in result.commands"
2921

3022
- name: Replace device configurations of listed interfaces with provided configurarions
3123
vyos_interfaces: *replaced

tox.ini

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ envlist = linters
66
[testenv]
77
basepython = python3
88
install_command = pip install {opts} {packages}
9-
deps = -r{toxinidir}/test-requirements.txt
9+
deps = -r{toxinidir}/requirements.txt
10+
-r{toxinidir}/test-requirements.txt
1011

1112
[testenv:linters]
1213
basepython = python3
@@ -15,6 +16,9 @@ commands =
1516
flake8 {posargs}
1617

1718
[testenv:venv]
19+
setenv =
20+
ANSIBLE_CONFIG = {toxinidir}/tests/ansible.cfg
21+
ANSIBLE_CALLBACK_PLUGINS = {envsitepackagesdir}/ara/plugins/callbacks
1822
basepython = python3
1923
commands = {posargs}
2024

0 commit comments

Comments
 (0)