-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmolecule.yml
145 lines (124 loc) · 4.33 KB
/
molecule.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
---
# role specific overrides for molecule's config options. These will override ALL other config files.
molecule:
testinfra_dir: foo
# # directory in CWD to place all temp files, etc.
# molecule_dir: .molecule
# # where temporary state will be stored (lives under molecule_dir)
# state_file: state
# # name of temporary vagrantfile / rakefile created during runs (lives under molecule_dir)
# vagrantfile_file: vagrantfile
# rakefile_file: rakefile
# # directories to ignore when doing trailing whitespace checks on files during verify command
# ignore_paths:
# - .git
# - .vagrant
# - .molecule
# # directory to look for serverspec tests
# serverspec_dir: spec
# # directory to look for testinfra tests
# testinfra_dir: tests
# # template files to load when creating corresponding temporary files
# # this would be a good place to specify your own ansible.cfg template, for example
# vagrantfile_template: vagrantfile.j2
# ansible_config_template: ansible.cfg.j2
# rakefile_template: rakefile.j2
# # ssh arguments passed to `molecule login` command
# raw_ssh_args:
# - -o StrictHostKeyChecking=no
# - -o UserKnownHostsFile=/dev/null
# # sequence of commands to run when performing `molecule test`
# test:
# sequence:
# - destroy
# - create
# - converge
# - idempotence
# - verify
# configuration options for the internal call to ansible-playbook
# ansible:
# # by default this lives under molecule_dir and is generated by molecule during execution
# config_file: ansible.cfg
# # playbook to execute during `molecule converge`
# playbook: playbook.yml
# # install role dependencies from that file with `ansible-galaxy` during `molecule converge`
# requirements_file: requirements.yml
# # verbosity for ansible-playbook
# verbose: vvvv
# # most CLI options to ansible-playbook can be passed in this format, even those not listed
# user: vagrant
# connection: ssh
# timeout: 30
# sudo: True
# sudo_user: False
# ask_sudo_pass: False
# ask_vault_pass: False
# vault_password_file: False
# limit: all
# diff: True
# tags: False
# host_key_checking: False
# # this can be the path to a custom inventory script/directory
# # by default this lives under molecule_dir and is generated by molecule during execution
# inventory_file: ansible_inventory
# # raw ssh arguments passed to ansible-playbook
# raw_ssh_args:
# - -o UserKnownHostsFile=/dev/null
# - -o IdentitiesOnly=yes
# - -o ControlMaster=auto
# - -o ControlPersist=60s
# # any additional environment variables that ansible-playbook supports can be passed in here
# raw_env_vars:
# ANSIBLE_ACTION_PLUGINS: ../plugins
# configuration options for the internal call to vagrant
vagrant:
# vagrant arguments that are global to all instances
raw_config_args:
- "ssh.insert_key = false"
# - "vm.network 'forwarded_port', guest: 80, host: 8080"
# molecule's --platform option will look for these names
platforms:
- name: trusty64
box: trusty64
box_url: https://vagrantcloud.com/ubuntu/boxes/trusty64/versions/14.04/providers/virtualbox.box
# Optional: box_version - support for vagrant versioning
# box_version: 0.1.0
# Optional: very basic support for vagrant-triggers plugin
# triggers:
# - trigger: before
# action: destroy
# cmd: run_remote 'subscription-manager unregister'
providers:
- name: virtualbox
type: virtualbox
options:
memory: 2512
# cpus: 2
instances:
- name: nexus-01
ansible_groups:
- group_1
- group_2
interfaces:
- network_name: private_network
type: dhcp
auto_config: true
options:
# prevents vagrant-01 from becoming vagrant-01-rhel-7 (platform is appended by default)
append_platform_to_hostname: no
# vagrant arguments specific to this instance
# raw_config_args:
# - "vm.synced_folder '../projects/web', '/web'"
# - name: network-01
# ansible_groups:
# - group_1
# - group_2
# interfaces:
# - network_name: private_network
# type: dhcp
# auto_config: true
# - network_name: private_network
# type: dhcp
# auto_config: false
# options:
# append_platform_to_hostname: no