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(MAJOR): Major refactor of all modules and examples #37

Merged
merged 55 commits into from
Apr 25, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
574e56f
name property
FoSix Sep 26, 2023
c3ac63f
working vnet example
FoSix Sep 27, 2023
bb242f5
update documentation
FoSix Sep 27, 2023
2b2c82f
1st module tests
FoSix Sep 29, 2023
60f8c07
move tests to a separate branch
FoSix Oct 4, 2023
44c45fb
Merge branch 'main' into 307-refactor-modules
FoSix Oct 16, 2023
fe1d399
refactor(module/vnet): module refactor + adjusted examples (#338)
FoSix Oct 18, 2023
16eab69
Merge remote-tracking branch 'origin/main' into 307-refactor-modules
FoSix Oct 30, 2023
d1fcd31
Merge branch 'main' into 307-refactor-modules
FoSix Nov 3, 2023
5601617
refactor(module/vnet): documentation update and validation fixes (#351)
FoSix Nov 3, 2023
60ba789
refactor(module/vnet_peering)!: module refactor and adjusted examples…
acelebanski Nov 7, 2023
b97a5b0
refactor(module/virtual_network_gateway): Refactor module for VNG (#339)
sebastianczech Nov 7, 2023
bcf1c63
refactor: vnet tfvars in examples (#359)
acelebanski Nov 16, 2023
a63213f
refactor(module/loadbalancer): including examples (#348)
FoSix Nov 16, 2023
4ded3dd
refactor: add support for disable bgp route propagation (#367)
FoSix Dec 6, 2023
d877740
refactor(module/natgw)!: module refactor and adjusted examples (#358)
acelebanski Dec 6, 2023
f24fbea
refactor(module/appgw): Refactor module Application Gateway and adjus…
sebastianczech Dec 12, 2023
88ffcc2
Merge branch 'main' into 307-refactor-modules
FoSix Dec 21, 2023
7e8b486
refactor: vmss + application insights (#360)
FoSix Jan 5, 2024
549633b
refactor(module/panorama)!: module refactor and adjusted examples (#373)
acelebanski Jan 9, 2024
ad1c4d7
refactor: bootstrap and vmseries (#371)
FoSix Jan 22, 2024
5e8e266
refactor(module/gwlb): Refactor Gateway Load Balancer module (#372)
sebastianczech Jan 23, 2024
19d7e93
refactor(example/gwlb_with_vmseries): Refactor Gateway Load Balancer …
sebastianczech Jan 29, 2024
36ddea5
refactor: common config variable (#6)
FoSix Mar 1, 2024
7beb04b
chore: Add comments with links to TF Registry documentation to all re…
sebastianczech Mar 4, 2024
21d4224
Merge branch 'main' into refactor-modules
acelebanski Mar 4, 2024
d8df2b8
Fix GO files for appgw & vng examples
acelebanski Mar 4, 2024
18545ec
chore: Upgrade Terraform version for examples, fix links for diagrams…
sebastianczech Mar 6, 2024
4d388b0
refactor: code style unification (#24)
acelebanski Mar 6, 2024
b01cf56
feat: Rename location to region, fix issues with VNG (#26)
sebastianczech Mar 12, 2024
7b4e3bc
refactor: refactor comments and fix validation issues (#27)
acelebanski Mar 14, 2024
7f01d41
refactor(module/test_infrastructure): module creation and adjusted ex…
acelebanski Mar 28, 2024
cd73452
refactor: Bump pre-commit and remediate checkov warnings (#35)
acelebanski Apr 4, 2024
655eba0
feat: Unify #TODO markers in examples tfvars (#33)
sebastianczech Apr 5, 2024
668ca49
Idempotence fix to common_vmseries example
acelebanski Apr 5, 2024
7071559
Idempotence fix to common_vmseries example v2
acelebanski Apr 5, 2024
1e830fd
Idempotence fix to all examples (vnet peering)
acelebanski Apr 5, 2024
c3f77e3
Autoscaling profiles update in common autoscale example
acelebanski Apr 6, 2024
2683fc6
Merge branch 'main' into refactor-modules
acelebanski Apr 12, 2024
8c9708a
Bumped AzureRM provider version
acelebanski Apr 12, 2024
8c6d174
Replace deprecated property in bootstrap module
acelebanski Apr 12, 2024
87b54de
fix(examples): Improvements after tests (#38)
sebastianczech Apr 15, 2024
17bb2dd
Add modules/vmss/dt_string_converter/main_test.go
sebastianczech Apr 15, 2024
e525f31
Remove Terraform versions 1.2 1.3 1.4 from PR CI workflow
sebastianczech Apr 15, 2024
d26bb8b
Comment Application Gateways with SSL (they required CA files and cer…
sebastianczech Apr 15, 2024
f81194d
Bump PAN-OS version to 10.2.9-h1 for VM-Series
acelebanski Apr 20, 2024
092fb61
Bump PAN-OS version to 10.2.8 for Panorama
acelebanski Apr 20, 2024
01f8ca9
Update config version in the XML templates
acelebanski Apr 21, 2024
b37a83b
Fix GWLB example by adding outputs and tuning NSGs
acelebanski Apr 21, 2024
ac32304
Minor tweaks to Panorama example
acelebanski Apr 21, 2024
7968035
Modify calculated intranet subnet in the XML template
acelebanski Apr 22, 2024
3b22e32
refactor: Move `appgw` and `virtual_network_gateway` examples to `tes…
sebastianczech Apr 22, 2024
005369c
Add xdr_exclusion tag to fix idempotency checks
acelebanski Apr 22, 2024
8ef53fc
refactor: Fix README generation for internal submodules (#43)
acelebanski Apr 25, 2024
c5b3f2e
Change hub sync workflow trigger to published
acelebanski Apr 25, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/help-command.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
name: ChatOPS Help
run-name: "Display ChatOPS help (#${{ github.event.inputs.pr-id }}) ${{ github.event.inputs.pr-title }}"

permissions:
contents: read

on:
workflow_dispatch:
inputs:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/hub_sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ permissions:
on:
workflow_dispatch:
release:
types: [released]
types: [published]

jobs:
hub_sync:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
if: github.actor != 'dependabot[bot]'
with:
cloud: azure
tf_version: 1.2 1.3 1.4 1.5 1.6 1.7
tf_version: 1.5 1.6 1.7
validate_max_parallel: 20
test_max_parallel: 10
terratest_action: Plan # keep in mind that this has to start with capital letter
Expand Down
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@
.vscode
.idea


# Ceritifcates
*.pem
*.crt
*.pfx
*.key
# Palo auth codes
authcodes
# Crash log files
Expand All @@ -49,3 +55,5 @@ terraform.tfvars.json
# **/
*bootstrap.xml

bootstrap_package/
examples/appgw/files/*
15 changes: 9 additions & 6 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,12 @@ repos:
- hooks:
- id: terraform_fmt
- args:
- --args=--sort=false
- --args=--lockfile=false
- --args=--indent=3
- --args=--config=.terraform-docs.yml
id: terraform_docs
- args:
- --args=--config=.terraform-docs-internal.yml
- --hook-config=--path-to-file=.README.md
files: ^modules/test_infrastructure/
id: terraform_docs
- args:
- --args=--only=terraform_deprecated_interpolation
Expand All @@ -14,14 +17,14 @@ repos:
- --args=--only=terraform_workspace_remote
id: terraform_tflint
repo: https://github.com/antonbabenko/pre-commit-terraform
rev: v1.83.0
rev: v1.88.4
- hooks:
- args:
- --compact
- --quiet
- --skip-check
- CKV_AZURE_118,CKV_AZURE_119,CKV_AZURE_120,CKV2_AZURE_10,CKV2_AZURE_12,CKV_AZURE_35,CKV_AZURE_206,CKV_AZURE_93,CKV2_AZURE_1,CKV2_AZURE_18,CKV_AZURE_97,CKV_AZURE_59,CKV_AZURE_190,CKV2_AZURE_33,CKV_AZURE_179,CKV_AZURE_1,CKV_AZURE_49,CKV_AZURE_217,CKV_AZURE_218
- CKV_GHA_7,CKV_AZURE_1,CKV_AZURE_35,CKV_AZURE_44,CKV_AZURE_49,CKV_AZURE_59,CKV_AZURE_93,CKV_AZURE_97,CKV_AZURE_118,CKV_AZURE_119,CKV_AZURE_120,CKV_AZURE_179,CKV_AZURE_190,CKV_AZURE_206,CKV_AZURE_217,CKV_AZURE_218,CKV2_AZURE_1,CKV2_AZURE_10,CKV2_AZURE_12,CKV2_AZURE_18,CKV2_AZURE_33,CKV2_AZURE_39,CKV2_AZURE_40,CKV2_AZURE_41
id: checkov
verbose: true
repo: https://github.com/bridgecrewio/checkov.git
rev: 2.4.22
rev: 3.2.50
130 changes: 130 additions & 0 deletions .terraform-docs-internal.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
formatter: "markdown document" # this is required
version: ""
header-from: ".header.md"

output:
file: .README.md
mode: replace

sort:
enabled: false

settings:
indent: 3
lockfile: false

content: |-
{{ .Header }}

## Module's Required Inputs

Name | Type | Description
--- | --- | ---
{{- range .Module.Inputs }}
{{- if .Required }}
[`{{ .Name }}`](#{{ .Name }}) | `{{ (split "(" .Type.Raw)._0 }}` | {{ (split "." .Description.Raw)._0 }}.
{{- end }}
{{- end }}

{{ $optional := false -}}
{{ range .Module.Inputs }}{{ if not .Required }}{{ $optional = true -}}{{ end -}}{{ end -}}

{{ if $optional -}}
## Module's Optional Inputs

Name | Type | Description
--- | --- | ---
{{- range .Module.Inputs }}
{{- if not .Required }}
[`{{ .Name }}`](#{{ .Name }}) | `{{ (split "(" .Type.Raw)._0 }}` | {{ (split "." .Description.Raw)._0 }}.
{{- end -}}
{{ end -}}
{{ end }}

{{ if ne (len .Module.Outputs) 0 -}}
## Module's Outputs

Name | Description
--- | ---
{{- range .Module.Outputs }}
`{{ .Name }}` | {{ .Description.Raw }}
{{- end }}
{{- end }}

## Module's Nameplate

{{ if ne (len .Module.Requirements) 0 -}}
Requirements needed by this module:
{{ range .Module.Requirements }}
- `{{ .Name }}`{{ if .Version }}, version: {{ .Version }}{{ end }}
{{- end }}
{{- end }}

{{ if ne (len .Module.Providers) 0 -}}
Providers used in this module:
{{ range .Module.Providers }}
- `{{ .Name }}`{{ if .Version }}, version: {{ .Version }}{{ end }}
{{- end }}
{{- end }}

{{ if ne (len .Module.ModuleCalls) 0 -}}
Modules used in this module:
Name | Version | Source | Description
--- | --- | --- | ---
{{- range .Module.ModuleCalls }}
`{{ .Name }}` | {{ if .Version }}{{ .Version }}{{ else }}-{{ end }} | {{ .Source }} | {{ .Description }}
{{- end }}
{{- end }}

{{ if ne (len .Module.Resources) 0 -}}
Resources used in this module:
{{ range .Module.Resources }}
- `{{ .Type }}` ({{ .Mode }})
{{- end }}
{{- end }}

## Inputs/Outpus details

### Required Inputs

{{ range .Module.Inputs -}}
{{ if .Required -}}
#### {{ .Name }}

{{ .Description }}

Type: {{ if lt (len (split "\n" .Type.Raw)) 2 }}{{ .Type }}{{ else }}

```hcl
{{ .Type }}
```
{{ end }}

<sup>[back to list](#modules-required-inputs)</sup>

{{ end -}}
{{- end -}}

{{ if $optional -}}
### Optional Inputs

{{ range .Module.Inputs -}}
{{ if not .Required -}}
#### {{ .Name }}

{{ .Description }}

Type: {{ if lt (len (split "\n" .Type.Raw)) 2 }}{{ .Type }}{{ else }}

```hcl
{{ .Type }}
```
{{ end }}

Default value: `{{ .Default }}`

<sup>[back to list](#modules-optional-inputs)</sup>

{{ end }}
{{- end -}}
{{ end -}}
130 changes: 130 additions & 0 deletions .terraform-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
formatter: "markdown document" # this is required
version: ""
header-from: ".header.md"

output:
file: README.md
mode: replace

sort:
enabled: false

settings:
indent: 3
lockfile: false

content: |-
{{ .Header }}

## Module's Required Inputs

Name | Type | Description
--- | --- | ---
{{- range .Module.Inputs }}
{{- if .Required }}
[`{{ .Name }}`](#{{ .Name }}) | `{{ (split "(" .Type.Raw)._0 }}` | {{ (split "." .Description.Raw)._0 }}.
{{- end }}
{{- end }}

{{ $optional := false -}}
{{ range .Module.Inputs }}{{ if not .Required }}{{ $optional = true -}}{{ end -}}{{ end -}}

{{ if $optional -}}
## Module's Optional Inputs

Name | Type | Description
--- | --- | ---
{{- range .Module.Inputs }}
{{- if not .Required }}
[`{{ .Name }}`](#{{ .Name }}) | `{{ (split "(" .Type.Raw)._0 }}` | {{ (split "." .Description.Raw)._0 }}.
{{- end -}}
{{ end -}}
{{ end }}

{{ if ne (len .Module.Outputs) 0 -}}
## Module's Outputs

Name | Description
--- | ---
{{- range .Module.Outputs }}
`{{ .Name }}` | {{ .Description.Raw }}
{{- end }}
{{- end }}

## Module's Nameplate

{{ if ne (len .Module.Requirements) 0 -}}
Requirements needed by this module:
{{ range .Module.Requirements }}
- `{{ .Name }}`{{ if .Version }}, version: {{ .Version }}{{ end }}
{{- end }}
{{- end }}

{{ if ne (len .Module.Providers) 0 -}}
Providers used in this module:
{{ range .Module.Providers }}
- `{{ .Name }}`{{ if .Version }}, version: {{ .Version }}{{ end }}
{{- end }}
{{- end }}

{{ if ne (len .Module.ModuleCalls) 0 -}}
Modules used in this module:
Name | Version | Source | Description
--- | --- | --- | ---
{{- range .Module.ModuleCalls }}
`{{ .Name }}` | {{ if .Version }}{{ .Version }}{{ else }}-{{ end }} | {{ .Source }} | {{ .Description }}
{{- end }}
{{- end }}

{{ if ne (len .Module.Resources) 0 -}}
Resources used in this module:
{{ range .Module.Resources }}
- `{{ .Type }}` ({{ .Mode }})
{{- end }}
{{- end }}

## Inputs/Outpus details

### Required Inputs

{{ range .Module.Inputs -}}
{{ if .Required -}}
#### {{ .Name }}

{{ .Description }}

Type: {{ if lt (len (split "\n" .Type.Raw)) 2 }}{{ .Type }}{{ else }}

```hcl
{{ .Type }}
```
{{ end }}

<sup>[back to list](#modules-required-inputs)</sup>

{{ end -}}
{{- end -}}

{{ if $optional -}}
### Optional Inputs

{{ range .Module.Inputs -}}
{{ if not .Required -}}
#### {{ .Name }}

{{ .Description }}

Type: {{ if lt (len (split "\n" .Type.Raw)) 2 }}{{ .Type }}{{ else }}

```hcl
{{ .Type }}
```
{{ end }}

Default value: `{{ .Default }}`

<sup>[back to list](#modules-optional-inputs)</sup>

{{ end }}
{{- end -}}
{{ end -}}
Loading
Loading