Skip to content

Commit fadf977

Browse files
Merge remote-tracking branch 'upstream/main' into feat/windows-vm-write-only-admin_password
2 parents 6725cd3 + cc9b53e commit fadf977

3,980 files changed

Lines changed: 62751 additions & 15968 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
*.go eol=lf

.github/labeler-pull-request-triage-type.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,7 @@ enhancement:
55
- '- \[\s?(x|X)\s?\] Enhancement'
66

77
breaking-change:
8-
- '- \[\s?(x|X)\s?\] Breaking Change'
8+
- '- \[\s?(x|X)\s?\] Breaking Change'
9+
10+
ai-assisted:
11+
- '- \[\s?(x|X)\s?\] AI Assisted.*'

.github/pull_request_template.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ For state migrations please test the changes locally and provide details here, s
4646

4747
## Change Log
4848

49-
Below please provide what should go into the changelog (if anything) conforming to the [Changelog Format documented here](../blob/main/contributing/topics/maintainer-changelog.md).
49+
Below please provide what should go into the changelog (if anything) conforming to the [Changelog Format documented here](../blob/main/contributing/topics/maintainer-merging.md).
5050

5151
<!-- Replace the changelog example below with your entry. One resource per line. -->
5252

@@ -63,8 +63,26 @@ This is a (please select all that apply):
6363

6464

6565
## Related Issue(s)
66+
6667
Fixes #0000
6768

69+
70+
## AI Assistance Disclosure
71+
72+
<!--
73+
IMPORTANT!
74+
75+
If you are using any kind of AI/LLM assistance to contribute to the AzureRM provider, this must be disclosed in the pull request.
76+
77+
If this is the case, please check the box below, and include the extent to which AI was used. (e.g. documentation only, code generation, etc.)
78+
79+
If responses to this pull request are/will be generated using AI, disclose this as well.
80+
-->
81+
82+
- [ ] AI Assisted - This contribution was made by, or with the assistance of, AI/LLMs
83+
84+
<!-- extent of AI usage can be described here -->
85+
6886
<!-- heimdall_github_prtemplate:grc-pci_dss-2024-01-05 -->
6987

7088
## Rollback Plan

.github/workflows/golint.yaml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,15 @@ jobs:
2424
- uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
2525
with:
2626
go-version-file: ./.go-version
27-
- uses: golangci/golangci-lint-action@55c2c1448f86e01eaae002a5a3a9624417608d84 # v6.5.2
27+
- uses: golangci/golangci-lint-action@9fae48acfc02a90574d7c304a1758ef9895495fa # v7.0.1
2828
with:
29-
version: 'v1.64.6'
29+
version: 'v2.4.0'
3030
args: -v ./internal/...
3131
save-artifacts-on-fail:
32-
if: ${{ needs.golint.result }} == 'failure'
32+
needs: golint
33+
if: ${{ failure() }}
3334
uses: ./.github/workflows/save-artifacts.yaml
3435
comment-on-fail:
35-
if: ${{ needs.depscheck.result }} == 'failure'
36+
needs: golint
37+
if: ${{ failure() }}
3638
uses: ./.github/workflows/comment-failure.yaml

.github/workflows/provider-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ on:
3434
default: "staging"
3535

3636
env:
37-
slack_channel: "C7T8GB62H" # #tech-azure
37+
slack_channel: "C09KX8BCGA2" # #tech-azure
3838
product_name: "terraform-provider-azurerm"
3939
repo_name: "terraform-provider-azurerm"
4040
deployment_environment_name: "terraform-azure-repos-oss"

.github/workflows/teamcity-test.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
distribution: zulu
2828
java-version: 17
2929
java-package: jdk
30-
- uses: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809 # v4.2.4
30+
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0
3131
with:
3232
path: ~/.m2/repository
3333
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}

.golangci.yml

Lines changed: 76 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -1,95 +1,85 @@
11
# Copyright (c) HashiCorp, Inc.
22
# SPDX-License-Identifier: MPL-2.0
33

