Beispiel #1
0
    def delete_rule(cls, cloud, secgroup, from_port, to_port, protocol, cidr):
        try:
            args = {
                "groupid": secgroup.uuid,
                "fromPort": from_port,
                "toPort": to_port,
                "protocol": protocol,
                "cidr": cidr
            }

            rule = cls.cm_db.find("secgrouprule", output="object",
                                  **args).first()

            if rule is not None:
                # get the nova client for cloud
                cloud_provider = CloudProvider(cloud).provider
                # delete the rule from the cloud
                cloud_provider.delete_secgroup_rule(rule.uuid)
                # delete the local db record
                cls.cm_db.delete(rule)
                return "Rule [{} | {} | {} | {}] deleted" \
                    .format(from_port, to_port, protocol, cidr)
            else:
                return None

        except Exception as ex:
            Console.error(ex.message, ex)

        return
Beispiel #2
0
    def delete_rule(cls, cloud, secgroup, from_port, to_port, protocol, cidr):
        try:
            args = {
                "group": secgroup["uuid"],
                "fromPort": from_port,
                "toPort": to_port,
                "protocol": protocol,
                "cidr": cidr
            }

            rule = cls.cm.find(kind="secgrouprule",
                               output="object",
                               scope="first",
                               **args)

            if rule is not None:
                # get the nova client for cloud
                cloud_provider = CloudProvider(cloud).provider
                # delete the rule from the cloud
                cloud_provider.delete_secgroup_rule(rule.uuid)
                # delete the local db record
                cls.cm.delete(rule)
                return "Rule [{fromPort} | {toPort} | {protocol} | {cidr}] deleted" \
                    .format(**args)
            else:
                return None

        except Exception as ex:
            Console.error("delete rule")

        return
Beispiel #3
0
    def delete_rule(cls, cloud, secgroup, from_port, to_port, protocol, cidr):
        try:
            args = {
                "group": secgroup["uuid"],
                "fromPort": from_port,
                "toPort": to_port,
                "protocol": protocol,
                "cidr": cidr
            }

            rule = cls.cm.find(kind="secgrouprule",
                               output="object",
                               scope="first",
                               **args)

            if rule is not None:
                # get the nova client for cloud
                cloud_provider = CloudProvider(cloud).provider
                # delete the rule from the cloud
                cloud_provider.delete_secgroup_rule(rule.uuid)
                # delete the local db record
                cls.cm.delete(rule)
                return "Rule [{fromPort} | {toPort} | {protocol} | {cidr}] deleted" \
                    .format(**args)
            else:
                return None

        except Exception as ex:
            Console.error("delete rule")

        return
Beispiel #4
0
    def delete_rule(cls, cloud, secgroup, from_port, to_port, protocol, cidr):
        try:
            args = {
                "groupid": secgroup.uuid,
                "fromPort": from_port,
                "toPort": to_port,
                "protocol": protocol,
                "cidr": cidr
            }

            rule = cls.cm_db.find("secgrouprule", output="object",
                                  **args).first()

            if rule is not None:
                # get the nova client for cloud
                cloud_provider = CloudProvider(cloud).provider
                # delete the rule from the cloud
                cloud_provider.delete_secgroup_rule(rule.uuid)
                # delete the local db record
                cls.cm_db.delete(rule)
                return "Rule [{} | {} | {} | {}] deleted" \
                    .format(from_port, to_port, protocol, cidr)
            else:
                return None

        except Exception as ex:
            Console.error(ex.message, ex)

        return
Beispiel #5
0
 def delete_all_rules_cloud(cls, cloud, groupname):
     rules = cls.list_rules_cloud(cloud, groupname)
     provider = CloudProvider(cloud).provider
     if rules:
         for rule in rules:
             ruleid = rule['id']
             provider.delete_secgroup_rule(ruleid)
     return
Beispiel #6
0
 def delete_all_rules_cloud(cls, cloud, groupname):
     rules = cls.list_rules_cloud(cloud, groupname)
     provider = CloudProvider(cloud).provider
     if rules:
         for rule in rules:
             ruleid = rule['id']
             provider.delete_secgroup_rule(ruleid)
     return
Beispiel #7
0
 def delete_all_rules_cloud(cls, cloud, groupname):
     rules = cls.list_rules_cloud(cloud, groupname)
     provider = CloudProvider(cloud).provider
     if rules:
         for rule in rules:
             ruleid = rule['id']
             # only refresh those defined with a protocol
             # This leaves the default rule defined by
             # allowing the same secgroup untouched
             if rule['ip_protocol']:
                 provider.delete_secgroup_rule(ruleid)
     return
Beispiel #8
0
 def delete_all_rules_cloud(cls, cloud, groupname):
     rules = cls.list_rules_cloud(cloud, groupname)
     provider = CloudProvider(cloud).provider
     if rules:
         for rule in rules:
             ruleid = rule['id']
             # only refresh those defined with a protocol
             # This leaves the default rule defined by
             # allowing the same secgroup untouched
             if rule['ip_protocol']:
                 provider.delete_secgroup_rule(ruleid)
     return
Beispiel #9
0
 def delete_rule_cloud(cls, cloud, groupname, rulename):
     ret = None
     provider = CloudProvider(cloud).provider
     ruleid = cls.get_rule_cloud(cloud, groupname, rulename)
     if ruleid:
         ret = provider.delete_secgroup_rule(ruleid)
     #else:
     #    Console.error("Rule does not exist - Rule:{}, Group:{}"\
     #                  .format(rulename, groupname), traceflag=False)
     return ret
Beispiel #10
0
 def delete_rule_cloud(cls, cloud, groupname, rulename):
     ret = None
     provider = CloudProvider(cloud).provider
     ruleid = cls.get_rule_cloud(cloud, groupname, rulename)
     if ruleid:
         ret = provider.delete_secgroup_rule(ruleid)
     #else:
     #    Console.error("Rule does not exist - Rule:{}, Group:{}"\
     #                  .format(rulename, groupname), traceflag=False)
     return ret