try again, with puppetforge modules, correctly included now
[mirror/dsa-puppet.git] / 3rdparty / modules / neutron / manifests / quota.pp
diff --git a/3rdparty/modules/neutron/manifests/quota.pp b/3rdparty/modules/neutron/manifests/quota.pp
new file mode 100644 (file)
index 0000000..531214f
--- /dev/null
@@ -0,0 +1,134 @@
+# == Class: neutron::quota
+#
+# Setups neutron quota.
+#
+# === Parameters
+#
+# [*default_quota*]
+#   (optional) Default number of resources allowed per tenant,
+#   minus for unlimited. Defaults to -1.
+#
+# [*quota_network*]
+#   (optional) Number of networks allowed per tenant, and minus means unlimited.
+#   Defaults to 10.
+#
+# [*quota_subnet*]
+#   (optional) Number of subnets allowed per tenant, and minus means unlimited.
+#   Defaults to 10.
+#
+# [*quota_port*]
+#   (optional) Number of ports allowed per tenant, and minus means unlimited.
+#   Defaults to 50.
+#
+# [*quota_router*]
+#   (optional) Number of routers allowed per tenant, and minus means unlimited.
+#   Requires L3 extension. Defaults to 10.
+#
+# [*quota_floatingip*]
+#   (optional) Number of floating IPs allowed per tenant,
+#   and minus means unlimited. Requires L3 extension. Defaults to 50.
+#
+# [*quota_security_group*]
+#   (optional) Number of security groups allowed per tenant,
+#   and minus means unlimited. Requires securitygroup extension.
+#   Defaults to 10.
+#
+# [*quota_security_group_rule*]
+#   (optional) Number of security rules allowed per tenant,
+#   and minus means unlimited. Requires securitygroup extension.
+#   Defaults to 100.
+#
+# [*quota_driver*]
+#   (optional) Default driver to use for quota checks.
+#   Defaults to 'neutron.db.quota_db.DbQuotaDriver'.
+#
+# [*quota_firewall*]
+#   (optional) Number of firewalls allowed per tenant, -1 for unlimited.
+#   Defaults to '1'.
+#
+# [*quota_firewall_policy*]
+#   (optional) Number of firewalls policies allowed per tenant, -1 for unlimited.
+#   Defaults to '1'.
+#
+# [*quota_firewall_rule*]
+#   (optional) Number of firewalls rules allowed per tenant, -1 for unlimited.
+#   Defaults to '-1'.
+#
+# [*quota_health_monitor*]
+#   (optional) Number of health monitors allowed per tenant.
+#   A negative value means unlimited.
+#   Defaults to '-1'.
+#
+# [*quota_items*]
+#   (optional) Resource name(s) that are supported in quota features.
+#   Defaults to 'network,subnet,port'.
+#
+# [*quota_member*]
+#   (optional) Number of pool members allowed per tenant.
+#   A negative value means unlimited
+#   Defaults to '-1'.
+#
+# [*quota_network_gateway*]
+#   (optional) Number of network gateways allowed per tenant, -1 for unlimited.
+#   Defaults to '5'.
+#
+# [*quota_packet_filter*]
+#   (optional) Number of packet_filters allowed per tenant, -1 for unlimited.
+#   Defaults to '100'.
+#
+# [*quota_pool*]
+#   (optional) Number of pools allowed per tenant.
+#   A negative value means unlimited.
+#   Defaults to '10'.
+#
+# [*quota_vip*]
+#   (optional) Number of vips allowed per tenant.
+#   A negative value means unlimited.
+#   Defaults to '10'.
+#
+class neutron::quota (
+  $default_quota             = -1,
+  $quota_network             = 10,
+  $quota_subnet              = 10,
+  $quota_port                = 50,
+  # l3 extension
+  $quota_router              = 10,
+  $quota_floatingip          = 50,
+  # securitygroup extension
+  $quota_security_group      = 10,
+  $quota_security_group_rule = 100,
+  $quota_driver              = 'neutron.db.quota_db.DbQuotaDriver',
+  $quota_firewall            = 1,
+  $quota_firewall_policy     = 1,
+  $quota_firewall_rule       = -1,
+  $quota_health_monitor      = -1,
+  $quota_items               = 'network,subnet,port',
+  $quota_member              = -1,
+  $quota_network_gateway     = 5,
+  $quota_packet_filter       = 100,
+  $quota_pool                = 10,
+  $quota_vip                 = 10
+) {
+
+  neutron_config {
+    'quotas/default_quota':             value => $default_quota;
+    'quotas/quota_network':             value => $quota_network;
+    'quotas/quota_subnet':              value => $quota_subnet;
+    'quotas/quota_port':                value => $quota_port;
+    'quotas/quota_router':              value => $quota_router;
+    'quotas/quota_floatingip':          value => $quota_floatingip;
+    'quotas/quota_security_group':      value => $quota_security_group;
+    'quotas/quota_security_group_rule': value => $quota_security_group_rule;
+    'quotas/quota_driver':              value => $quota_driver;
+    'quotas/quota_firewall':            value => $quota_firewall;
+    'quotas/quota_firewall_policy':     value => $quota_firewall_policy;
+    'quotas/quota_firewall_rule':       value => $quota_firewall_rule;
+    'quotas/quota_health_monitor':      value => $quota_health_monitor;
+    'quotas/quota_items':               value => $quota_items;
+    'quotas/quota_member':              value => $quota_member;
+    'quotas/quota_network_gateway':     value => $quota_network_gateway;
+    'quotas/quota_packet_filter':       value => $quota_packet_filter;
+    'quotas/quota_pool':                value => $quota_pool;
+    'quotas/quota_vip':                 value => $quota_vip;
+  }
+}