Improve/fix RFC3442 entries and add tests

- Generate the rfc3442 words using a filter plugin, instead of Jinja
- basic sanity test when running plugin standalone
- Improve testing by creating/binding to a bridge0 interface in
  molecule docker container, then verifying that it's running
- Add ntp option
- multiplatform support

Change-Id: I7c2c3081e8919174dd29b3ab2fdd27b4f6eb843a
diff --git a/tasks/OpenBSD.yml b/tasks/OpenBSD.yml
new file mode 100644
index 0000000..7b33aa0
--- /dev/null
+++ b/tasks/OpenBSD.yml
@@ -0,0 +1,14 @@
+---
+# dhcpd tasks/OpenBSD.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+# installed in base, but need config
+
+- name: Set dhcpd and tftpd arguments for use with service module
+  set_fact:
+    dhcpd_arguments: "{{ dhcpd_interfaces | join(' ') }}"
+    tftpd_arguments: >
+      -v -l {{ tftpd_listen_ip | default(ansible_default_ipv4["address"]) }}
+      {{ tftpd_boot_dir }}
diff --git a/tasks/main.yml b/tasks/main.yml
index a030609..80927ec 100644
--- a/tasks/main.yml
+++ b/tasks/main.yml
@@ -17,7 +17,7 @@
     backup: true
     mode: "0644"
     owner: root
-    group: root
+    group: "{{ dhcpd_groupname }}"
     # validate: 'dhcpd -t -cf %s' # Does not work...
   notify:
     - dhcpd-restart
@@ -36,9 +36,11 @@
     name: "{{ dhcpd_service }}"
     enabled: true
     state: started
+    arguments: "{{ dhcpd_arguments | default(omit) }}"
 
 - name: Enable and start tftpd
   service:
     name: "{{ tftpd_service }}"
     enabled: true
     state: started
+    arguments: "{{ tftpd_arguments | default(omit) }}"