Skip to content

TPT-4274: Add IPv6 support for VPC Linode interface#422

Merged
zliang-akamai merged 9 commits intodevfrom
zhiwei/vpc-ipv6
Apr 29, 2026
Merged

TPT-4274: Add IPv6 support for VPC Linode interface#422
zliang-akamai merged 9 commits intodevfrom
zhiwei/vpc-ipv6

Conversation

@zliang-akamai
Copy link
Copy Markdown
Member

📝 Description

Add IPv6 support for VPC Linode interface

This branch is based on the swap size fix branch, once the swap size fix (#418) merged, I will rebase it to reduce the diff size.

✔️ How to Test

Auto testing

make unit-test

Manual testing

locals { timestamp = regex_replace(timestamp(), "[- TZ:]", "") }

source "linode" "example" {
  image                = "linode/debian13"
  image_description    = "My Private Image"
  image_label          = "private-image-${local.timestamp}"
  instance_label       = "temporary-linode-${local.timestamp}"
  instance_type        = "g6-nanode-1"
  region               = "us-mia"
  ssh_username         = "root"
  interface_generation = "linode"

  linode_interface {
    vpc {
      subnet_id = 1234
      ipv4 {
        addresses {
          address = "auto"
        }
      }
      ipv6 {
        slaac {
          range = "auto"
        }
        is_public = true
      }
    }
  }
}

build {
  sources = ["source.linode.example"]
}

@zliang-akamai zliang-akamai requested review from a team as code owners April 3, 2026 22:49
@zliang-akamai zliang-akamai requested review from mawilk90 and mgwoj and removed request for a team April 3, 2026 22:49
type FlatVPCInterfaceIPv6 struct {
SLAAC []FlatVPCInterfaceIPv6SLAAC `mapstructure:"slaac" required:"false" cty:"slaac" hcl:"slaac"`
Ranges []FlatVPCInterfaceIPv6Range `mapstructure:"ranges" required:"false" cty:"ranges" hcl:"ranges"`
IsPublic *bool `mapstructure:"is_public" required:"false" cty:"is_public" hcl:"is_public"`
Copy link
Copy Markdown

@mgwoj mgwoj Apr 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do not get why IsPublic is defined as pointer. What is the meaning of nil value?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

because it's nullable. Generally we would like to distinguish null from the zero value of bool type in Go, which is false.

Copy link
Copy Markdown

@mgwoj mgwoj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks ok except my one question.

@zliang-akamai zliang-akamai merged commit 2c108b6 into dev Apr 29, 2026
13 checks passed
@zliang-akamai zliang-akamai deleted the zhiwei/vpc-ipv6 branch April 29, 2026 20:19
@yec-akamai yec-akamai added the new-feature for new features in the changelog. label Apr 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-feature for new features in the changelog.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants