openstack_networking_port_secgroup_associate_v2

Manages a V2 port's security groups within OpenStack. Useful, when the port was created not by Terraform (e.g. Manila or LBaaS). It should not be used, when the port was created directly within Terraform.

When the resource is deleted, Terraform doesn't delete the port, but unsets the list of user defined security group IDs. However, if enforce is set to true and the resource is deleted, Terraform will remove all assigned security group IDs.

Example Usage

Append a security group to an existing port

data "openstack_networking_port_v2" "system_port" {
  fixed_ip = "10.0.0.10"
}

data "openstack_networking_secgroup_v2" "secgroup" {
  name = "secgroup"
}

resource "openstack_networking_port_secgroup_associate_v2" "port_1" {
  port_id = data.openstack_networking_port_v2.system_port.id
  security_group_ids = [
    data.openstack_networking_secgroup_v2.secgroup.id,
  ]
}

Enforce a security group to an existing port

data "openstack_networking_port_v2" "system_port" {
  fixed_ip = "10.0.0.10"
}

data "openstack_networking_secgroup_v2" "secgroup" {
  name = "secgroup"
}

resource "openstack_networking_port_secgroup_associate_v2" "port_1" {
  port_id = data.openstack_networking_port_v2.system_port.id
  enforce = "true"
  security_group_ids = [
    data.openstack_networking_secgroup_v2.secgroup.id,
  ]
}

Remove all security groups from an existing port

data "openstack_networking_port_v2" "system_port" {
  fixed_ip = "10.0.0.10"
}

resource "openstack_networking_port_secgroup_associate_v2" "port_1" {
  port_id            = data.openstack_networking_port_v2.system_port.id
  enforce            = "true"
  security_group_ids = []
}

Argument Reference

The following arguments are supported:

Attributes Reference

The following attributes are exported:

Import

Port security group association can be imported using the id of the port, e.g.

$ terraform import openstack_networking_port_secgroup_associate_v2.port_1 eae26a3e-1c33-4cc1-9c31-0cd729c438a1