Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add reserved ip submodule #415

Open
wants to merge 17 commits into
base: main
Choose a base branch
from
Open

feat: add reserved ip submodule #415

wants to merge 17 commits into from

Conversation

jor2
Copy link
Member

@jor2 jor2 commented Oct 9, 2023

Description

#395

Release required?

  • No release
  • Patch release (x.x.X)
  • Minor release (x.X.x)
  • Major release (X.x.x)
Release notes content

Provides a way to create a reserved ip independently from the VPE creation. Ensures that the consumer has got full control on the reserved ip's being attached. This is used in the scenario where a consumer wants to have the same ip for a given VPE type across VPC's.

Run the pipeline

If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.

Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:

/run pipeline

Checklist for reviewers

  • If relevant, a test for the change is included or updated with this PR.
  • If relevant, documentation for the change is included or updated with this PR.

For mergers

  • Use a conventional commit message to set the release level. Follow the guidelines.
  • Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
  • Use the Squash and merge option.

@jor2 jor2 self-assigned this Oct 9, 2023
@jor2 jor2 marked this pull request as ready for review October 9, 2023 16:59
@jor2
Copy link
Member Author

jor2 commented Oct 10, 2023

/run pipeline

5 similar comments
@vburckhardt
Copy link
Member

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Oct 16, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Oct 16, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Oct 18, 2023

/run pipeline

@vburckhardt
Copy link
Member

/run pipeline

Copy link
Member

@vburckhardt vburckhardt left a comment

Choose a reason for hiding this comment

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

Hi Jordan, a couple of comments inline. Also the top level readme should have one or 2 sentences around the reserved ip feature and why it exists.

modules/reserved-ips/main.tf Show resolved Hide resolved
variables.tf Outdated Show resolved Hide resolved
main.tf Outdated Show resolved Hide resolved
examples/reserved-ips/README.md Show resolved Hide resolved
@jor2
Copy link
Member Author

jor2 commented Nov 2, 2023

/run pipeline

1 similar comment
@jor2
Copy link
Member Author

jor2 commented Nov 7, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 8, 2023

blocked by #435

@shemau
Copy link
Contributor

shemau commented Nov 9, 2023

I have raised #437 as a possible solution to #435. It would require small changes to this PR.

@jor2
Copy link
Member Author

jor2 commented Nov 15, 2023

/run pipeline

8 similar comments
@jor2
Copy link
Member Author

jor2 commented Nov 22, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 22, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 22, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 22, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 23, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 23, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 27, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Nov 28, 2023

/run pipeline

Copy link
Contributor

@shemau shemau left a comment

Choose a reason for hiding this comment

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

There is an upgrade test in other_test.go. These tests are run during the continuous test, however, in that context what is the upgrade?

modules/reserved-ips/README.md Outdated Show resolved Hide resolved
modules/reserved-ips/README.md Outdated Show resolved Hide resolved
modules/reserved-ips/README.md Outdated Show resolved Hide resolved
@jor2
Copy link
Member Author

jor2 commented Dec 5, 2023

/run pipeline

2 similar comments
@jor2
Copy link
Member Author

jor2 commented Dec 5, 2023

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Dec 14, 2023

/run pipeline

@ocofaigh
Copy link
Member

ocofaigh commented Jan 4, 2024

/run pipeline

1 similar comment
@jor2
Copy link
Member Author

jor2 commented Jan 5, 2024

/run pipeline

ocofaigh
ocofaigh previously approved these changes Jan 5, 2024
examples/reserved-ips/README.md Outdated Show resolved Hide resolved
modules/reserved-ips/README.md Outdated Show resolved Hide resolved
modules/reserved-ips/README.md Outdated Show resolved Hide resolved
]
subnet_zone_list = [
[
{
Copy link
Member

Choose a reason for hiding this comment

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

Is there a reason for having to pass redundant data for the existing subnets that are targeted?

Copy link
Member Author

@jor2 jor2 Jan 10, 2024

Choose a reason for hiding this comment

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

id, name, and zone are used in the naming convention in main module so also needed here if names are to match.

}
```

The above will create 6 new reserved ip's as such and output them:
Copy link
Member

Choose a reason for hiding this comment

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

Will that example really create 6 ips or just 3 given that 3 subnets are passed.

Copy link
Member Author

Choose a reason for hiding this comment

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

3 for each service passed in cloud_services.

variable "subnet_zone_list" {
description = "List of subnets in the VPC where gateways and reserved IPs will be provisioned. This value is intended to use the `subnet_zone_list` output from the Landing Zone VPC Subnet Module (https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone-vpc) or from templates using that module for subnet creation."
type = list(
object({
Copy link
Member

Choose a reason for hiding this comment

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

Do we really need to ask for all of those informations?

Copy link
Member Author

Choose a reason for hiding this comment

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

I could remove cidr, need others for naming convention.

default = "us-south"
}

variable "cloud_services" {
Copy link
Member

Choose a reason for hiding this comment

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

It's only used for the naming of the reserved ips, so I would make this field more generic to take a list of strings. Also the description is not accurate.

Copy link
Member Author

Choose a reason for hiding this comment

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

vpe_name maybe needed in naming convention to match main module.

@jor2
Copy link
Member Author

jor2 commented Jan 24, 2024

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Jan 28, 2024

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Feb 7, 2024

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Feb 11, 2024

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Feb 19, 2024

/run pipeline

@jor2
Copy link
Member Author

jor2 commented Feb 26, 2024

/run pipeline

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants