diff --git a/geant/gap_ansible/roles/edge_port/templates/juniper/edge_port_create.j2 b/geant/gap_ansible/roles/edge_port/templates/juniper/edge_port_create.j2
new file mode 100644
index 0000000000000000000000000000000000000000..5b71496d707de86d8121249bd2034be7489907dd
--- /dev/null
+++ b/geant/gap_ansible/roles/edge_port/templates/juniper/edge_port_create.j2
@@ -0,0 +1,23 @@
+{% set gaid_prefix = '$' %}
+{% set csn_prefix = '#' %}
+
+
+{% for member in  ep.edge_port_ae_members %}
+set interfaces {{ member.interface_name }} description "PHY CUSTOMER {{ partner_name }} P_{{ ep.edge_port_name }}{{ ' | '+member.interface_description if member.interface_description is string }}
+set interfaces {{ member.interface_name }} gigether-options 802.3ad {{ ep.edge_port_name }}
+{% endfor %}
+{% if removed_ae_members is defined and removed_ae_members|length > 0 %}
+  {% for member in removed_ae_members %}
+deactivate {{ member.interface_name }}
+  {% endfor %}
+{% endif %}
+
+set interfaces {{ ep.edge_port_name }} description LAG {{ ep.edge_port_type }} {{ partner_name }}{{ ' | '+gaid_prefix+ep.ga_id if ep.ga_id is string }}{{ ' | '+csn_prefix+(ep.custom_service_name | replace("#","")) if ep.custom_service_name is string }}{{ ' | '+ep.edge_port_description if ep.edge_port_description is string }}
+set interfaces {{ ep.edge_port_name }} {% 'flexible-vlan-tagging' if ep.encapsulation == 'qinq' else 'vlan-tagging' %}
+set interfaces {{ ep.edge_port_name }} mtu 9192
+set interfaces {{ ep.edge_port_name }} encapsulation flexible-ethernet-services
+set interfaces {{ ep.edge_port_name }} aggregated-ether-options minimum-links {{ ep.minimum-links }}
+set interfaces {{ ep.edge_port_name }} aggregated-ether-options link-speed {{ ep.edge_port_ae_members[0].memeber_speed }}
+{% if enable_lacp %}
+set interfaces {{ ep.edge_port_name }} aggregated-ether-options lacp active
+{% endif %}