diff --git a/.cookiecutter_params.json b/.cookiecutter_params.json
new file mode 100644
index 0000000..c2d05af
--- /dev/null
+++ b/.cookiecutter_params.json
@@ -0,0 +1,24 @@
+{
+    "_template": "../cookiecutters/role",
+    "author": "Open Networking Foundation",
+    "company": "Open Networking Foundation",
+    "description": "strongSwan IPSec VPN",
+    "email": "support@opennetworking.org",
+    "issue_tracker_url": "https://jira.opennetworking.org/",
+    "license": "Apache-2.0",
+    "min_ansible_version": "2.9.5",
+    "molecule_privileged": "true",
+    "platform": "deleteme",
+    "platforms": {
+        "Ubuntu": [
+            "16.04",
+            "18.04"
+        ]
+    },
+    "role_defaults": {
+        "example_default1": "example_value1",
+        "example_default2": "example_value2"
+    },
+    "role_name": "strongswan",
+    "year": "2020"
+}
diff --git a/.gitreview b/.gitreview
new file mode 100644
index 0000000..8b8bd3f
--- /dev/null
+++ b/.gitreview
@@ -0,0 +1,5 @@
+[gerrit]
+host=gerrit.opencord.org
+port=29418
+project=ansible/role/strongswan.git
+defaultremote=origin
diff --git a/.reuse/dep5 b/.reuse/dep5
new file mode 100644
index 0000000..36ce305
--- /dev/null
+++ b/.reuse/dep5
@@ -0,0 +1,5 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+
+Files: .cookiecutter_params.json VERSION .gitreview
+Copyright: 2020 Open Networking Foundation
+License: Apache-2.0
diff --git a/LICENSES/Apache-2.0.txt b/LICENSES/Apache-2.0.txt
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/LICENSES/Apache-2.0.txt
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   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.
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..3990c2e
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,39 @@
+# strongswan Makefile
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+SHELL = bash -eu -o pipefail
+
+.DEFAULT_GOAL := help
+.PHONY: test lint yamllint ansiblelint license help
+
+test: ## run tests on the playbook with molecule
+	molecule --version
+	molecule test
+
+lint: yamllint ansiblelint ## run all lint checks
+
+# all YAML files
+YAML_FILES ?= $(shell find . -type f \( -name '*.yaml' -o -name '*.yml' \) -print )
+
+yamllint: ## lint check with yamllint
+	yamllint --version
+	yamllint \
+    -d "{extends: default, rules: {line-length: {max: 99}}}" \
+    -s $(YAML_FILES)
+
+ansiblelint: ## lint check with ansible-lint
+	ansible-lint --version
+	ansible-lint -v .
+	ansible-lint -v molecule/*/*
+
+license: ## Check license with the reuse tool
+	reuse --version
+	reuse --root . lint
+
+help: ## Print help for each target
+	@echo strongswan test targets
+	@echo
+	@grep '^[[:alnum:]_-]*:.* ##' $(MAKEFILE_LIST) \
+    | sort | awk 'BEGIN {FS=":.* ## "}; {printf "%-25s %s\n", $$1, $$2};'
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..8d29aac
--- /dev/null
+++ b/README.md
@@ -0,0 +1,61 @@
+<!--
+SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+SPDX-License-Identifier: Apache-2.0
+--!>
+# strongSwan
+
+strongSwan IPSec VPN
+
+
+## Requirements
+
+Requires BIRD to be installed if the VPNs are dynamic route based.
+
+Minimum ansible version: 2.9.5
+
+
+## Examples
+
+### Example: policy-based VPN
+```yaml
+strongswan_conf_install_routes: yes
+strongswan_conf_connections:
+  - name: tunnel1
+    psk: secret
+    left: 10.0.0.3
+    leftid: 128.105.144.189
+    left_subnets: 0.0.0.0/0
+    right: 34.124.6.243
+    right_subnets: 0.0.0.0/0
+```
+
+### Example: dynamic route-based VPN
+
+```yaml
+strongswan_conf_connections:
+  - name: tunnel1
+    vti:
+      local: 169.254.0.2/30
+      remote: 169.254.0.1/30
+      mark: "100"
+    psk: secret
+    left: 10.0.0.3
+    leftid: 128.105.144.189
+    left_subnets: 0.0.0.0/0
+    right: 34.124.6.243
+```
+
+### Example: playbook
+```yaml
+- hosts: all
+  vars:
+  roles:
+    - bird
+    - strongswan
+```
+
+## License and Author
+
+© 2020 Open Networking Foundation <support@opennetworking.org>
+
+License: Apache-2.0
diff --git a/VERSION b/VERSION
new file mode 100644
index 0000000..c0ab82c
--- /dev/null
+++ b/VERSION
@@ -0,0 +1 @@
+0.0.1-dev
diff --git a/defaults/main.yml b/defaults/main.yml
new file mode 100644
index 0000000..5261e7a
--- /dev/null
+++ b/defaults/main.yml
@@ -0,0 +1,40 @@
+---
+# strongswan defaults/main.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+# Default values set here work with Google Cloud VPN
+#
+# Upstream docs:
+#   https://wiki.strongswan.org/projects/strongswan/wiki/ConfigurationFiles
+#   https://wiki.strongswan.org/projects/strongswan/wiki/IpsecConf
+#   https://wiki.strongswan.org/projects/strongswan/wiki/ConnSection
+
+# How long the keying channel of a connection (ISAKMP or IKE SA) should last
+strongswan_conf_phase1_lifetime: "600m"
+
+# How long a particular instance of a connection should last
+strongswan_conf_phase2_lifetime: "180m"
+
+# Which protocol should be used to initialize the connection
+# Acceptable values are ike, ikev1, or ikev2
+strongswan_conf_key_exchange: "ikev2"
+
+# IKE/ISAKMP SA encryption/authentication algorithms
+strongswan_conf_ike_cipher: "aes256gcm16-sha512-modp4096"
+
+# ESP encryption/authentication algorithms
+strongswan_conf_esp_cipher: "aes256gcm16-sha512-modp8192"
+
+# How the two security gateways should authenticate each other
+# NOTE: only psk is supported
+strongswan_conf_auth_type: "psk"
+
+# Handle routes in strongSwan or not
+# Set no if VPNs are route based
+strongswan_conf_install_routes: false
+
+# List of connections to configure
+# See README.md for the examples
+strongswan_conf_connections: []
diff --git a/files/ipsec-vti.sh b/files/ipsec-vti.sh
new file mode 100644
index 0000000..0d9022e
--- /dev/null
+++ b/files/ipsec-vti.sh
@@ -0,0 +1,103 @@
+#!/bin/bash
+#
+# strongswan files/ipsec-vti.sh - Ansible managed: Do NOT edit this file manually!
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+set -o nounset
+set -o errexit
+
+echo "${PLUTO_VERB}" >> /tmp/yoyo
+while [[ $# -gt 1 ]]; do
+	case ${1} in
+		-ln|--link-name)
+			TUNNEL_NAME="${2}"
+			TUNNEL_PHY_INTERFACE="${PLUTO_INTERFACE}"
+			shift
+			;;
+		-ll|--link-local)
+			TUNNEL_LOCAL_ADDRESS="${2}"
+			TUNNEL_LOCAL_ENDPOINT="${PLUTO_ME}"
+			shift
+			;;
+		-lr|--link-remote)
+			TUNNEL_REMOTE_ADDRESS="${2}"
+			TUNNEL_REMOTE_ENDPOINT="${PLUTO_PEER}"
+			shift
+			;;
+		-m|--mark)
+			TUNNEL_MARK="${2}"
+			shift
+			;;
+		-r|--static-route)
+			TUNNEL_STATIC_ROUTE="${2}"
+			shift
+			;;
+		*)
+			echo "${0}: Unknown argument \"${1}\"" >&2
+			;;
+	esac
+	shift
+done
+
+command_exists() {
+	type "$1" >&2 2>&2
+}
+
+create_interface() {
+	{
+		echo "ip link add ${TUNNEL_NAME} type vti local ${TUNNEL_LOCAL_ENDPOINT} remote ${TUNNEL_REMOTE_ENDPOINT} key ${TUNNEL_MARK}"
+		echo "ip addr add ${TUNNEL_LOCAL_ADDRESS} remote ${TUNNEL_REMOTE_ADDRESS} dev ${TUNNEL_NAME}"
+		echo "ip link set ${TUNNEL_NAME} up mtu 1387"
+	} >> /tmp/yoyo
+	ip link add "${TUNNEL_NAME}" type vti local "${TUNNEL_LOCAL_ENDPOINT}" remote "${TUNNEL_REMOTE_ENDPOINT}" key "${TUNNEL_MARK}"
+	ip addr add "${TUNNEL_LOCAL_ADDRESS}" remote "${TUNNEL_REMOTE_ADDRESS}" dev "${TUNNEL_NAME}"
+	ip link set "${TUNNEL_NAME}" up mtu 1387
+}
+
+configure_sysctl() {
+	sysctl -w net.ipv4.ip_forward=1
+	sysctl -w net.ipv4.conf."${TUNNEL_NAME}".rp_filter=2
+	sysctl -w net.ipv4.conf."${TUNNEL_NAME}".disable_policy=1
+	sysctl -w net.ipv4.conf."${TUNNEL_PHY_INTERFACE}".disable_xfrm=1
+	sysctl -w net.ipv4.conf."${TUNNEL_PHY_INTERFACE}".disable_policy=1
+}
+
+add_route() {
+	IFS=',' read -ra route <<< "${TUNNEL_STATIC_ROUTE}"
+    	for i in "${route[@]}"; do
+	    ip route add "${i}" dev "${TUNNEL_NAME}" metric "${TUNNEL_MARK}"
+	done
+}
+
+cleanup() {
+        IFS=',' read -ra route <<< "${TUNNEL_STATIC_ROUTE}"
+        for i in "${route[@]}"; do
+            ip route del "${i}" dev "${TUNNEL_NAME}" metric "${TUNNEL_MARK}"
+        done
+}
+
+delete_interface() {
+	ip link set "${TUNNEL_NAME}" down
+	ip link del "${TUNNEL_NAME}"
+}
+
+# main execution starts here
+
+command_exists ip || echo "ERROR: ip command is required to execute the script, check if you are running as root, mostly to do with path, /sbin/" >&2 2>&2
+command_exists iptables || echo "ERROR: iptables command is required to execute the script, check if you are running as root, mostly to do with path, /sbin/" >&2 2>&2
+command_exists sysctl || echo "ERROR: sysctl command is required to execute the script, check if you are running as root, mostly to do with path, /sbin/" >&2 2>&2
+
+case "${PLUTO_VERB}" in
+	up-client)
+		create_interface
+		configure_sysctl
+		add_route
+        echo "A"
+		;;
+	down-client)
+		cleanup
+		delete_interface
+		;;
+esac
diff --git a/files/vti.conf b/files/vti.conf
new file mode 100644
index 0000000..f623fc0
--- /dev/null
+++ b/files/vti.conf
@@ -0,0 +1,9 @@
+# strongswan files/vti.conf - Ansible managed: Do NOT edit this file manually!
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+charon {
+    # We will handle routes by ourselves
+    install_routes = no
+}
diff --git a/handlers/main.yml b/handlers/main.yml
new file mode 100644
index 0000000..52fd4c2
--- /dev/null
+++ b/handlers/main.yml
@@ -0,0 +1,13 @@
+---
+# strongswan handlers/main.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+- name: start-strongswan
+  service:
+    name: "{{ strongswan_service }}"
+    state: started
+
+- name: restart-ipsec
+  command: ipsec restart
diff --git a/meta/main.yml b/meta/main.yml
new file mode 100644
index 0000000..477b1d1
--- /dev/null
+++ b/meta/main.yml
@@ -0,0 +1,27 @@
+---
+# strongswan meta/main.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+galaxy_info:
+  author: Open Networking Foundation
+  description: strongSwan IPSec VPN
+  company: Open Networking Foundation
+
+  issue_tracker_url: https://jira.opennetworking.org/
+
+  license: Apache-2.0
+
+  min_ansible_version: 2.9.5
+
+  platforms:
+    - name: Ubuntu
+      versions:
+        - "16.04"
+        - "18.04"
+
+  galaxy_tags:
+    - strongswan
+
+dependencies: []
diff --git a/molecule/default/converge.yml b/molecule/default/converge.yml
new file mode 100644
index 0000000..7d3e9b6
--- /dev/null
+++ b/molecule/default/converge.yml
@@ -0,0 +1,36 @@
+---
+# strongswan molecule/default/verify.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+- name: Converge
+  hosts: all
+  vars:
+    strongswan_conf_connections:
+      - name: tunnel1
+        psk: secret
+        vti:
+          local: 169.254.0.2/30
+          remote: 169.254.0.1/30
+          mark: "100"
+        left: 10.0.0.3
+        leftid: 128.105.144.189
+        left_subnets: 0.0.0.0/0
+        right: 34.124.6.243
+        right_subnets: 0.0.0.0/0
+      - name: tunnel2
+        psk: secret
+        vti:
+          local: 169.254.0.6/30
+          remote: 169.254.0.5/30
+          mark: "200"
+        left: 10.0.0.3
+        leftid: 128.105.144.189
+        left_subnets: 0.0.0.0/0
+        right: 34.104.68.245
+        right_subnets: 0.0.0.0/0
+  tasks:
+    - name: "Include strongswan"
+      include_role:
+        name: "strongswan"
diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml
new file mode 100644
index 0000000..5cd3ff9
--- /dev/null
+++ b/molecule/default/molecule.yml
@@ -0,0 +1,20 @@
+---
+# strongswan molecule/default/molecule.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+dependency:
+  name: galaxy
+driver:
+  name: docker
+platforms:
+  - name: "ubuntu-18.04-priv"
+    image: "quay.io/paulfantom/molecule-systemd:ubuntu-18.04"
+    privileged: true
+    volumes:
+      - "/sys/fs/cgroup:/sys/fs/cgroup:ro"
+provisioner:
+  name: ansible
+verifier:
+  name: ansible
diff --git a/molecule/default/verify.yml b/molecule/default/verify.yml
new file mode 100644
index 0000000..37b0ca0
--- /dev/null
+++ b/molecule/default/verify.yml
@@ -0,0 +1,32 @@
+---
+# strongswan molecule/default/verify.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+- name: Verify
+  hosts: all
+  vars:
+  tasks:
+    - name: Gather package facts
+      package_facts:
+        manager: auto
+
+    - name: Verify package is installed
+      assert:
+        that: "'{{ item }}' in ansible_facts.packages"
+      with_items:
+        - strongswan
+
+    - name: Verify ipsec connections are configured
+      command: ipsec status
+      register: ipsec_status
+      changed_when: false
+      failed_when: item not in ipsec_status.stdout
+      with_items:
+        - tunnel1
+        - tunnel2
+
+    - name: Debug results
+      debug:
+        var: ipsec_status
diff --git a/tasks/Debian.yml b/tasks/Debian.yml
new file mode 100644
index 0000000..f9e890b
--- /dev/null
+++ b/tasks/Debian.yml
@@ -0,0 +1,19 @@
+---
+# strongswan tasks/Debian.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+- name: Install strongSwan package (Debian)
+  apt:
+    name: "{{ strongswan_package }}"
+    state: "present"
+    update_cache: true
+    cache_valid_time: 3600
+  notify:
+    - start-strongswan
+
+- name: Enable strongSwan Service
+  service:
+    name: "{{ strongswan_service }}"
+    enabled: true
diff --git a/tasks/main.yml b/tasks/main.yml
new file mode 100644
index 0000000..dff3f3a
--- /dev/null
+++ b/tasks/main.yml
@@ -0,0 +1,36 @@
+---
+# strongswan tasks/main.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+- name: Include OS-specific vars
+  include_vars: "{{ ansible_os_family }}.yml"
+
+- name: Include OS-specific tasks
+  include_tasks: "{{ ansible_os_family }}.yml"
+
+- name: Copy VTI configuration and script
+  copy:
+    src: "{{ item.src }}"
+    dest: "{{ item.dest }}"
+    owner: root
+    group: root
+    mode: "{{ item.mode }}"
+  with_items:
+    - {src: "vti.conf", dest: "/etc/strongswan.d/vti.conf", mode: 0644}
+    - {src: "ipsec-vti.sh", dest: "/etc/ipsec.d/ipsec-vti.sh", mode: a+x}
+  when: not strongswan_conf_install_routes
+
+- name: Create ipsec configurations from template
+  template:
+    src: "{{ item.src }}"
+    dest: "{{ item.dest }}"
+    owner: root
+    group: root
+    mode: 0640
+  with_items:
+    - {src: "ipsec.secrets.j2", dest: "/etc/ipsec.secrets"}
+    - {src: "ipsec.conf.j2", dest: "/etc/ipsec.conf"}
+  notify:
+    - restart-ipsec
diff --git a/templates/ipsec.conf.j2 b/templates/ipsec.conf.j2
new file mode 100644
index 0000000..2410e59
--- /dev/null
+++ b/templates/ipsec.conf.j2
@@ -0,0 +1,40 @@
+# strongswan templates/ipsec.conf - {{ ansible_managed }}
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+# basic configuration
+config setup
+    # strictcrlpolicy=yes
+    # uniqueids = no
+
+conn %default
+    ikelifetime={{ strongswan_conf_phase1_lifetime }}
+    keylife={{ strongswan_conf_phase2_lifetime }}
+    lifetime={{ strongswan_conf_phase2_lifetime }}
+    rekeymargin=3m
+    keyingtries=3
+    keyexchange={{ strongswan_conf_key_exchange }}
+    mobike=no
+    ike={{ strongswan_conf_ike_cipher }}
+    esp={{ strongswan_conf_esp_cipher }}
+    authby={{ strongswan_conf_auth_type }}
+
+{% for conn in strongswan_conf_connections %}
+conn {{ conn.name }}
+{% if conn.vti is defined %}
+    leftupdown="/etc/ipsec.d/ipsec-vti.sh -ln {{ conn.name }} -ll {{ conn.vti.local }} -lr {{ conn.vti.remote }} -m {{ conn.vti.mark }}"
+    mark={{ conn.vti.mark }}
+{% endif %}
+    left={{ conn.left }}
+    leftid={{ conn.leftid }}
+    leftsubnet={{ conn.left_subnets }}
+    leftauth={{ strongswan_conf_auth_type }}
+    right={{ conn.right }}
+    rightsubnet={{ conn.right_subnets }}
+    rightauth={{ strongswan_conf_auth_type }}
+    auto=start
+    type=tunnel
+    dpdaction=restart
+    closeaction=restart
+{% endfor %}
diff --git a/templates/ipsec.secrets.j2 b/templates/ipsec.secrets.j2
new file mode 100644
index 0000000..b7b99d6
--- /dev/null
+++ b/templates/ipsec.secrets.j2
@@ -0,0 +1,8 @@
+# strongswan templates/ipsec.secrets - {{ ansible_managed }}
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+
+{% for conn in strongswan_conf_connections %}
+{{ conn.right }} : PSK "{{ conn.psk }}"
+{% endfor %}
diff --git a/vars/Debian.yml b/vars/Debian.yml
new file mode 100644
index 0000000..90f8855
--- /dev/null
+++ b/vars/Debian.yml
@@ -0,0 +1,11 @@
+---
+# strongswan vars/Debian.yml
+#
+# SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
+# SPDX-License-Identifier: Apache-2.0
+#
+# NOTE: Only put platform/OS-specific variables in this file.
+# Put all other variables in the 'defaults/main.yml' file.
+
+strongswan_package: strongswan
+strongswan_service: strongswan
