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: New module Issue1314 P2S VPN Gateway resource #3780

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

Conversation

ericscheffler
Copy link
Contributor

Description

This PR contains a new AVM resource for the Microsoft.Network/p2svpnGateways resource provider, which builds a P2S VPN Gateway within a VWAN Virtual Hub. This resource requires a Virtual WAN and Virtual Hub, as well as a VPN Server Configuration to deploy successfully.

Closes #1314

Pipeline Reference

avm.res.network.p2s-vpn-gateway

Type of Change

  • Update to CI Environment or utilities (Non-module affecting changes)
  • Azure Verified Module updates:
    • Bugfix containing backwards-compatible bug fixes, and I have NOT bumped the MAJOR or MINOR version in version.json:
      • Someone has opened a bug report issue, and I have included "Closes #{bug_report_issue_number}" in the PR description.
      • The bug was found by the module author, and no one has opened an issue to report it yet.
    • Feature update backwards compatible feature updates, and I have bumped the MINOR version in version.json.
    • Breaking changes and I have bumped the MAJOR version in version.json.
    • Update to documentation

Checklist

  • I'm sure there are no other open Pull Requests for the same update/change
  • I have run Set-AVMModule locally to generate the supporting module files.
  • My corresponding pipelines / checks run clean and green without any errors or warnings

@ericscheffler ericscheffler requested review from a team as code owners November 14, 2024 00:22
@avm-team-linter avm-team-linter bot added the Needs: Core Team 🧞 This item needs the AVM Core Team to review it label Nov 14, 2024
@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs: Triage 🔍 Maintainers need to triage still label Nov 14, 2024

Important

The "Needs: Triage 🔍" label must be removed once the triage process is complete!

Tip

For additional guidance on how to triage this issue/PR, see the BRM Issue Triage documentation.

@microsoft-github-policy-service microsoft-github-policy-service bot added the Type: AVM 🅰️ ✌️ Ⓜ️ This is an AVM related issue label Nov 14, 2024

Important

If this is a module-related PR, being submitted by the sole owner of the module, the AVM core team must review and approve it (as module owners can't approve their own PRs).

To indicate this PR needs the core team''s attention, apply the "Needs: Core Team 🧞" label!

The core team will only review and approve PRs that have this label applied!

@jtracey93
Copy link
Contributor

Hey @ericscheffler ,

Firstly, thanks for your work on this PR!

We have made some changes to the AVM CI, detailed below, which means we need you to update your fork to pull in these latest changes and re-run your tests to show they still are passing prior to approving and merging this PR, as we don't and it fails once merged the publishing of your module will fail and will be blocked going forward until the test pass again via additional PRs.

Changes to CI That Have Been Made That You Need To Take Action On

Any questions reach out to the AVM Core Team by tagging us in your PR here or internally via Teams

Thanks

Jack (AVM Core Team)

@ericscheffler ericscheffler marked this pull request as draft November 18, 2024 16:16
@ericscheffler
Copy link
Contributor Author

Converted to draft, troubleshooting new issues with WAF test following recent CI/CD changes

@ericscheffler
Copy link
Contributor Author

Updated & tests succeeding, marking as Ready for review

@ericscheffler ericscheffler marked this pull request as ready for review November 18, 2024 19:21
@eriqua eriqua changed the title feat: Issue1314 P2S VPN Gateway resource feat: New module Issue1314 P2S VPN Gateway resource Nov 21, 2024
param vpnClientAddressPoolAddressPrefixes array = []

@description('Required. The resource ID of the gateways virtual hub.')
param virtualHubId string
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
param virtualHubId string
param virtualHubResourceId string

As per ref

param vpnGatewayScaleUnit int?

@description('Required. The resource ID of the VPN Server Configuration.')
param vpnServerConfigurationId string
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
param vpnServerConfigurationId string
param vpnServerConfigurationResourceId string

As per ref

}
]
staticRoutesConfig: {
@description('Optional. ')
Copy link
Contributor

Choose a reason for hiding this comment

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

There seems something to be missing 😄

nextHopIpAddress: string?
}
]
staticRoutesConfig: {
Copy link
Contributor

Choose a reason for hiding this comment

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

Needs description

}?

type vnetRoutesStaticRoutesType = {
staticRoutes: [
Copy link
Contributor

Choose a reason for hiding this comment

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

Needs description

kind: ('CanNotDelete' | 'ReadOnly' | 'None')?
}?

type vnetRoutesStaticRoutesType = {
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
type vnetRoutesStaticRoutesType = {
@export()
@description('A type to describe a static route for a vnet route')
type vnetRoutesStaticRoutesType = {

kind: ('CanNotDelete' | 'ReadOnly' | 'None')?
}?

type vnetRoutesStaticRoutesType = {
Copy link
Contributor

Choose a reason for hiding this comment

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

This is not used. Should be type be removed?

param outboundRouteMapResourceId string?

@description('Optional. The Labels to propagate routes to.')
param propagatedLabelNames array = []
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
param propagatedLabelNames array = []
param propagatedLabelNames string[] = []

param associatedRouteTableName string?

@description('Optional. The names of the route tables to propagate to the P2S VPN Gateway.')
param propagatedRouteTableNames array = []
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
param propagatedRouteTableNames array = []
param propagatedRouteTableNames string[] = []

Comment on lines +3 to +4
metadata name = 'Using only defaults'
metadata description = 'This instance deploys the module with the minimum set of required parameters.'
Copy link
Contributor

Choose a reason for hiding this comment

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

Incorrect description. I guess you meant

Suggested change
metadata name = 'Using only defaults'
metadata description = 'This instance deploys the module with the minimum set of required parameters.'
metadata name = 'Using large parameter set'
metadata description = 'This instance deploys the module with most of its features enabled.'

Comment on lines +57 to +60
lock: {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
lock: {
kind: 'CanNotDelete'
name: 'myCustomLockName'
}

Not needed for WAF-alignment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs: Core Team 🧞 This item needs the AVM Core Team to review it Needs: Triage 🔍 Maintainers need to triage still Type: AVM 🅰️ ✌️ Ⓜ️ This is an AVM related issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Module Proposal]: avm/res/network/p2s-vpn-gateway
4 participants