4+
version: "2"
45
run:
5-
timeout: 60m
6-
go: "1.24"
76
modules-download-mode: vendor
8-
7+
linters:
8+
default: none
9+
enable:
10+
- asasalint
11+
- asciicheck
12+
- bidichk
13+
- decorder
14+
- dupword
15+
- durationcheck
16+
- errcheck
17+
- gocritic
18+
- govet
19+
- ineffassign
20+
- misspell
21+
- nilerr
22+
- prealloc
23+
- predeclared
24+
- reassign
25+
- staticcheck
26+
- tagalign
27+
- unconvert
28+
- unparam
29+
- unused
30+
- wastedassign
31+
- whitespace
32+
settings:
33+
errcheck:
34+
exclude-functions:
35+
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceDiff).ForceNew
36+
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceDiff).SetNew
37+
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceDiff).SetNewComputed
38+
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceData).Set
39+
- io.Close
40+
misspell:
41+
ignore-rules:
42+
- hdinsight
43+
- exportfs
44+
nakedret:
45+
max-func-lines: 30
46+
predeclared:
47+
ignore:
48+
- new
49+
- min
50+
- max
51+
tagalign:
52+
sort: true
53+
order:
54+
- json
55+
- tfschema
56+
- computed
57+
exclusions:
58+
generated: lax
59+
presets:
60+
- comments
61+
- common-false-positives
62+
- legacy
63+
- std-error-handling
64+
paths:
65+
- internal/services/.*/.*_gen.go$
66+
- /sdk/
67+
- third_party$
68+
- builtin$
69+
- examples$
970
issues:
1071
max-issues-per-linter: 0
1172
max-same-issues: 0
12-
exclude-dirs:
13-
- /sdk/ # Excluding sdk folders as these are externally generated
14-
exclude-files:
15-
- "internal/services/.*/.*_gen.go$"
16-
17-
linters:
18-
disable-all: true
73+
formatters:
1974
enable:
20-
- asasalint # check for pass []any as any in variadic func(...any)
21-
- asciicheck # ensure code does not contain non-ASCII identifiers
22-
- bidichk # checks for dangerous unicode character sequences
23-
- decorder # check declaration order and count of types, constants, variables and functions.
24-
- durationcheck # check for common mistakes when working with time.Duration
25-
- dupword # check for duplicated words in comments
26-
- errcheck # checking for unchecked errors
27-
- gocritic # linter for Go source code that specializes in simplifying code
28-
- gofmt # checks whether code was gofmt-ed
29-
- gofumpt # checks whether code was gofumpt-ed, a stricter gofmt
30-
- goimports # check import statements are formatted according to the 'goimport' command
31-
- gosimple # linter for Go source code that specializes in simplifying code.
32-
- govet # reports suspicious constructs. It is roughly the same as 'go vet' (replaced vet and vetshadow)
33-
- ineffassign # detects when assignments to existing variables are not used
34-
- misspell # finds commonly misspelled English words.
35-
- nilerr # Finds code that returns nil after it checks that the error is not nil.
36-
- prealloc # finds slice declarations that could potentially be pre-allocated.
37-
- predeclared # find code that shadows one of Go's predeclared identifiers.
38-
- reassign # checks that package variables are not reassigned.
39-
- tenv #detects using os.Setenv instead of t.Setenv since Go1.17.
40-
- tagalign # checks struct tags that do not align with the specified column in struct definitions.
41-
- staticcheck # checks rules from staticcheck. It's not the same thing as the staticcheck binary.
42-
- unused # checks Go code for unused constants, variables, functions and types.
43-
- unconvert # checks for unnecessary type conversions.
44-
- unparam # reports unused function parameters.
45-
- wastedassign # finds wasted assignment statements
46-
- whitespace # checks for unnecessary newlines at the start and end of functions, if, for, etc. (
47-
48-
##### need to confirm these are valid and adding t.Parallel() to unit tests would be beneficial / integration tests would not be affected
49-
#- paralleltest # detects missing usage of t.Parallel() method in your Go test.
50-
#- tparallel # Tparallel detects inappropriate usage of t.Parallel() method in your Go test codes.
51-
52-
###### DISABLED because : the number of possible integer overflow conversions from int -> int32. it's not an incorrect callout?
53-
# - gosec # Gosec is a security linter for Go source code
54-
55-
##### DISABLED as it (correctly) flags fmt.Errorf("constant") to be replaced with errors.New("constant") and there are ~1500 instances of this in the codebase
56-
#- perfsprint # Checks that fmt.Sprintf can be replaced with a faster alternative.
57-
58-
#### DISABLED but valid as relying on output variable names is less than idea, have a lot of these in the codebase to switch over
59-
#- nakedret # Checks that functions with naked returns are not longer than a maximum size
60-
61-
#### bunch of hits, need to confirm if errors or not #####
62-
#- copyloopvar #Detects range loop variables that are overwritten in the loop body
63-
64-
#### DISABLED till %+v -> %w #####
65-
#- err113 #Go linter to check the errors handling expressions. - disabled as it suggests (correctly?) to use %w in fmt.Errorf instead of %+v (1000s of usages in the codebase)
66-
#- errorlint #### DISABLED till %+v -> %w ##### #Errorlint is a linter for that can be used to find code that will cause problems with the error wrapping scheme used in the github.com/pkg/errors package.
67-
68-
# disabled as it may be useful but there are a lot of switch statements in the codebase with unhandled inputs
69-
#- exhaustive #Check for missing cases in select statements
70-
71-
###### DISABLED because golang will put the space back into `//nolint: linter` -> `// nolint: linter` ######
72-
#- nolintlint #Reports ill-formed or insufficient nolint directives.
73-
74-
linters-settings:
75-
errcheck:
76-
exclude-functions:
77-
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceDiff).ForceNew
78-
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceDiff).SetNew
79-
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceDiff).SetNewComputed
80-
- (*github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.ResourceData).Set
81-
- io.Close
82-
misspell:
83-
ignore-words:
84-
- hdinsight
85-
- exportfs
86-
nakedret:
87-
max-func-lines: 30
88-
tagalign:
89-
sort: true
90-
order:
91-
- json
92-
- tfschema
93-
- computed
94-
predeclared:
95-
ignore: new,min,max # should we use newer, minimum, and maximum instead?
75+
- gofmt
76+
- gofumpt
77+
- goimports
78+
exclusions:
79+
generated: lax
80+
paths:
81+
- internal/services/.*/.*_gen.go$
82+
- /sdk/
83+
- third_party$
84+
- builtin$
85+
- examples$

.release/ci.hcl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@ project "terraform-provider-azurerm" {
1212
team = "_UNUSED_"
1313

1414
slack {
15-
notification_channel = "C7T8GB62H" // #tech-azure
15+
notification_channel = "C09KX8BCGA2" // #tech-azure
1616
}
1717

1818
github {
1919
organization = "hashicorp"
2020
repository = "terraform-provider-azurerm"
21-
release_branches = ["main"]
21+
release_branches = ["main", "release/**"]
2222
}
2323
}
2424

.release/provider-schema.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

.teamcity/components/settings.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ var serviceTestConfigurationOverrides = mapOf(
9090
"datafactory" to testConfiguration(daysOfWeek = "2,4,6", locationOverride = LocationConfiguration("westeurope", "southeastasia", "westus2", false)),
9191

9292
// Dev Center only available in some regions / has a quota of 5
93-
"devcenter" to testConfiguration(parallelism = 4, locationOverride = LocationConfiguration("westeurope", "uksouth", "canadacentral", false)),
93+
"devcenter" to testConfiguration(parallelism = 2, locationOverride = LocationConfiguration("westeurope", "uksouth", "canadacentral", true)),
9494

9595
// "hdinsight" is super expensive - G class VM's are not available in westus2, quota only available in westeurope currently
9696
"hdinsight" to testConfiguration(daysOfWeek = "2,4,6", locationOverride = LocationConfiguration("westeurope", "southeastasia", "eastus2", false)),

0 commit comments

Comments
 (0)