From 3f074771499eac7651cea91d765aba471e12828b Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 09:17:54 +1100 Subject: [PATCH 01/65] updated linter --- .github/workflows/linter.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 1284dbd68c..05e966a2ae 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: [pull_request] +on: workflow_dispatch jobs: build: @@ -27,3 +27,10 @@ jobs: DEFAULT_BRANCH: ${{ github.base_ref }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' + + - name: Link Checker + uses: lycheeverse/lychee-action@v1.1.1 + with: + args: --verbose --no-progress **/*.md **/*.html + env: + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From bbbde24b0cb923d0c25cd2bc946fa636a6f90a98 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 09:18:57 +1100 Subject: [PATCH 02/65] updated linter (#6) --- .github/workflows/linter.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 1284dbd68c..05e966a2ae 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: [pull_request] +on: workflow_dispatch jobs: build: @@ -27,3 +27,10 @@ jobs: DEFAULT_BRANCH: ${{ github.base_ref }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' + + - name: Link Checker + uses: lycheeverse/lychee-action@v1.1.1 + with: + args: --verbose --no-progress **/*.md **/*.html + env: + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From dc69b57ed0b5cbf289fd300688f8ba55990f8464 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 09:23:51 +1100 Subject: [PATCH 03/65] test --- .github/workflows/linter.yml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 05e966a2ae..572e1b7bde 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -13,20 +13,20 @@ jobs: # Full git history is needed to get a proper list of changed files within `super-linter` fetch-depth: 0 - - name: Lint Code Base - uses: docker://ghcr.io/github/super-linter:slim-v4 - # uses: github/super-linter@v4 - env: - VALIDATE_ALL_CODEBASE: false - VALIDATE_MARKDOWN: false - VALIDATE_ARM: false - VALIDATE_JSON: false - VALIDATE_YAML: false - VALIDATE_GITHUB_ACTIONS: false - if: ${{ github.event_name == 'pull_request' }} - DEFAULT_BRANCH: ${{ github.base_ref }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' + #- name: Lint Code Base + # uses: docker://ghcr.io/github/super-linter:slim-v4 + # # uses: github/super-linter@v4 + # env: + # VALIDATE_ALL_CODEBASE: false + # VALIDATE_MARKDOWN: false + # VALIDATE_ARM: false + # VALIDATE_JSON: false + # VALIDATE_YAML: false + # VALIDATE_GITHUB_ACTIONS: false + # if: ${{ github.event_name == 'pull_request' }} + # DEFAULT_BRANCH: ${{ github.base_ref }} + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 From 4d882901e1c6c3e65bd87218420445d274adef54 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 09:43:42 +1100 Subject: [PATCH 04/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 572e1b7bde..7665cb62b8 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md **/*.html + args: --verbose --no-progress **/*.md --exclude README.md env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From b538aa7e8c7b8652a194dd890d06d66948e05dad Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 09:48:29 +1100 Subject: [PATCH 05/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 7665cb62b8..4f335a5833 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude README.md + args: --verbose --no-progress **/*.md --exclude readme.md README.md env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From f438e108620f932296187cb5107e77ce07249e20 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:16:52 +1100 Subject: [PATCH 06/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 4f335a5833..c61f1e5dd2 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude readme.md README.md + args: --verbose --no-progress **/*.md --exclude **/readme.md **/README.md file://* env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 86d23b620ab4a80d00e4bf51a64d347813e43e1a Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:19:26 +1100 Subject: [PATCH 07/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index c61f1e5dd2..4864ef4909 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude **/readme.md **/README.md file://* + args: --verbose --no-progress **/*.md --exclude */readme.md */README.md file://* env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From a25769e205cb8bbff03e9eec570145300b34d729 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:31:35 +1100 Subject: [PATCH 08/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 4864ef4909..5a4b8e5ea2 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude */readme.md */README.md file://* + args: --verbose --no-progress **/*.md --exclude file://* --exclude-file **/readme.md **/README.md env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 1942c9995cd0f1a913dfafee29f258c077642b88 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:42:11 +1100 Subject: [PATCH 09/65] test --- .github/workflows/linter.yml | 2 +- .lycheeignore | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 .lycheeignore diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 5a4b8e5ea2..1fc58ec772 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude file://* --exclude-file **/readme.md **/README.md + args: --verbose --no-progress **/*.md env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.lycheeignore b/.lycheeignore new file mode 100644 index 0000000000..6c83744ca4 --- /dev/null +++ b/.lycheeignore @@ -0,0 +1,3 @@ +file://* +**/readme.md +**/README.md From 455934139901f73c1305bbf199c8f8aee2489458 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:46:42 +1100 Subject: [PATCH 10/65] test --- .lycheeignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.lycheeignore b/.lycheeignore index 6c83744ca4..822a77ab7b 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -1,3 +1,4 @@ -file://* **/readme.md **/README.md +file:///github/workspace/* + From ae1d362b7834b5cbbe0cbe5806c6a98803f28e63 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:52:28 +1100 Subject: [PATCH 11/65] test --- .lycheeignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.lycheeignore b/.lycheeignore index 822a77ab7b..46cf21f9f3 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -1,4 +1,5 @@ **/readme.md **/README.md file:///github/workspace/* +https://foo.psd1/ From ee61b8c052530bef7583af45827370f657fb439b Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 11:00:05 +1100 Subject: [PATCH 12/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 1fc58ec772..7780fc868e 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md + args: --verbose --no-progress **/*.md --exclude https://foo.psd1/ env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 9207dfcc7e18a62e401c810c6e0b83acec31ee91 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 12:00:35 +1100 Subject: [PATCH 13/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 7780fc868e..b539feb477 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude https://foo.psd1/ + args: --verbose --no-progress **/*.md --exclude https://foo.psd1/ file:///github/* env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From f1cf040657c800b0594394b698bea4bdcf5d9bfa Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 12:10:02 +1100 Subject: [PATCH 14/65] test --- .github/workflows/linter.yml | 2 +- .lycheeignore | 5 ----- 2 files changed, 1 insertion(+), 6 deletions(-) delete mode 100644 .lycheeignore diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index b539feb477..fa23d27894 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude https://foo.psd1/ file:///github/* + args: --verbose --no-progress **/*.md --exclude https://foo.psd1/ file:///github/* abc.def@contoso.com https://*.blob.core.windows.net/* https://*.vault.azure.net/* https://www.powershellgallery.com https://github.com/myProject/File3.ps1 https://github.com/Azure/ResourceModules.git env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.lycheeignore b/.lycheeignore deleted file mode 100644 index 46cf21f9f3..0000000000 --- a/.lycheeignore +++ /dev/null @@ -1,5 +0,0 @@ -**/readme.md -**/README.md -file:///github/workspace/* -https://foo.psd1/ - From 3cd5aea8642e1b3f05b3fd13089736ea58f31f20 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 12:15:44 +1100 Subject: [PATCH 15/65] test --- .github/workflows/linter.yml | 2 +- .lycheeignore | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 .lycheeignore diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index fa23d27894..7d3122af99 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude https://foo.psd1/ file:///github/* abc.def@contoso.com https://*.blob.core.windows.net/* https://*.vault.azure.net/* https://www.powershellgallery.com https://github.com/myProject/File3.ps1 https://github.com/Azure/ResourceModules.git + args: --verbose --no-progress **/*.md --exclude-file env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.lycheeignore b/.lycheeignore new file mode 100644 index 0000000000..934e684b1f --- /dev/null +++ b/.lycheeignore @@ -0,0 +1,8 @@ +https://foo.psd1/ +file:///github/* +abc.def@contoso.com +*.blob.core.windows.net +*.vault.azure.net +https://www.powershellgallery.com +https://github.com/myProject/File3.ps1 +https://github.com/Azure/ResourceModules.git From 655a45d4f5d352c62ac56fb2e6bb971d04026636 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 12:19:08 +1100 Subject: [PATCH 16/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 7d3122af99..a61383df3b 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -31,6 +31,6 @@ jobs: - name: Link Checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude-file + args: --verbose --no-progress **/*.md --exclude-file .lycheeignore env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From e1fafc6bcf4b859042df9e2455baea3c6b54fe5a Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 12:25:30 +1100 Subject: [PATCH 17/65] test --- .lycheeignore | 6 +++--- arm/Microsoft.Compute/virtualMachines/readme.md | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.lycheeignore b/.lycheeignore index 934e684b1f..83845f1cfa 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -1,8 +1,8 @@ https://foo.psd1/ -file:///github/* +file:///github abc.def@contoso.com -*.blob.core.windows.net -*.vault.azure.net +https://mystorageaccount.blob.core.windows.net +https://mykeyvault.vault.azure.net https://www.powershellgallery.com https://github.com/myProject/File3.ps1 https://github.com/Azure/ResourceModules.git diff --git a/arm/Microsoft.Compute/virtualMachines/readme.md b/arm/Microsoft.Compute/virtualMachines/readme.md index 06007ddb9f..7f351146c3 100644 --- a/arm/Microsoft.Compute/virtualMachines/readme.md +++ b/arm/Microsoft.Compute/virtualMachines/readme.md @@ -350,9 +350,9 @@ The field `nicSuffix` and `subnetId` are mandatory. If `enablePublicIP` is set t "diskEncryptionSettings": { "value": { "EncryptionOperation": "EnableEncryption", - "KeyVaultURL": "https://adp-sxx-az-kv-x-001.vault.azure.net/", + "KeyVaultURL": "https://mykeyvault.vault.azure.net/", "KeyVaultResourceId": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.KeyVault/vaults/adp-sxx-az-kv-x-001", - "KeyEncryptionKeyURL": "https://adp-sxx-az-kv-x-001.vault.azure.net/keys/keyEncryptionKey/685153483a1140e3856f004a753e1ab4", + "KeyEncryptionKeyURL": "https://mykeyvault.vault.azure.net/keys/keyEncryptionKey/685153483a1140e3856f004a753e1ab4", "KekVaultResourceId": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.KeyVault/vaults/adp-sxx-az-kv-x-001", "KeyEncryptionAlgorithm": "RSA-OAEP", //'RSA-OAEP'/'RSA-OAEP-256'/'RSA1_5' "VolumeType": "All", //'OS'/'Data'/'All' From cd313c777552e4d2b0285faff761072548d26766 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 12:51:51 +1100 Subject: [PATCH 18/65] test --- .github/workflows/linter.yml | 4 ++++ .lycheeignore | 1 - .../managedClusters/agentPools/readme.md | 2 +- arm/Microsoft.ContainerService/managedClusters/readme.md | 4 ++-- 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index a61383df3b..fc9078f30d 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -29,8 +29,12 @@ jobs: # FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' - name: Link Checker + id: checker uses: lycheeverse/lychee-action@v1.1.1 with: args: --verbose --no-progress **/*.md --exclude-file .lycheeignore env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + + - name: Fail if there were link errors + run: exit ${{ steps.checker.outputs.exit_code }} diff --git a/.lycheeignore b/.lycheeignore index 83845f1cfa..204c628bb5 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -1,6 +1,5 @@ https://foo.psd1/ file:///github -abc.def@contoso.com https://mystorageaccount.blob.core.windows.net https://mykeyvault.vault.azure.net https://www.powershellgallery.com diff --git a/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md b/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md index 05d2b55042..5f84d93f92 100644 --- a/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md +++ b/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md @@ -48,7 +48,7 @@ For available properties check Date: Mon, 6 Dec 2021 12:53:06 +1100 Subject: [PATCH 19/65] test --- .github/workflows/linter.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index fc9078f30d..8873410826 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -29,6 +29,7 @@ jobs: # FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' - name: Link Checker + if: always() id: checker uses: lycheeverse/lychee-action@v1.1.1 with: From 6e4c2382a204ad4e5b60556f61e84b828e3b7c69 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 13:12:25 +1100 Subject: [PATCH 20/65] test --- .lycheeignore | 4 ++-- arm/Microsoft.Compute/virtualMachines/readme.md | 4 ++-- docs/wiki/TestingDesign.md | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.lycheeignore b/.lycheeignore index 204c628bb5..34615f0f1a 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -3,5 +3,5 @@ file:///github https://mystorageaccount.blob.core.windows.net https://mykeyvault.vault.azure.net https://www.powershellgallery.com -https://github.com/myProject/File3.ps1 -https://github.com/Azure/ResourceModules.git +https://github.com/myProject +SECURITY.md diff --git a/arm/Microsoft.Compute/virtualMachines/readme.md b/arm/Microsoft.Compute/virtualMachines/readme.md index 7f351146c3..d4aa2605f6 100644 --- a/arm/Microsoft.Compute/virtualMachines/readme.md +++ b/arm/Microsoft.Compute/virtualMachines/readme.md @@ -416,11 +416,11 @@ The field `nicSuffix` and `subnetId` are mandatory. If `enablePublicIP` is set t "value": [ //storage accounts with SAS token requirement { - "uri": "https://storageAccount.blob.core.windows.net/avdscripts/File1.ps1", + "uri": "https://mystorageaccount.blob.core.windows.net/avdscripts/File1.ps1", "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" }, { - "uri": "https://storageAccount.blob.core.windows.net/avdscripts/File2.ps1", + "uri": "https://mystorageaccount.blob.core.windows.net/avdscripts/File2.ps1", "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" }, //storage account with public container (no SAS token is required) OR other public URL (not a storage account) diff --git a/docs/wiki/TestingDesign.md b/docs/wiki/TestingDesign.md index 06f209d3cc..48e7c584ee 100644 --- a/docs/wiki/TestingDesign.md +++ b/docs/wiki/TestingDesign.md @@ -63,7 +63,7 @@ The following activities are run executing the `arm/.global/global.module.tests. - [Pester Wiki](https://github.com/pester/Pester/wiki) - [Pester on GitHub](https://github.com/pester/Pester) -- [Pester Setup and Commands](https://pester.dev/docs/commands/Setup) +- [Pester Installation and Update](https://pester.dev/docs/introduction/installation) --- From 4b91de55efa0cb6d05596394c0606a9f0fb9ed7d Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 13:19:39 +1100 Subject: [PATCH 21/65] test --- .lycheeignore | 2 ++ arm/Microsoft.Compute/virtualMachineScaleSets/readme.md | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.lycheeignore b/.lycheeignore index 34615f0f1a..2d5dc88de1 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -5,3 +5,5 @@ https://mykeyvault.vault.azure.net https://www.powershellgallery.com https://github.com/myProject SECURITY.md +http://validURLToConfigLocation +https://myCustomDependencyLocation diff --git a/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md b/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md index e11899afc0..16610fe4cc 100644 --- a/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md +++ b/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md @@ -252,11 +252,11 @@ The following resources are required to be able to deploy this resource. "value": [ //storage accounts with SAS token requirement { - "uri": "https://storageAccount.blob.core.windows.net/avdscripts/File1.ps1", + "uri": "https://mystorageAccount.blob.core.windows.net/avdscripts/File1.ps1", "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" }, { - "uri": "https://storageAccount.blob.core.windows.net/avdscripts/File2.ps1", + "uri": "https://mystorageAccount.blob.core.windows.net/avdscripts/File2.ps1", "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" }, //storage account with public container (no SAS token is required) OR other public URL (not a storage account) From e37a36491e8df000be2049511cabfad2a18aceda Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 13:20:30 +1100 Subject: [PATCH 22/65] test --- arm/Microsoft.Sql/servers/securityAlertPolicies/deploy.bicep | 2 +- arm/Microsoft.Sql/servers/securityAlertPolicies/readme.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arm/Microsoft.Sql/servers/securityAlertPolicies/deploy.bicep b/arm/Microsoft.Sql/servers/securityAlertPolicies/deploy.bicep index 88b18da3f2..9509964e09 100644 --- a/arm/Microsoft.Sql/servers/securityAlertPolicies/deploy.bicep +++ b/arm/Microsoft.Sql/servers/securityAlertPolicies/deploy.bicep @@ -24,7 +24,7 @@ param state string = 'Disabled' @secure() param storageAccountAccessKey string = '' -@description('Optional. Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.') +@description('Optional. Specifies the blob storage endpoint (e.g. https://mystorageaccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs.') param storageEndpoint string = '' @description('Required. The Name of SQL Server') diff --git a/arm/Microsoft.Sql/servers/securityAlertPolicies/readme.md b/arm/Microsoft.Sql/servers/securityAlertPolicies/readme.md index a1057686b1..623eb9545b 100644 --- a/arm/Microsoft.Sql/servers/securityAlertPolicies/readme.md +++ b/arm/Microsoft.Sql/servers/securityAlertPolicies/readme.md @@ -21,7 +21,7 @@ This module deploys an SQL Server Security Alert Policy. | `serverName` | string | | | Required. The Name of SQL Server | | `state` | string | `Disabled` | `[Disabled, Enabled]` | Optional. Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific database. | | `storageAccountAccessKey` | secureString | | | Optional. Specifies the identifier key of the Threat Detection audit storage account.. | -| `storageEndpoint` | string | | | Optional. Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. | +| `storageEndpoint` | string | | | Optional. Specifies the blob storage endpoint (e.g. https://mystorageaccount.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. | ## Outputs From cb9f8389ed890d8f10a9b4e3214807b3e1dc7442 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 13:38:56 +1100 Subject: [PATCH 23/65] test --- .github/workflows/linter.yml | 2 +- .lycheeignore | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 8873410826..a698c82473 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude-file .lycheeignore + args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --exclude SECURITY.md env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.lycheeignore b/.lycheeignore index 2d5dc88de1..35365dca9d 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -4,6 +4,5 @@ https://mystorageaccount.blob.core.windows.net https://mykeyvault.vault.azure.net https://www.powershellgallery.com https://github.com/myProject -SECURITY.md http://validURLToConfigLocation https://myCustomDependencyLocation From 7e137cb0b2c48da0c870b54ba268e72188a6f5e3 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 14:03:31 +1100 Subject: [PATCH 24/65] test --- .lycheeignore | 2 ++ docs/wiki/ModulesUsage.md | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.lycheeignore b/.lycheeignore index 35365dca9d..87a33bcff1 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -6,3 +6,5 @@ https://www.powershellgallery.com https://github.com/myProject http://validURLToConfigLocation https://myCustomDependencyLocation +https://github.com/dotnet +https://github.com/Azure/ResourceModules.git diff --git a/docs/wiki/ModulesUsage.md b/docs/wiki/ModulesUsage.md index ce425ceda3..726dad6f29 100644 --- a/docs/wiki/ModulesUsage.md +++ b/docs/wiki/ModulesUsage.md @@ -70,7 +70,7 @@ New-AzResourceGroup -Name 'ExampleGroup' -Location "Central US" $inputObject = @{ DeploymentName = 'ExampleDeployment' ResourceGroupName = 'ExampleGroup' - TemplateUri = 'https://raw.githubusercontent.com/arm/ResourceModules/main/arm/Microsoft.KeyVault/vaults/deploy.json' + TemplateUri = 'https://raw.githubusercontent.com/Azure/ResourceModules/main/arm/Microsoft.KeyVault/vaults/deploy.bicep' } New-AzResourceGroupDeployment @inputObject ``` @@ -83,7 +83,7 @@ az group create --name 'ExampleGroup' --location "Central US" $inputObject = @( '--name', 'ExampleDeployment', '--resource-group', 'ExampleGroup', - '--template-uri', 'https://raw.githubusercontent.com/arm/ResourceModules/main/arm/Microsoft.KeyVault/vaults/deploy.json', + '--template-uri', 'https://raw.githubusercontent.com/Azure/ResourceModules/main/arm/Microsoft.KeyVault/vaults/deploy.bicep', '--parameters', 'storageAccountType=Standard_GRS', ) az deployment group create @inputObject From 7013d574d8c3c177eb53d219c752804fd2ef9bcb Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 14:10:18 +1100 Subject: [PATCH 25/65] test --- .github/workflows/linter.yml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index a698c82473..61b4c68d6f 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -13,27 +13,27 @@ jobs: # Full git history is needed to get a proper list of changed files within `super-linter` fetch-depth: 0 - #- name: Lint Code Base - # uses: docker://ghcr.io/github/super-linter:slim-v4 - # # uses: github/super-linter@v4 - # env: - # VALIDATE_ALL_CODEBASE: false - # VALIDATE_MARKDOWN: false - # VALIDATE_ARM: false - # VALIDATE_JSON: false - # VALIDATE_YAML: false - # VALIDATE_GITHUB_ACTIONS: false - # if: ${{ github.event_name == 'pull_request' }} - # DEFAULT_BRANCH: ${{ github.base_ref }} - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' + - name: Lint Code Base + uses: docker://ghcr.io/github/super-linter:slim-v4 + # uses: github/super-linter@v4 + env: + VALIDATE_ALL_CODEBASE: false + VALIDATE_MARKDOWN: false + VALIDATE_ARM: false + VALIDATE_JSON: false + VALIDATE_YAML: false + VALIDATE_GITHUB_ACTIONS: false + if: ${{ github.event_name == 'pull_request' }} + DEFAULT_BRANCH: ${{ github.base_ref }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' - name: Link Checker if: always() id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --exclude SECURITY.md + args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --exclude SECURITY.md --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 5b7f73228fc9c9c04d5184e50884f94ba3f6d461 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 14:10:58 +1100 Subject: [PATCH 26/65] test --- .github/workflows/linter.yml | 2 +- .lycheeignore | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 61b4c68d6f..5bdff81439 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --exclude SECURITY.md --accept 200,201,403,429 + args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.lycheeignore b/.lycheeignore index 87a33bcff1..35365dca9d 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -6,5 +6,3 @@ https://www.powershellgallery.com https://github.com/myProject http://validURLToConfigLocation https://myCustomDependencyLocation -https://github.com/dotnet -https://github.com/Azure/ResourceModules.git From 4ba20742411e1b469b505767e9f10ed07d5364b7 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 14:19:12 +1100 Subject: [PATCH 27/65] test --- .github/workflows/linter.yml | 3 ++- .lycheeignore | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 5bdff81439..218edc12c7 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -37,5 +37,6 @@ jobs: env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - - name: Fail if there were link errors + - name: Link Checker Results + if: always() run: exit ${{ steps.checker.outputs.exit_code }} diff --git a/.lycheeignore b/.lycheeignore index 35365dca9d..62214a16db 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -4,5 +4,5 @@ https://mystorageaccount.blob.core.windows.net https://mykeyvault.vault.azure.net https://www.powershellgallery.com https://github.com/myProject -http://validURLToConfigLocation -https://myCustomDependencyLocation +http://validURLToConfigLocation/ +https://myCustomDependencyLocation/ From daf26ac7b9aad10218d4251a1a1d479372304953 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 14:22:34 +1100 Subject: [PATCH 28/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 218edc12c7..75ec6283bd 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: workflow_dispatch +on: [pull_request] jobs: build: From 3fd7486a44caee81672c2ec72c1101733bc212bf Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 14:30:28 +1100 Subject: [PATCH 29/65] Users/ahmad/links (#7) --- .github/workflows/linter.yml | 8 ++++- .lycheeignore | 8 +++++ .../virtualMachineScaleSets/readme.md | 29 +++++++------------ .../virtualMachines/readme.md | 8 ++--- .../managedClusters/agentPools/readme.md | 2 +- .../managedClusters/readme.md | 4 +-- .../securityAlertPolicies/deploy.bicep | 2 +- .../servers/securityAlertPolicies/readme.md | 2 +- docs/wiki/ModulesUsage.md | 4 +-- docs/wiki/TestingDesign.md | 2 +- 10 files changed, 37 insertions(+), 32 deletions(-) create mode 100644 .lycheeignore diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 05e966a2ae..218edc12c7 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -29,8 +29,14 @@ jobs: FILTER_REGEX_EXCLUDE: '[global.module.tests.ps1|Get\-ModulesAsMarkdownTable.ps1]' - name: Link Checker + if: always() + id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md **/*.html + args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + + - name: Link Checker Results + if: always() + run: exit ${{ steps.checker.outputs.exit_code }} diff --git a/.lycheeignore b/.lycheeignore new file mode 100644 index 0000000000..62214a16db --- /dev/null +++ b/.lycheeignore @@ -0,0 +1,8 @@ +https://foo.psd1/ +file:///github +https://mystorageaccount.blob.core.windows.net +https://mykeyvault.vault.azure.net +https://www.powershellgallery.com +https://github.com/myProject +http://validURLToConfigLocation/ +https://myCustomDependencyLocation/ diff --git a/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md b/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md index 4f1e419349..691dc568e6 100644 --- a/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md +++ b/arm/Microsoft.Compute/virtualMachineScaleSets/readme.md @@ -197,25 +197,16 @@ The following resources are required to be able to deploy this resource. ```json -"extensionDomainJoinConfig": { - "value": { - "settings": { - "Name": ".onmicrosoft.com", - "User": "domainJoinUser02@.onmicrosoft.com", - "OUPath": "OU=Template-Test; DC=; DC=onmicrosoft; DC=com", - "Restart": true, - "Options": "" - } - } -} -``` - -Should be configured alongside: -```json -"extensionDomainJoinPassword": { - "reference": { - "keyVault": { - "id": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.KeyVault/vaults/" +"windowsScriptExtensionFileData": { + "value": [ + //storage accounts with SAS token requirement + { + "uri": "https://mystorageAccount.blob.core.windows.net/avdscripts/File1.ps1", + "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" + }, + { + "uri": "https://mystorageAccount.blob.core.windows.net/avdscripts/File2.ps1", + "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" }, "secretName": "domainJoinUser-Password" } diff --git a/arm/Microsoft.Compute/virtualMachines/readme.md b/arm/Microsoft.Compute/virtualMachines/readme.md index 125f6fd3dd..5b2abb2edf 100644 --- a/arm/Microsoft.Compute/virtualMachines/readme.md +++ b/arm/Microsoft.Compute/virtualMachines/readme.md @@ -343,9 +343,9 @@ Only for OSType Windows "diskEncryptionSettings": { "value": { "EncryptionOperation": "EnableEncryption", - "KeyVaultURL": "https://adp-sxx-az-kv-x-001.vault.azure.net/", + "KeyVaultURL": "https://mykeyvault.vault.azure.net/", "KeyVaultResourceId": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.KeyVault/vaults/adp-sxx-az-kv-x-001", - "KeyEncryptionKeyURL": "https://adp-sxx-az-kv-x-001.vault.azure.net/keys/keyEncryptionKey/685153483a1140e3856f004a753e1ab4", + "KeyEncryptionKeyURL": "https://mykeyvault.vault.azure.net/keys/keyEncryptionKey/685153483a1140e3856f004a753e1ab4", "KekVaultResourceId": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.KeyVault/vaults/adp-sxx-az-kv-x-001", "KeyEncryptionAlgorithm": "RSA-OAEP", //'RSA-OAEP'/'RSA-OAEP-256'/'RSA1_5' "VolumeType": "All", //'OS'/'Data'/'All' @@ -409,11 +409,11 @@ Only for OSType Windows "value": [ //storage accounts with SAS token requirement { - "uri": "https://storageAccount.blob.core.windows.net/avdscripts/File1.ps1", + "uri": "https://mystorageaccount.blob.core.windows.net/avdscripts/File1.ps1", "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" }, { - "uri": "https://storageAccount.blob.core.windows.net/avdscripts/File2.ps1", + "uri": "https://mystorageaccount.blob.core.windows.net/avdscripts/File2.ps1", "storageAccountId": "/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/rgName/providers/Microsoft.Storage/storageAccounts/storageAccountName" }, //storage account with public container (no SAS token is required) OR other public URL (not a storage account) diff --git a/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md b/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md index 929311fc88..fa853264e1 100644 --- a/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md +++ b/arm/Microsoft.ContainerService/managedClusters/agentPools/readme.md @@ -48,7 +48,7 @@ For available properties check Date: Mon, 6 Dec 2021 14:39:14 +1100 Subject: [PATCH 30/65] changed on pull request --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 218edc12c7..75ec6283bd 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: workflow_dispatch +on: [pull_request] jobs: build: From c59b889218cedc71d43bf0c23c6b5163ab98c409 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 14:40:48 +1100 Subject: [PATCH 31/65] Users/ahmad/links (#8) --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 218edc12c7..75ec6283bd 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: workflow_dispatch +on: [pull_request] jobs: build: From b53297e03c1eb3305ea784b850ce99e6c4c0cf95 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Mon, 6 Dec 2021 15:40:58 +1100 Subject: [PATCH 32/65] linter issues --- docs/wiki/ModulesDesign.md | 2 +- docs/wiki/TestingDesign.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/wiki/ModulesDesign.md b/docs/wiki/ModulesDesign.md index 273caa453e..7d88f95b4d 100644 --- a/docs/wiki/ModulesDesign.md +++ b/docs/wiki/ModulesDesign.md @@ -144,7 +144,7 @@ Microsoft.Sql In this folder we recommend to place the child-resource-template alongside a ReadMe (that can be generated via the `.github\workflows\scripts\Set-ModuleReadMe.ps1` script) and optionally further nest additional folders for it's child-resources. -The parent template should reference all it's direct child-templates to allow for an end to end deployment experience while allowing any user to also reference 'just' the child-resource itself. In the case of the SQL-server example the server template would reference the database module and encapsulate it it in a loop to allow for the deployment of n-amount of databases. For example +The parent template should reference all it's direct child-templates to allow for an end-to-end deployment experience while allowing any user to also reference 'just' the child-resource itself. In the case of the SQL-server example the server template would reference the database module and encapsulate it it in a loop to allow for the deployment of n-amount of databases. For example ```Bicep @description('Optional. The databases to create in the server') diff --git a/docs/wiki/TestingDesign.md b/docs/wiki/TestingDesign.md index 33eccf42f8..2dcea11bc3 100644 --- a/docs/wiki/TestingDesign.md +++ b/docs/wiki/TestingDesign.md @@ -81,7 +81,7 @@ The template validation tests execute a dry-run with each parameter file provide # Deployment validation -If all other tests passed, the deployment tests are the ultimate module validation. Using the available & configured parameter files for a module, each is deployed to Azure (in parallel) and verifies if the deployment works end to end. +If all other tests passed, the deployment tests are the ultimate module validation. Using the available & configured parameter files for a module, each is deployed to Azure (in parallel) and verifies if the deployment works end-to-end. Most of the resources are deleted by default after their deployment, to keep costs down and to be able to retest resource modules from scratch in the next run. However, the removal step can be skipped in case further investigation on the deployed resource is needed. For further details, please refer to the (./PipelinesUsage) section. From ac6b9e4f2e358e022e3f0bd5c1fc7d7e49b89037 Mon Sep 17 00:00:00 2001 From: Erika Gressi <56914614+eriqua@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:14:54 +0100 Subject: [PATCH 33/65] Align Autoaccount deployment names (#738) Co-authored-by: Erika Gressi --- arm/Microsoft.Automation/automationAccounts/deploy.bicep | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arm/Microsoft.Automation/automationAccounts/deploy.bicep b/arm/Microsoft.Automation/automationAccounts/deploy.bicep index c925a453bf..7a475462d6 100644 --- a/arm/Microsoft.Automation/automationAccounts/deploy.bicep +++ b/arm/Microsoft.Automation/automationAccounts/deploy.bicep @@ -198,7 +198,7 @@ module automationAccount_jobSchedules 'jobSchedules/deploy.bicep' = [for (jobSch }] module automationAccount_variables 'variables/deploy.bicep' = [for (variable, index) in variables: { - name: '${uniqueString(deployment().name, location)}-AutoAccount-variable-${index}' + name: '${uniqueString(deployment().name, location)}-AutoAccount-Variable-${index}' params: { automationAccountName: automationAccount.name name: variable.name @@ -310,7 +310,7 @@ resource automationAccount_diagnosticSettings 'Microsoft.Insights/diagnosticSett } module automationAccount_privateEndpoints '.bicep/nested_privateEndpoint.bicep' = [for (endpoint, index) in privateEndpoints: if (!empty(privateEndpoints)) { - name: '${uniqueString(deployment().name, location)}-AutoAccount-PrivateEndpoints-${index}' + name: '${uniqueString(deployment().name, location)}-AutoAccount-PrivateEndpoint-${index}' params: { privateEndpointResourceId: automationAccount.id privateEndpointVnetLocation: (empty(privateEndpoints) ? 'dummy' : reference(split(endpoint.subnetResourceId, '/subnets/')[0], '2020-06-01', 'Full').location) From dd2eb7b29a502e77947b864ec9bc996eb337c086 Mon Sep 17 00:00:00 2001 From: Erika Gressi <56914614+eriqua@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:15:38 +0100 Subject: [PATCH 34/65] Align compute deployment names (#736) Co-authored-by: Erika Gressi --- .../availabilitySets/deploy.bicep | 2 +- .../diskEncryptionSets/deploy.bicep | 2 +- arm/Microsoft.Compute/galleries/deploy.bicep | 4 ++-- .../galleries/images/deploy.bicep | 2 +- arm/Microsoft.Compute/images/deploy.bicep | 2 +- .../proximityPlacementGroups/deploy.bicep | 2 +- .../virtualMachineScaleSets/deploy.bicep | 18 +++++++-------- .../.bicep/nested_networkInterface.bicep | 4 ++-- ...ted_networkInterface_publicIPAddress.bicep | 2 +- .../virtualMachines/deploy.bicep | 22 +++++++++---------- 10 files changed, 30 insertions(+), 30 deletions(-) diff --git a/arm/Microsoft.Compute/availabilitySets/deploy.bicep b/arm/Microsoft.Compute/availabilitySets/deploy.bicep index 7df4ffd083..687c53f292 100644 --- a/arm/Microsoft.Compute/availabilitySets/deploy.bicep +++ b/arm/Microsoft.Compute/availabilitySets/deploy.bicep @@ -62,7 +62,7 @@ resource availabilitySet_lock 'Microsoft.Authorization/locks@2016-09-01' = if (l } module availabilitySet_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-AvSet-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/diskEncryptionSets/deploy.bicep b/arm/Microsoft.Compute/diskEncryptionSets/deploy.bicep index 106668ce83..332fd6cae3 100644 --- a/arm/Microsoft.Compute/diskEncryptionSets/deploy.bicep +++ b/arm/Microsoft.Compute/diskEncryptionSets/deploy.bicep @@ -63,7 +63,7 @@ resource diskEncryptionSet 'Microsoft.Compute/diskEncryptionSets@2020-12-01' = { } module diskEncryptionSet_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-DiskEncrSet-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/galleries/deploy.bicep b/arm/Microsoft.Compute/galleries/deploy.bicep index 38cc47dc08..fa4d9e153f 100644 --- a/arm/Microsoft.Compute/galleries/deploy.bicep +++ b/arm/Microsoft.Compute/galleries/deploy.bicep @@ -53,7 +53,7 @@ resource gallery_lock 'Microsoft.Authorization/locks@2016-09-01' = if (lock != ' } module gallery_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${uniqueString(deployment().name, location)}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-Gallery-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName @@ -63,7 +63,7 @@ module gallery_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in // Images module galleries_images 'images/deploy.bicep' = [for (image, index) in images: { - name: '${uniqueString(deployment().name, location)}-Image-${index}' + name: '${uniqueString(deployment().name, location)}-Gallery-Image-${index}' params: { name: image.name galleryName: gallery.name diff --git a/arm/Microsoft.Compute/galleries/images/deploy.bicep b/arm/Microsoft.Compute/galleries/images/deploy.bicep index 8f1d89d38f..1b8d10d798 100644 --- a/arm/Microsoft.Compute/galleries/images/deploy.bicep +++ b/arm/Microsoft.Compute/galleries/images/deploy.bicep @@ -144,7 +144,7 @@ resource image 'Microsoft.Compute/galleries/images@2020-09-30' = { } module galleryImage_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${deployment().name}-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/images/deploy.bicep b/arm/Microsoft.Compute/images/deploy.bicep index ab230818fe..eb3a19bf7e 100644 --- a/arm/Microsoft.Compute/images/deploy.bicep +++ b/arm/Microsoft.Compute/images/deploy.bicep @@ -56,7 +56,7 @@ resource image 'Microsoft.Compute/images@2021-04-01' = { } module image_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-Image-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/proximityPlacementGroups/deploy.bicep b/arm/Microsoft.Compute/proximityPlacementGroups/deploy.bicep index ee15ee087f..152fa60727 100644 --- a/arm/Microsoft.Compute/proximityPlacementGroups/deploy.bicep +++ b/arm/Microsoft.Compute/proximityPlacementGroups/deploy.bicep @@ -52,7 +52,7 @@ resource proximityPlacementGroup_lock 'Microsoft.Authorization/locks@2016-09-01' } module proximityPlacementGroup_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-ProxPlaceGroup-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/virtualMachineScaleSets/deploy.bicep b/arm/Microsoft.Compute/virtualMachineScaleSets/deploy.bicep index 7f8af299b9..bef0dd1e46 100644 --- a/arm/Microsoft.Compute/virtualMachineScaleSets/deploy.bicep +++ b/arm/Microsoft.Compute/virtualMachineScaleSets/deploy.bicep @@ -447,7 +447,7 @@ resource vmss 'Microsoft.Compute/virtualMachineScaleSets@2021-04-01' = { } module vmss_domainJoinExtension 'extensions/deploy.bicep' = if (extensionDomainJoinConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-DomainJoin' + name: '${uniqueString(deployment().name, location)}-VMSS-DomainJoin' params: { virtualMachineScaleSetName: vmss.name name: 'DomainJoin' @@ -464,7 +464,7 @@ module vmss_domainJoinExtension 'extensions/deploy.bicep' = if (extensionDomainJ } module vmss_microsoftAntiMalwareExtension 'extensions/deploy.bicep' = if (extensionAntiMalwareConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-MicrosoftAntiMalware' + name: '${uniqueString(deployment().name, location)}-VMSS-MicrosoftAntiMalware' params: { virtualMachineScaleSetName: vmss.name name: 'MicrosoftAntiMalware' @@ -483,7 +483,7 @@ resource vmss_logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@20 } module vmss_microsoftMonitoringAgentExtension 'extensions/deploy.bicep' = if (extensionMonitoringAgentConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-MicrosoftMonitoringAgent' + name: '${uniqueString(deployment().name, location)}-VMSS-MicrosoftMonitoringAgent' params: { virtualMachineScaleSetName: vmss.name name: 'MicrosoftMonitoringAgent' @@ -502,7 +502,7 @@ module vmss_microsoftMonitoringAgentExtension 'extensions/deploy.bicep' = if (ex } module vmss_dependencyAgentExtension 'extensions/deploy.bicep' = if (extensionDependencyAgentConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-DependencyAgent' + name: '${uniqueString(deployment().name, location)}-VMSS-DependencyAgent' params: { virtualMachineScaleSetName: vmss.name name: 'DependencyAgent' @@ -515,7 +515,7 @@ module vmss_dependencyAgentExtension 'extensions/deploy.bicep' = if (extensionDe } module vmss_networkWatcherAgentExtension 'extensions/deploy.bicep' = if (extensionNetworkWatcherAgentConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-NetworkWatcherAgent' + name: '${uniqueString(deployment().name, location)}-VMSS-NetworkWatcherAgent' params: { virtualMachineScaleSetName: vmss.name name: 'NetworkWatcherAgent' @@ -528,7 +528,7 @@ module vmss_networkWatcherAgentExtension 'extensions/deploy.bicep' = if (extensi } module vmss_desiredStateConfigurationExtension 'extensions/deploy.bicep' = if (extensionDSCConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-DesiredStateConfiguration' + name: '${uniqueString(deployment().name, location)}-VMSS-DesiredStateConfiguration' params: { virtualMachineScaleSetName: vmss.name name: 'DesiredStateConfiguration' @@ -543,7 +543,7 @@ module vmss_desiredStateConfigurationExtension 'extensions/deploy.bicep' = if (e } module vmss_customScriptExtension 'extensions/deploy.bicep' = if (extensionCustomScriptConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-CustomScriptExtension' + name: '${uniqueString(deployment().name, location)}-VMSS-CustomScriptExtension' params: { virtualMachineScaleSetName: vmss.name name: 'CustomScriptExtension' @@ -563,7 +563,7 @@ module vmss_customScriptExtension 'extensions/deploy.bicep' = if (extensionCusto } module vmss_diskEncryptionExtension 'extensions/deploy.bicep' = if (extensionDiskEncryptionConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vmss-DiskEncryption' + name: '${uniqueString(deployment().name, location)}-VMSS-DiskEncryption' params: { virtualMachineScaleSetName: vmss.name name: 'DiskEncryption' @@ -603,7 +603,7 @@ resource vmss_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2021-05- } module vmss_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-VMSS-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface.bicep b/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface.bicep index 69e81d6bb5..dc9e755dab 100644 --- a/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface.bicep +++ b/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface.bicep @@ -37,7 +37,7 @@ var networkSecurityGroup = { } module networkInterface_publicIPConfigurations 'nested_networkInterface_publicIPAddress.bicep' = [for (ipConfiguration, index) in ipConfigurationArray: if (contains(ipConfiguration, 'pipconfiguration')) { - name: '${deployment().name}-pip-${index}' + name: '${deployment().name}-PIP-${index}' params: { publicIPAddressName: '${virtualMachineName}${ipConfiguration.pipconfiguration.publicIpNameSuffix}' publicIPPrefixId: (contains(ipConfiguration.pipconfiguration, 'publicIPPrefixId') ? (!(empty(ipConfiguration.pipconfiguration.publicIPPrefixId)) ? ipConfiguration.pipconfiguration.publicIPPrefixId : '') : '') @@ -107,7 +107,7 @@ resource networkInterface_diagnosticSettings 'Microsoft.Insights/diagnosticsetti } module networkInterface_rbac 'nested_networkInterface_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${deployment().name}-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface_publicIPAddress.bicep b/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface_publicIPAddress.bicep index ff4721a213..5f98e281b5 100644 --- a/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface_publicIPAddress.bicep +++ b/arm/Microsoft.Compute/virtualMachines/.bicep/nested_networkInterface_publicIPAddress.bicep @@ -75,7 +75,7 @@ resource publicIpAddress_diagnosticSettings 'Microsoft.Insights/diagnosticsettin } module publicIpAddress_rbac 'nested_networkInterface_publicIPAddress_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${deployment().name}-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Compute/virtualMachines/deploy.bicep b/arm/Microsoft.Compute/virtualMachines/deploy.bicep index 722b6463ef..8d6e028ddd 100644 --- a/arm/Microsoft.Compute/virtualMachines/deploy.bicep +++ b/arm/Microsoft.Compute/virtualMachines/deploy.bicep @@ -303,7 +303,7 @@ module pid_cuaId '.bicep/nested_cuaId.bicep' = if (!empty(cuaId)) { } module virtualMachine_nic '.bicep/nested_networkInterface.bicep' = [for (nicConfiguration, index) in nicConfigurations: { - name: '${uniqueString(deployment().name, location)}-vm-nic-${index}' + name: '${uniqueString(deployment().name, location)}-VM-Nic-${index}' params: { networkInterfaceName: '${name}${nicConfiguration.nicSuffix}' virtualMachineName: name @@ -403,7 +403,7 @@ resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-07-01' = { } module vm_domainJoinExtension 'extensions/deploy.bicep' = if (extensionDomainJoinConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-DomainJoin' + name: '${uniqueString(deployment().name, location)}-VM-DomainJoin' params: { virtualMachineName: virtualMachine.name name: 'DomainJoin' @@ -420,7 +420,7 @@ module vm_domainJoinExtension 'extensions/deploy.bicep' = if (extensionDomainJoi } module vm_microsoftAntiMalwareExtension 'extensions/deploy.bicep' = if (extensionAntiMalwareConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-MicrosoftAntiMalware' + name: '${uniqueString(deployment().name, location)}-VM-MicrosoftAntiMalware' params: { virtualMachineName: virtualMachine.name name: 'MicrosoftAntiMalware' @@ -439,7 +439,7 @@ resource vm_logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2021 } module vm_microsoftMonitoringAgentExtension 'extensions/deploy.bicep' = if (extensionMonitoringAgentConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-MicrosoftMonitoringAgent' + name: '${uniqueString(deployment().name, location)}-VM-MicrosoftMonitoringAgent' params: { virtualMachineName: virtualMachine.name name: 'MicrosoftMonitoringAgent' @@ -458,7 +458,7 @@ module vm_microsoftMonitoringAgentExtension 'extensions/deploy.bicep' = if (exte } module vm_dependencyAgentExtension 'extensions/deploy.bicep' = if (extensionDependencyAgentConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-DependencyAgent' + name: '${uniqueString(deployment().name, location)}-VM-DependencyAgent' params: { virtualMachineName: virtualMachine.name name: 'DependencyAgent' @@ -471,7 +471,7 @@ module vm_dependencyAgentExtension 'extensions/deploy.bicep' = if (extensionDepe } module vm_networkWatcherAgentExtension 'extensions/deploy.bicep' = if (extensionNetworkWatcherAgentConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-NetworkWatcherAgent' + name: '${uniqueString(deployment().name, location)}-VM-NetworkWatcherAgent' params: { virtualMachineName: virtualMachine.name name: 'NetworkWatcherAgent' @@ -484,7 +484,7 @@ module vm_networkWatcherAgentExtension 'extensions/deploy.bicep' = if (extension } module vm_desiredStateConfigurationExtension 'extensions/deploy.bicep' = if (extensionDSCConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-DesiredStateConfiguration' + name: '${uniqueString(deployment().name, location)}-VM-DesiredStateConfiguration' params: { virtualMachineName: virtualMachine.name name: 'DesiredStateConfiguration' @@ -499,7 +499,7 @@ module vm_desiredStateConfigurationExtension 'extensions/deploy.bicep' = if (ext } module vm_customScriptExtension 'extensions/deploy.bicep' = if (extensionCustomScriptConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-CustomScriptExtension' + name: '${uniqueString(deployment().name, location)}-VM-CustomScriptExtension' params: { virtualMachineName: virtualMachine.name name: 'CustomScriptExtension' @@ -519,7 +519,7 @@ module vm_customScriptExtension 'extensions/deploy.bicep' = if (extensionCustomS } module vm_diskEncryptionExtension 'extensions/deploy.bicep' = if (extensionDiskEncryptionConfig.enabled) { - name: '${uniqueString(deployment().name, location)}-vm-DiskEncryption' + name: '${uniqueString(deployment().name, location)}-VM-DiskEncryption' params: { virtualMachineName: virtualMachine.name name: 'DiskEncryption' @@ -538,7 +538,7 @@ module vm_diskEncryptionExtension 'extensions/deploy.bicep' = if (extensionDiskE } module virtualMachine_backup '.bicep/nested_backup.bicep' = if (!empty(backupVaultName)) { - name: '${uniqueString(deployment().name, location)}-vm-backup' + name: '${uniqueString(deployment().name, location)}-VM-Backup' params: { backupResourceName: '${backupVaultName}/Azure/iaasvmcontainer;iaasvmcontainerv2;${resourceGroup().name};${virtualMachine.name}/vm;iaasvmcontainerv2;${resourceGroup().name};${virtualMachine.name}' protectedItemType: 'Microsoft.Compute/virtualMachines' @@ -568,7 +568,7 @@ resource virtualMachine_lock 'Microsoft.Authorization/locks@2017-04-01' = if (lo } module virtualMachine_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${uniqueString(deployment().name, location)}-vm-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-VM-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName From b6b38847601dd61cd5293bb97ab7a3211751d3b8 Mon Sep 17 00:00:00 2001 From: Erika Gressi <56914614+eriqua@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:16:16 +0100 Subject: [PATCH 35/65] Align Microsoft.ContainerRegistry deployment names (#735) * Align aks deployment names * Align acr deployment names Co-authored-by: Erika Gressi --- arm/Microsoft.ContainerRegistry/registries/deploy.bicep | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arm/Microsoft.ContainerRegistry/registries/deploy.bicep b/arm/Microsoft.ContainerRegistry/registries/deploy.bicep index 6c72ecf73b..b0167f3a6b 100644 --- a/arm/Microsoft.ContainerRegistry/registries/deploy.bicep +++ b/arm/Microsoft.ContainerRegistry/registries/deploy.bicep @@ -182,7 +182,7 @@ resource registry_diagnosticSettingName 'Microsoft.Insights/diagnosticsettings@2 } module registry_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-ContainerRegistry-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName @@ -190,8 +190,8 @@ module registry_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) i } }] -module registry_privateEndpoints '.bicep/nested_privateEndpoints.bicep' = [for privateEndpoint in privateEndpoints: { - name: '${uniqueString(deployment().name, privateEndpoint.name)}-privateEndpoint' +module registry_privateEndpoints '.bicep/nested_privateEndpoints.bicep' = [for (privateEndpoint, index) in privateEndpoints: { + name: '${uniqueString(deployment().name, location)}-ContainerRegistry-PrivateEndpoint-${index}' params: { privateEndpointResourceId: registry.id privateEndpointVnetLocation: empty(privateEndpoints) ? 'dummy' : reference(split(privateEndpoint.subnetResourceId, '/subnets/')[0], '2020-06-01', 'Full').location From 47ff5930b123150aacad4b131cfdb5eea6c3bbd6 Mon Sep 17 00:00:00 2001 From: Erika Gressi <56914614+eriqua@users.noreply.github.com> Date: Mon, 6 Dec 2021 10:17:06 +0100 Subject: [PATCH 36/65] Align eventgrid deployment names (#728) Co-authored-by: Erika Gressi --- arm/Microsoft.EventGrid/topics/deploy.bicep | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arm/Microsoft.EventGrid/topics/deploy.bicep b/arm/Microsoft.EventGrid/topics/deploy.bicep index a66830ec83..ef3158da9f 100644 --- a/arm/Microsoft.EventGrid/topics/deploy.bicep +++ b/arm/Microsoft.EventGrid/topics/deploy.bicep @@ -122,7 +122,7 @@ resource eventGrid_diagnosticSettings 'Microsoft.Insights/diagnosticsettings@201 } module eventGrid_privateEndpoints '.bicep/nested_privateEndpoint.bicep' = [for (privateEndpoint, index) in privateEndpoints: if (!empty(privateEndpoints)) { - name: '${uniqueString(deployment().name, location)}-EventGrid-PrivateEndpoints-${index}' + name: '${uniqueString(deployment().name, location)}-EventGrid-PrivateEndpoint-${index}' params: { privateEndpointResourceId: eventGrid.id privateEndpointVnetLocation: (empty(privateEndpoints) ? 'dummy' : reference(split(privateEndpoint.subnetResourceId, '/subnets/')[0], '2020-06-01', 'Full').location) @@ -132,7 +132,7 @@ module eventGrid_privateEndpoints '.bicep/nested_privateEndpoint.bicep' = [for ( }] module eventGrid_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-EventGrid-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName From 2a6a870a07c8afc5c4176252f2360c9efee6009b Mon Sep 17 00:00:00 2001 From: Erika Gressi <56914614+eriqua@users.noreply.github.com> Date: Mon, 6 Dec 2021 16:02:35 +0100 Subject: [PATCH 37/65] Align insights deployment names (#725) Co-authored-by: Erika Gressi --- arm/Microsoft.Insights/actionGroups/deploy.bicep | 2 +- arm/Microsoft.Insights/activityLogAlerts/deploy.bicep | 2 +- arm/Microsoft.Insights/components/deploy.bicep | 2 +- arm/Microsoft.Insights/metricAlerts/deploy.bicep | 2 +- arm/Microsoft.Insights/privateLinkScopes/deploy.bicep | 6 +++--- arm/Microsoft.Insights/scheduledQueryRules/deploy.bicep | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/arm/Microsoft.Insights/actionGroups/deploy.bicep b/arm/Microsoft.Insights/actionGroups/deploy.bicep index e0474a0671..08c650ab9b 100644 --- a/arm/Microsoft.Insights/actionGroups/deploy.bicep +++ b/arm/Microsoft.Insights/actionGroups/deploy.bicep @@ -75,7 +75,7 @@ resource actionGroup 'microsoft.insights/actionGroups@2019-06-01' = { } module actionGroup_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-ActionGroup-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Insights/activityLogAlerts/deploy.bicep b/arm/Microsoft.Insights/activityLogAlerts/deploy.bicep index 34b01321c3..404c0d8f50 100644 --- a/arm/Microsoft.Insights/activityLogAlerts/deploy.bicep +++ b/arm/Microsoft.Insights/activityLogAlerts/deploy.bicep @@ -58,7 +58,7 @@ resource activityLogAlert 'Microsoft.Insights/activityLogAlerts@2020-10-01' = { } module activityLogAlert_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-ActivityLogAlert-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Insights/components/deploy.bicep b/arm/Microsoft.Insights/components/deploy.bicep index bcfd1f2934..a9fac14def 100644 --- a/arm/Microsoft.Insights/components/deploy.bicep +++ b/arm/Microsoft.Insights/components/deploy.bicep @@ -59,7 +59,7 @@ resource appInsights 'Microsoft.Insights/components@2020-02-02' = { } module appInsights_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-AppInsights-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Insights/metricAlerts/deploy.bicep b/arm/Microsoft.Insights/metricAlerts/deploy.bicep index 071eb9ae53..47e9428de0 100644 --- a/arm/Microsoft.Insights/metricAlerts/deploy.bicep +++ b/arm/Microsoft.Insights/metricAlerts/deploy.bicep @@ -113,7 +113,7 @@ resource metricAlert 'Microsoft.Insights/metricAlerts@2018-03-01' = { } module metricAlert_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-MetricAlert-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Insights/privateLinkScopes/deploy.bicep b/arm/Microsoft.Insights/privateLinkScopes/deploy.bicep index 5a95a5f04c..da84b93f41 100644 --- a/arm/Microsoft.Insights/privateLinkScopes/deploy.bicep +++ b/arm/Microsoft.Insights/privateLinkScopes/deploy.bicep @@ -41,7 +41,7 @@ resource privateLinkScope 'Microsoft.Insights/privateLinkScopes@2019-10-17-previ } module privateLinkScope_scopedResource 'scopedResources/deploy.bicep' = [for (scopedResource, index) in scopedResources: { - name: '${uniqueString(deployment().name, location)}-Insights-ScpdRes-${index}' + name: '${uniqueString(deployment().name, location)}-PvtLinkScope-ScopedRes-${index}' params: { name: scopedResource.name privateLinkScopeName: privateLinkScope.name @@ -59,7 +59,7 @@ resource privateLinkScope_lock 'Microsoft.Authorization/locks@2016-09-01' = if ( } module privateLinkScope_privateEndpoints '.bicep/nested_privateEndpoint.bicep' = [for (endpoint, index) in privateEndpoints: { - name: '${uniqueString(deployment().name, location)}-Insights-PvtEndPnt-${index}' + name: '${uniqueString(deployment().name, location)}-PvtLinkScope-PrivateEndpoint-${index}' params: { privateEndpointResourceId: privateLinkScope.id privateEndpointVnetLocation: reference(split(endpoint.subnetResourceId, '/subnets/')[0], '2020-06-01', 'Full').location @@ -69,7 +69,7 @@ module privateLinkScope_privateEndpoints '.bicep/nested_privateEndpoint.bicep' = }] module privateLinkScope_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-PvtLinkScope-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName diff --git a/arm/Microsoft.Insights/scheduledQueryRules/deploy.bicep b/arm/Microsoft.Insights/scheduledQueryRules/deploy.bicep index f7be392ff3..6dbc6368bc 100644 --- a/arm/Microsoft.Insights/scheduledQueryRules/deploy.bicep +++ b/arm/Microsoft.Insights/scheduledQueryRules/deploy.bicep @@ -99,7 +99,7 @@ resource queryRule 'Microsoft.Insights/scheduledQueryRules@2021-02-01-preview' = } module queryRule_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in roleAssignments: { - name: '${deployment().name}-rbac-${index}' + name: '${uniqueString(deployment().name, location)}-QueryRule-Rbac-${index}' params: { principalIds: roleAssignment.principalIds roleDefinitionIdOrName: roleAssignment.roleDefinitionIdOrName From d3d8d63e6a23b11f8195c79445224f212dba9877 Mon Sep 17 00:00:00 2001 From: Javier Cevallos Date: Mon, 6 Dec 2021 13:21:59 -0800 Subject: [PATCH 38/65] Target NSGs in seperate resource group (#713) * Target NSGs in seperate resource group In some scenarios, net sec teams are separate from network operations teams. * Notes * change type * Update readme.md --- arm/Microsoft.Network/virtualNetworks/deploy.bicep | 6 +++++- arm/Microsoft.Network/virtualNetworks/readme.md | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/arm/Microsoft.Network/virtualNetworks/deploy.bicep b/arm/Microsoft.Network/virtualNetworks/deploy.bicep index e72405a788..ed5faeeb6d 100644 --- a/arm/Microsoft.Network/virtualNetworks/deploy.bicep +++ b/arm/Microsoft.Network/virtualNetworks/deploy.bicep @@ -11,6 +11,10 @@ param addressPrefixes array @minLength(1) param subnets array +@description('Optional. Resource Group where NSGs are deployed, if different than VNET Resource Group.') +@minLength(1) +param nsgResourceGroup string = resourceGroup().name + @description('Optional. DNS Servers associated to the Virtual Network.') param dnsServers array = [] @@ -116,7 +120,7 @@ resource virtualNetwork 'Microsoft.Network/virtualNetworks@2021-05-01' = { name: item.name properties: { addressPrefix: item.addressPrefix - networkSecurityGroup: contains(item, 'networkSecurityGroupName') ? (empty(item.networkSecurityGroupName) ? null : json('{"id": "${resourceId('Microsoft.Network/networkSecurityGroups', item.networkSecurityGroupName)}"}')) : null + networkSecurityGroup: contains(item, 'networkSecurityGroupName') ? (empty(item.networkSecurityGroupName) ? null : json('{"id": "${resourceId(nsgResourceGroup, 'Microsoft.Network/networkSecurityGroups', item.networkSecurityGroupName)}"}')) : null routeTable: contains(item, 'routeTableName') ? (empty(item.routeTableName) ? null : json('{"id": "${resourceId('Microsoft.Network/routeTables', item.routeTableName)}"}')) : null serviceEndpoints: contains(item, 'serviceEndpoints') ? (empty(item.serviceEndpoints) ? null : item.serviceEndpoints) : null delegations: contains(item, 'delegations') ? (empty(item.delegations) ? null : item.delegations) : null diff --git a/arm/Microsoft.Network/virtualNetworks/readme.md b/arm/Microsoft.Network/virtualNetworks/readme.md index 7c5811cb68..4fe7f5e8bd 100644 --- a/arm/Microsoft.Network/virtualNetworks/readme.md +++ b/arm/Microsoft.Network/virtualNetworks/readme.md @@ -31,6 +31,7 @@ This template deploys a virtual network (vNet). | `name` | string | | | Required. The Virtual Network (vNet) Name. | | `roleAssignments` | array | `[]` | | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11' | | `subnets` | array | | | Required. An Array of subnets to deploy to the Virual Network. | +| `nsgResourceGroup` | string | `[resourceGroup().name]` | | Optional. Resource Group where NSGs are deployed, if different than VNET Resource Group. | | `tags` | object | `{object}` | | Optional. Tags of the resource. | | `virtualNetworkPeerings` | _[virtualNetworkPeerings](virtualNetworkPeerings/readme.md)_ array | `[]` | | Optional. Virtual Network Peerings configurations | | `workspaceId` | string | | | Optional. Resource ID of log analytics. | From 372d26427bc5cfd0197c6624cd431186c2070098 Mon Sep 17 00:00:00 2001 From: Alexander Sehr Date: Mon, 6 Dec 2021 22:23:27 +0100 Subject: [PATCH 39/65] Added backup config to rsv module (#755) --- .../vaults/.parameters/parameters.json | 6 ++ .../backupConfig/.bicep/nested_cuaId.bicep | 1 + .../vaults/backupConfig/deploy.bicep | 81 +++++++++++++++++++ .../vaults/backupConfig/readme.md | 35 ++++++++ .../vaults/backupPolicies/deploy.bicep | 5 +- .../vaults/backupPolicies/readme.md | 4 +- .../vaults/backupStorageConfig/deploy.bicep | 1 - .../vaults/deploy.bicep | 24 +++++- .../vaults/protectionContainers/deploy.bicep | 1 - .../vaults/readme.md | 9 ++- 10 files changed, 153 insertions(+), 14 deletions(-) create mode 100644 arm/Microsoft.RecoveryServices/vaults/backupConfig/.bicep/nested_cuaId.bicep create mode 100644 arm/Microsoft.RecoveryServices/vaults/backupConfig/deploy.bicep create mode 100644 arm/Microsoft.RecoveryServices/vaults/backupConfig/readme.md diff --git a/arm/Microsoft.RecoveryServices/vaults/.parameters/parameters.json b/arm/Microsoft.RecoveryServices/vaults/.parameters/parameters.json index a575657a6e..dd44b491a5 100644 --- a/arm/Microsoft.RecoveryServices/vaults/.parameters/parameters.json +++ b/arm/Microsoft.RecoveryServices/vaults/.parameters/parameters.json @@ -5,6 +5,12 @@ "name": { "value": "sxx-az-rsv-x-001" }, + "backupConfig": { + "value": { + "enhancedSecurityState": "Disabled", + "softDeleteFeatureState": "Disabled" + } + }, "backupPolicies": { "value": [ { diff --git a/arm/Microsoft.RecoveryServices/vaults/backupConfig/.bicep/nested_cuaId.bicep b/arm/Microsoft.RecoveryServices/vaults/backupConfig/.bicep/nested_cuaId.bicep new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/arm/Microsoft.RecoveryServices/vaults/backupConfig/.bicep/nested_cuaId.bicep @@ -0,0 +1 @@ + diff --git a/arm/Microsoft.RecoveryServices/vaults/backupConfig/deploy.bicep b/arm/Microsoft.RecoveryServices/vaults/backupConfig/deploy.bicep new file mode 100644 index 0000000000..aaa8464dc0 --- /dev/null +++ b/arm/Microsoft.RecoveryServices/vaults/backupConfig/deploy.bicep @@ -0,0 +1,81 @@ +@description('Required. Name of the Azure Recovery Service Vault') +param recoveryVaultName string + +@description('Optional. Name of the Azure Recovery Service Vault Backup Policy') +param name string = 'vaultconfig' + +@description('Optional. Enable this setting to protect hybrid backups against accidental deletes and add additional layer of authentication for critical operations.') +@allowed([ + 'Disabled' + 'Enabled' +]) +param enhancedSecurityState string = 'Enabled' + +@description('Optional. ResourceGuard Operation Requests') +param resourceGuardOperationRequests array = [] + +@description('Optional. Enable this setting to protect backup data for Azure VM, SQL Server in Azure VM and SAP HANA in Azure VM from accidental deletes') +@allowed([ + 'Disabled' + 'Enabled' +]) +param softDeleteFeatureState string = 'Enabled' + +@description('Optional. Storage type') +@allowed([ + 'GeoRedundant' + 'LocallyRedundant' + 'ReadAccessGeoZoneRedundant' + 'ZoneRedundant' +]) +param storageModelType string = 'GeoRedundant' + +@description('Optional. Storage type') +@allowed([ + 'GeoRedundant' + 'LocallyRedundant' + 'ReadAccessGeoZoneRedundant' + 'ZoneRedundant' +]) +param storageType string = 'GeoRedundant' + +@description('Optional. Once a machine is registered against a resource, the storageTypeState is always Locked.') +@allowed([ + 'Locked' + 'Unlocked' +]) +param storageTypeState string = 'Locked' + +@description('Optional. Customer Usage Attribution ID (GUID). This GUID must be previously registered') +param cuaId string = '' + +module pid_cuaId './.bicep/nested_cuaId.bicep' = if (!empty(cuaId)) { + name: 'pid-${cuaId}' + params: {} +} + +resource rsv 'Microsoft.RecoveryServices/vaults@2021-08-01' existing = { + name: recoveryVaultName +} + +resource backupConfig 'Microsoft.RecoveryServices/vaults/backupconfig@2021-08-01' = { + name: name + parent: rsv + properties: { + enhancedSecurityState: enhancedSecurityState + resourceGuardOperationRequests: resourceGuardOperationRequests + softDeleteFeatureState: softDeleteFeatureState + storageModelType: storageModelType + storageType: storageType + storageTypeState: storageTypeState + } +} + +@description('The name of the backup config') +output backupConfigName string = backupConfig.name + +@description('The resource ID of the backup config') +output backupConfigResourceId string = backupConfig.id + +@description('The name of the resource group the backup config was created in.') +output backupConfigResourceGroup string = resourceGroup().name diff --git a/arm/Microsoft.RecoveryServices/vaults/backupConfig/readme.md b/arm/Microsoft.RecoveryServices/vaults/backupConfig/readme.md new file mode 100644 index 0000000000..530d35af21 --- /dev/null +++ b/arm/Microsoft.RecoveryServices/vaults/backupConfig/readme.md @@ -0,0 +1,35 @@ +# Recovery Services Vault Backup Config `[Microsoft.RecoveryServices/vaults/backupconfig]` + +This module deploys recovery services vault backup config. + +## Resource Types + +| Resource Type | API Version | +| :-- | :-- | +| `Microsoft.RecoveryServices/vaults/backupconfig` | 2021-08-01 | + +## Parameters + +| Parameter Name | Type | Default Value | Possible Values | Description | +| :-- | :-- | :-- | :-- | :-- | +| `cuaId` | string | | | Optional. Customer Usage Attribution ID (GUID). This GUID must be previously registered | +| `enhancedSecurityState` | string | `Enabled` | `[Disabled, Enabled]` | Optional. Enable this setting to protect hybrid backups against accidental deletes and add additional layer of authentication for critical operations. | +| `name` | string | `vaultconfig` | | Optional. Name of the Azure Recovery Service Vault Backup Policy | +| `recoveryVaultName` | string | | | Required. Name of the Azure Recovery Service Vault | +| `resourceGuardOperationRequests` | array | `[]` | | Optional. ResourceGuard Operation Requests | +| `softDeleteFeatureState` | string | `Enabled` | `[Disabled, Enabled]` | Optional. Enable this setting to protect backup data for Azure VM, SQL Server in Azure VM and SAP HANA in Azure VM from accidental deletes | +| `storageModelType` | string | `GeoRedundant` | `[GeoRedundant, LocallyRedundant, ReadAccessGeoZoneRedundant, ZoneRedundant]` | Optional. Storage type | +| `storageType` | string | `GeoRedundant` | `[GeoRedundant, LocallyRedundant, ReadAccessGeoZoneRedundant, ZoneRedundant]` | Optional. Storage type | +| `storageTypeState` | string | `Locked` | `[Locked, Unlocked]` | Optional. Once a machine is registered against a resource, the storageTypeState is always Locked. | + +## Outputs + +| Output Name | Type | Description | +| :-- | :-- | :-- | +| `backupConfigName` | string | The name of the backup config | +| `backupConfigResourceGroup` | string | The name of the resource group the backup config was created in. | +| `backupConfigResourceId` | string | The resource ID of the backup config | + +## Template references + +- [Vaults/Backupconfig](https://docs.microsoft.com/en-us/azure/templates/Microsoft.RecoveryServices/2021-08-01/vaults/backupconfig) diff --git a/arm/Microsoft.RecoveryServices/vaults/backupPolicies/deploy.bicep b/arm/Microsoft.RecoveryServices/vaults/backupPolicies/deploy.bicep index 60596e5caf..de18d25358 100644 --- a/arm/Microsoft.RecoveryServices/vaults/backupPolicies/deploy.bicep +++ b/arm/Microsoft.RecoveryServices/vaults/backupPolicies/deploy.bicep @@ -1,5 +1,4 @@ @description('Required. Name of the Azure Recovery Service Vault') -@minLength(1) param recoveryVaultName string @description('Required. Name of the Azure Recovery Service Vault Backup Policy') @@ -29,8 +28,8 @@ resource backupPolicy 'Microsoft.RecoveryServices/vaults/backupPolicies@2021-08- @description('The name of the backup policy') output backupPolicyName string = backupPolicy.name -@description('The Resource ID of the backup policy') +@description('The resource ID of the backup policy') output backupPolicyResourceId string = backupPolicy.id -@description('The name of the Resource Group the backup policy was created in.') +@description('The name of the resource group the backup policy was created in.') output backupPolicyResourceGroup string = resourceGroup().name diff --git a/arm/Microsoft.RecoveryServices/vaults/backupPolicies/readme.md b/arm/Microsoft.RecoveryServices/vaults/backupPolicies/readme.md index 781229bbad..237b87fbfd 100644 --- a/arm/Microsoft.RecoveryServices/vaults/backupPolicies/readme.md +++ b/arm/Microsoft.RecoveryServices/vaults/backupPolicies/readme.md @@ -110,8 +110,8 @@ Object continaining the configuration for backup policies. It needs to be proper | Output Name | Type | Description | | :-- | :-- | :-- | | `backupPolicyName` | string | The name of the backup policy | -| `backupPolicyResourceGroup` | string | The name of the Resource Group the backup policy was created in. | -| `backupPolicyResourceId` | string | The Resource ID of the backup policy | +| `backupPolicyResourceGroup` | string | The name of the resource group the backup policy was created in. | +| `backupPolicyResourceId` | string | The resource ID of the backup policy | ## Template references diff --git a/arm/Microsoft.RecoveryServices/vaults/backupStorageConfig/deploy.bicep b/arm/Microsoft.RecoveryServices/vaults/backupStorageConfig/deploy.bicep index a22171776d..f8fa588a87 100644 --- a/arm/Microsoft.RecoveryServices/vaults/backupStorageConfig/deploy.bicep +++ b/arm/Microsoft.RecoveryServices/vaults/backupStorageConfig/deploy.bicep @@ -1,5 +1,4 @@ @description('Required. Name of the Azure Recovery Service Vault') -@minLength(1) param recoveryVaultName string @description('Optional. The name of the backup storage config') diff --git a/arm/Microsoft.RecoveryServices/vaults/deploy.bicep b/arm/Microsoft.RecoveryServices/vaults/deploy.bicep index 8ec2d1e4e7..866f57ad00 100644 --- a/arm/Microsoft.RecoveryServices/vaults/deploy.bicep +++ b/arm/Microsoft.RecoveryServices/vaults/deploy.bicep @@ -1,5 +1,4 @@ @description('Required. Name of the Azure Recovery Service Vault') -@minLength(1) param name string @description('Optional. The storage configuration for the Azure Recovery Service Vault') @@ -14,6 +13,9 @@ param location string = resourceGroup().location @description('Optional. List of all backup policies.') param backupPolicies array = [] +@description('Optional. The backup configuration.') +param backupConfig object = {} + @description('Optional. List of all protection containers.') @minLength(0) param protectionContainers array = [] @@ -170,6 +172,20 @@ module rsv_backupPolicies 'backupPolicies/deploy.bicep' = [for (backupPolicy, in } }] +module rsv_backupConfig 'backupConfig/deploy.bicep' = if (!empty(backupConfig)) { + name: '${uniqueString(deployment().name, location)}-RSV-BackupConfig' + params: { + recoveryVaultName: rsv.name + name: contains(backupConfig, 'name') ? backupConfig.name : 'vaultconfig' + enhancedSecurityState: contains(backupConfig, 'enhancedSecurityState') ? backupConfig.enhancedSecurityState : 'Enabled' + resourceGuardOperationRequests: contains(backupConfig, 'resourceGuardOperationRequests') ? backupConfig.resourceGuardOperationRequests : [] + softDeleteFeatureState: contains(backupConfig, 'softDeleteFeatureState') ? backupConfig.softDeleteFeatureState : 'Enabled' + storageModelType: contains(backupConfig, 'storageModelType') ? backupConfig.storageModelType : 'GeoRedundant' + storageType: contains(backupConfig, 'storageType') ? backupConfig.storageType : 'GeoRedundant' + storageTypeState: contains(backupConfig, 'storageTypeState') ? backupConfig.storageTypeState : 'Locked' + } +} + resource rsv_lock 'Microsoft.Authorization/locks@2016-09-01' = if (lock != 'NotSpecified') { name: '${rsv.name}-${lock}-lock' properties: { @@ -201,13 +217,13 @@ module rsv_rbac '.bicep/nested_rbac.bicep' = [for (roleAssignment, index) in rol } }] -@description('The resource ID of the Recovery Services Vault') +@description('The resource ID of the recovery services vault') output recoveryServicesVaultResourceId string = rsv.id -@description('The name of the Resource Group the Recovery Services Vault was created in') +@description('The name of the resource group the recovery services vault was created in') output recoveryServicesVaultResourceGroup string = resourceGroup().name -@description('The Name of the Recovery Services Vault') +@description('The Name of the recovery services vault') output recoveryServicesVaultName string = rsv.name @description('The principal ID of the system assigned identity.') diff --git a/arm/Microsoft.RecoveryServices/vaults/protectionContainers/deploy.bicep b/arm/Microsoft.RecoveryServices/vaults/protectionContainers/deploy.bicep index 5ba15da6e3..36d5c8aa0b 100644 --- a/arm/Microsoft.RecoveryServices/vaults/protectionContainers/deploy.bicep +++ b/arm/Microsoft.RecoveryServices/vaults/protectionContainers/deploy.bicep @@ -1,5 +1,4 @@ @description('Required. Name of the Azure Recovery Service Vault') -@minLength(1) param recoveryVaultName string @description('Required. Name of the Azure Recovery Service Vault Protection Container') diff --git a/arm/Microsoft.RecoveryServices/vaults/readme.md b/arm/Microsoft.RecoveryServices/vaults/readme.md index bef829c61f..78c7dfd2fd 100644 --- a/arm/Microsoft.RecoveryServices/vaults/readme.md +++ b/arm/Microsoft.RecoveryServices/vaults/readme.md @@ -10,6 +10,7 @@ This module deploys a recovery service vault. | `Microsoft.Authorization/roleAssignments` | 2020-04-01-preview | | `Microsoft.Insights/diagnosticSettings` | 2021-05-01-preview | | `Microsoft.RecoveryServices/vaults` | 2021-08-01 | +| `Microsoft.RecoveryServices/vaults/backupconfig` | 2021-08-01 | | `Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers` | 2021-08-01 | | `Microsoft.RecoveryServices/vaults/backupPolicies` | 2021-08-01 | | `Microsoft.RecoveryServices/vaults/backupstorageconfig` | 2021-08-01 | @@ -18,6 +19,7 @@ This module deploys a recovery service vault. | Parameter Name | Type | Default Value | Possible Values | Description | | :-- | :-- | :-- | :-- | :-- | +| `backupConfig` | _[backupConfig](backupConfig/readme.md)_ object | `{object}` | | Optional. The backup configuration. | | `backupPolicies` | _[backupPolicies](backupPolicies/readme.md)_ array | `[]` | | Optional. List of all backup policies. | | `backupStorageConfig` | _[backupStorageConfig](backupStorageConfig/readme.md)_ object | `{object}` | | Optional. The storage configuration for the Azure Recovery Service Vault | | `cuaId` | string | | | Optional. Customer Usage Attribution ID (GUID). This GUID must be previously registered | @@ -346,9 +348,9 @@ You can specify multiple user assigned identities to a resource by providing add | Output Name | Type | Description | | :-- | :-- | :-- | -| `recoveryServicesVaultName` | string | The Name of the Recovery Services Vault | -| `recoveryServicesVaultResourceGroup` | string | The name of the Resource Group the Recovery Services Vault was created in | -| `recoveryServicesVaultResourceId` | string | The resource ID of the Recovery Services Vault | +| `recoveryServicesVaultName` | string | The Name of the recovery services vault | +| `recoveryServicesVaultResourceGroup` | string | The name of the resource group the recovery services vault was created in | +| `recoveryServicesVaultResourceId` | string | The resource ID of the recovery services vault | | `systemAssignedPrincipalId` | string | The principal ID of the system assigned identity. | ## Template references @@ -357,6 +359,7 @@ You can specify multiple user assigned identities to a resource by providing add - [Roleassignments](https://docs.microsoft.com/en-us/azure/templates/Microsoft.Authorization/2020-04-01-preview/roleAssignments) - [Diagnosticsettings](https://docs.microsoft.com/en-us/azure/templates/Microsoft.Insights/2021-05-01-preview/diagnosticSettings) - [Vaults](https://docs.microsoft.com/en-us/azure/templates/Microsoft.RecoveryServices/2021-08-01/vaults) +- [Vaults/Backupconfig](https://docs.microsoft.com/en-us/azure/templates/Microsoft.RecoveryServices/2021-08-01/vaults/backupconfig) - [Vaults/Backupfabrics/Protectioncontainers](https://docs.microsoft.com/en-us/azure/templates/Microsoft.RecoveryServices/2021-08-01/vaults/backupFabrics/protectionContainers) - [Vaults/Backuppolicies](https://docs.microsoft.com/en-us/azure/templates/Microsoft.RecoveryServices/2021-08-01/vaults/backupPolicies) - [Vaults/Backupstorageconfig](https://docs.microsoft.com/en-us/azure/templates/Microsoft.RecoveryServices/2021-08-01/vaults/backupstorageconfig) From 759e7838729053c1a7897fc164778025148cf593 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:07:43 +1100 Subject: [PATCH 40/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 75ec6283bd..f8a574c82f 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 2f27b156255fab3d281ea04f6930237ae263f57f Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:08:30 +1100 Subject: [PATCH 41/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index f8a574c82f..cbddc86cfe 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: [pull_request] +on: workflow_dispatch jobs: build: From 9e44d40f5682570aa641232880b0d097a3ac2649 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:09:50 +1100 Subject: [PATCH 42/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index cbddc86cfe..f8a574c82f 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: workflow_dispatch +on: [pull_request] jobs: build: From 597d0155eb3eae1b24998b77c1b5d31d53d5751b Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:19:52 +1100 Subject: [PATCH 43/65] Users/ahmad/links (#9) --- .github/workflows/linter.yml | 2 +- docs/wiki/ModulesDesign.md | 2 +- docs/wiki/TestingDesign.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 75ec6283bd..f8a574c82f 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/docs/wiki/ModulesDesign.md b/docs/wiki/ModulesDesign.md index 273caa453e..7d88f95b4d 100644 --- a/docs/wiki/ModulesDesign.md +++ b/docs/wiki/ModulesDesign.md @@ -144,7 +144,7 @@ Microsoft.Sql In this folder we recommend to place the child-resource-template alongside a ReadMe (that can be generated via the `.github\workflows\scripts\Set-ModuleReadMe.ps1` script) and optionally further nest additional folders for it's child-resources. -The parent template should reference all it's direct child-templates to allow for an end to end deployment experience while allowing any user to also reference 'just' the child-resource itself. In the case of the SQL-server example the server template would reference the database module and encapsulate it it in a loop to allow for the deployment of n-amount of databases. For example +The parent template should reference all it's direct child-templates to allow for an end-to-end deployment experience while allowing any user to also reference 'just' the child-resource itself. In the case of the SQL-server example the server template would reference the database module and encapsulate it it in a loop to allow for the deployment of n-amount of databases. For example ```Bicep @description('Optional. The databases to create in the server') diff --git a/docs/wiki/TestingDesign.md b/docs/wiki/TestingDesign.md index 33eccf42f8..2dcea11bc3 100644 --- a/docs/wiki/TestingDesign.md +++ b/docs/wiki/TestingDesign.md @@ -81,7 +81,7 @@ The template validation tests execute a dry-run with each parameter file provide # Deployment validation -If all other tests passed, the deployment tests are the ultimate module validation. Using the available & configured parameter files for a module, each is deployed to Azure (in parallel) and verifies if the deployment works end to end. +If all other tests passed, the deployment tests are the ultimate module validation. Using the available & configured parameter files for a module, each is deployed to Azure (in parallel) and verifies if the deployment works end-to-end. Most of the resources are deleted by default after their deployment, to keep costs down and to be able to retest resource modules from scratch in the next run. However, the removal step can be skipped in case further investigation on the deployed resource is needed. For further details, please refer to the (./PipelinesUsage) section. From 1696db515314b0d8bd6a78ced5def8124020c717 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:38:33 +1100 Subject: [PATCH 44/65] test --- .github/workflows/linter.yml | 2 +- docs/wiki/ModulesDesign.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index f8a574c82f..ba6924ea6b 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress /docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/docs/wiki/ModulesDesign.md b/docs/wiki/ModulesDesign.md index 7d88f95b4d..67b87ab93e 100644 --- a/docs/wiki/ModulesDesign.md +++ b/docs/wiki/ModulesDesign.md @@ -476,7 +476,7 @@ Within a bicep file, follow the following conventions: ``` - Bicep `modules`: - camel_Snake_Case, i.e `resourceGroup_rbac` ? - - File name for nested module is structured as follows: `nested_.bicep` i.e: + - Filename for nested module is structured as follows: `nested_.bicep` i.e: - `nested_rbac.bicep` @@ -493,7 +493,7 @@ Within a bicep file, follow the following conventions: # ReadMe -Each module must come with a ReadMe markdown file that outlines what the module contains and 'how' it can be used. +Each module must come with a ReadMe Markdown file that outlines what the module contains and 'how' it can be used. It primary components are - A title with a reference to the primary resource (for example KeyVault `[Microsoft.KeyVault/vaults]`) - A description From dd6ed2b8b2112995902cbceccee35470aa15a4aa Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:40:49 +1100 Subject: [PATCH 45/65] Users/ahmad/links (#10) --- .github/workflows/linter.yml | 2 +- docs/wiki/ModulesDesign.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index f8a574c82f..ba6924ea6b 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress /docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/docs/wiki/ModulesDesign.md b/docs/wiki/ModulesDesign.md index 7d88f95b4d..67b87ab93e 100644 --- a/docs/wiki/ModulesDesign.md +++ b/docs/wiki/ModulesDesign.md @@ -476,7 +476,7 @@ Within a bicep file, follow the following conventions: ``` - Bicep `modules`: - camel_Snake_Case, i.e `resourceGroup_rbac` ? - - File name for nested module is structured as follows: `nested_.bicep` i.e: + - Filename for nested module is structured as follows: `nested_.bicep` i.e: - `nested_rbac.bicep` @@ -493,7 +493,7 @@ Within a bicep file, follow the following conventions: # ReadMe -Each module must come with a ReadMe markdown file that outlines what the module contains and 'how' it can be used. +Each module must come with a ReadMe Markdown file that outlines what the module contains and 'how' it can be used. It primary components are - A title with a reference to the primary resource (for example KeyVault `[Microsoft.KeyVault/vaults]`) - A description From c4b5833c7439166dafa62defbf03b32588eb09f3 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:43:32 +1100 Subject: [PATCH 46/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index ba6924ea6b..08f71dbb2e 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress /docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress **/docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 17746f8f57c5b064544ec7e8f13fa7c3ef3eebae Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 10:44:10 +1100 Subject: [PATCH 47/65] Users/ahmad/links (#11) --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index ba6924ea6b..08f71dbb2e 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress /docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress **/docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 1c45261770212b4bc60338bfc69a726455da4a28 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 11:22:05 +1100 Subject: [PATCH 48/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 08f71dbb2e..c372e406e9 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress ~/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 6801c5347c0d242e910ac5c1d21ec588e24f4217 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 11:22:38 +1100 Subject: [PATCH 49/65] Users/ahmad/links (#12) \ --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 08f71dbb2e..c372e406e9 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/docs/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress ~/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From ba07cd096cae4ea348c7f75f2d6034fe9f9183ff Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 11:25:37 +1100 Subject: [PATCH 50/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index c372e406e9..564608717c 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress ~/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress **/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From b7ec288273dbd034e993349ea4088a114d5f0946 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 11:26:01 +1100 Subject: [PATCH 51/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 564608717c..a8b6ef1d96 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: [pull_request] +on: workflow_dispatch jobs: build: From 6e64eafcf06e76d64dfcfa8690b44e55dd8a1510 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 11:27:05 +1100 Subject: [PATCH 52/65] Users/ahmad/links (#13) --- .github/workflows/linter.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index c372e406e9..a8b6ef1d96 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,6 +1,6 @@ name: '.Platform: Linter' -on: [pull_request] +on: workflow_dispatch jobs: build: @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress ~/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress **/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From d5b51a46fd91d276f8b6f5660d94fb263e83562a Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 11:47:45 +1100 Subject: [PATCH 53/65] test --- .github/workflows/linter.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index a8b6ef1d96..3c65b668d6 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -40,3 +40,13 @@ jobs: - name: Link Checker Results if: always() run: exit ${{ steps.checker.outputs.exit_code }} + + - name: Link Checker 2 + if: always() + id: checker2 + uses: gaurav-nelson/github-action-markdown-link-check@v1 + with: + use-quiet-mode: 'yes' + use-verbose-mode: 'yes' + folder-path: 'docs' + max-depth: 3 From e4a60b982efc5f0d2243d35a79336c265099e033 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 11:59:05 +1100 Subject: [PATCH 54/65] test --- .github/workflows/linter.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 3c65b668d6..30dfbeb1db 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -41,6 +41,9 @@ jobs: if: always() run: exit ${{ steps.checker.outputs.exit_code }} + - name: 'Checkout2' + uses: actions/checkout@v2 + - name: Link Checker 2 if: always() id: checker2 From 03c4e8a40f0b6d4ab2734a6d190ddad85292467f Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 12:01:33 +1100 Subject: [PATCH 55/65] test --- .github/workflows/linter.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 30dfbeb1db..3a8870719c 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -42,6 +42,7 @@ jobs: run: exit ${{ steps.checker.outputs.exit_code }} - name: 'Checkout2' + if: always() uses: actions/checkout@v2 - name: Link Checker 2 From 4e488497234ed427533a21f6fe73843f25fc4717 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 14:49:50 +1100 Subject: [PATCH 56/65] test --- .github/workflows/linter.yml | 28 ++++++++++++++-------------- .lycheeignore | 1 - 2 files changed, 14 insertions(+), 15 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 3a8870719c..b1a49f943c 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 + args: --verbose --no-progress **/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 --base env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} @@ -41,16 +41,16 @@ jobs: if: always() run: exit ${{ steps.checker.outputs.exit_code }} - - name: 'Checkout2' - if: always() - uses: actions/checkout@v2 - - - name: Link Checker 2 - if: always() - id: checker2 - uses: gaurav-nelson/github-action-markdown-link-check@v1 - with: - use-quiet-mode: 'yes' - use-verbose-mode: 'yes' - folder-path: 'docs' - max-depth: 3 + #- name: 'Checkout2' + # if: always() + # uses: actions/checkout@v2 +# +#- name: Link Checker 2 +# if: always() +# id: checker2 +# uses: gaurav-nelson/github-action-markdown-link-check@v1 +# with: +# use-quiet-mode: 'yes' +# use-verbose-mode: 'yes' +# folder-path: 'docs' +# max-depth: 3 diff --git a/.lycheeignore b/.lycheeignore index 62214a16db..3695bf274b 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -1,5 +1,4 @@ https://foo.psd1/ -file:///github https://mystorageaccount.blob.core.windows.net https://mykeyvault.vault.azure.net https://www.powershellgallery.com From 62a6ec080edabafc2952fb9f501b63c0a86f9c98 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 14:53:01 +1100 Subject: [PATCH 57/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index b1a49f943c..85646ec98e 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 --base + args: --verbose --no-progress **/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 --base /github/workspace env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 83c00ae21630cb49e6622c1f13ba1443d8f73056 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 15:09:57 +1100 Subject: [PATCH 58/65] test --- docs/wiki/Context.md | 2 +- docs/wiki/ContributionGuide.md | 4 ++-- docs/wiki/Home.md | 30 +++++++++++++++--------------- docs/wiki/Modules.md | 14 +++++++------- docs/wiki/ParameterFileTokens.md | 2 +- docs/wiki/PipelinesUsage.md | 2 +- docs/wiki/_Sidebar.md | 6 +++--- 7 files changed, 30 insertions(+), 30 deletions(-) diff --git a/docs/wiki/Context.md b/docs/wiki/Context.md index 281bb43f13..881d53a236 100644 --- a/docs/wiki/Context.md +++ b/docs/wiki/Context.md @@ -128,4 +128,4 @@ As such, _CARML_ covers the `bottom box` of the [deployment model](#what-is-the- Complete deployment flow filtered -As we want to enable any user of this repository's content to not only leverage its modules but actually also re-use the platform, the platform itself is set up so that you can plug it into your own environment with just a few basic steps described in the [Getting Started](./GettingStarted) section. You may choose to add or remove modules, define your own locations you want to publish to and as such create your own open- or inner-source library. +As we want to enable any user of this repository's content to not only leverage its modules but actually also re-use the platform, the platform itself is set up so that you can plug it into your own environment with just a few basic steps described in the [Getting Started](./GettingStarted.md) section. You may choose to add or remove modules, define your own locations you want to publish to and as such create your own open- or inner-source library. diff --git a/docs/wiki/ContributionGuide.md b/docs/wiki/ContributionGuide.md index b54a1600d2..10f6ea5760 100644 --- a/docs/wiki/ContributionGuide.md +++ b/docs/wiki/ContributionGuide.md @@ -13,13 +13,13 @@ This section outlines how you can contribute to the repository. # Set your environment up -The preferred method of contribution requires you to create your own fork and create pull requests into the source repository from there. To set the fork up, please follow the process described in the ['Getting Started'](./GettingStarted#Option-1-Use-it-as-a-basis-to-set-up-your-own-inner-source-project) section. +The preferred method of contribution requires you to create your own fork and create pull requests into the source repository from there. To set the fork up, please follow the process described in the ['Getting Started'](./GettingStarted.md#Option-1-Use-it-as-a-basis-to-set-up-your-own-inner-source-project) section. # How to contribute? You can contribute to the Wiki in different ways depending on your own interests, bugs you see or IP you want to add. -For starters it is highly recommended to consult and understand the ['Modules Design'](./ModulesDesign) section of the wiki. +For starters it is highly recommended to consult and understand the ['Modules Design'](./ModulesDesign.md) section of the wiki. How you proceed from here depends on your particular situation: diff --git a/docs/wiki/Home.md b/docs/wiki/Home.md index c900a946b7..c514018922 100644 --- a/docs/wiki/Home.md +++ b/docs/wiki/Home.md @@ -8,23 +8,23 @@ If you're unfamiliar with Infrastructure as Code, or wonder how you can use the ### _Navigation_ -- [Context](./Context) +- [Context](./Context.md) - [Infrastructure as Code](./Context#infrastructure-as-code-iac) - - [Where does this platform fit in?](./Context#where-does-this-platform-fit-in) -- [Getting Started](./GettingStarted) - - [General prerequisites](./GettingStarted#General-prerequisites) - - [Where to start](./GettingStarted#Where-to-start) -- [Modules](./Modules) - - [Design](./ModulesDesign) - - [Usage](./ModulesUsage) -- [Testing](./Testing) - - [Design](./TestingDesign) - - [Usage](./TestingUsage) + - [Where does this platform fit in?](./Context#where-does-this-platform-fit-in.md) +- [Getting Started](./GettingStarted.md.md) + - [General prerequisites](./GettingStarted.md#General-prerequisites.md) + - [Where to start](./GettingStarted.md#Where-to-start.md) +- [Modules](./Modules.md) + - [Design](./ModulesDesign.md) + - [Usage](./ModulesUsage.md) +- [Testing](./Testing.md) + - [Design](./TestingDesign.md) + - [Usage](./TestingUsage.md) - [Pipelines](./Pipelines) - - [Design](./PipelinesDesign) - - [Usage](./PipelinesUsage) -- [Contribution Guide](./ContributionGuide) -- [Known Issues](./KnownIssues) + - [Design](./PipelinesDesign.md) + - [Usage](./PipelinesUsage.md) +- [Contribution Guide](./ContributionGuide.md) +- [Known Issues](./KnownIssues.md) # Scope diff --git a/docs/wiki/Modules.md b/docs/wiki/Modules.md index 8f47239754..2b0bbad7d8 100644 --- a/docs/wiki/Modules.md +++ b/docs/wiki/Modules.md @@ -6,12 +6,12 @@ This section and its sub-sections give you an overview of the principals the mod ### _Navigation_ -- [Module Design](./ModulesDesign) - - [General guidelines](./ModulesDesign#general-guidelines) - - [File & folder structure](./ModulesDesign#file--folder-structure) - - [Bicep template guidelines](./ModulesDesign#bicep-template-guidelines) -- [Module Usage](./ModulesUsage) - - [Deploy local template](./ModulesUsage#deploy-local-template) - - [Deploy remote template](./ModulesUsage#deploy-remote-template) +- [Module Design](./ModulesDesign.md) + - [General guidelines](./ModulesDesign.md#general-guidelines) + - [File & folder structure](./ModulesDesign.md#file--folder-structure) + - [Bicep template guidelines](./ModulesDesign.md#bicep-template-guidelines) +- [Module Usage](./ModulesUsage.md) + - [Deploy local template](./ModulesUsage.md#deploy-local-template) + - [Deploy remote template](./ModulesUsage.md#deploy-remote-template) --- diff --git a/docs/wiki/ParameterFileTokens.md b/docs/wiki/ParameterFileTokens.md index 12523b7acc..2004a2576b 100644 --- a/docs/wiki/ParameterFileTokens.md +++ b/docs/wiki/ParameterFileTokens.md @@ -30,7 +30,7 @@ There are (2) Token types that can be applied on a Parameter File: #### 1. Default Tokens (Environment Variables) [Default] -These are tokens constructed from Environment Variables, which are defined in the Workflow (Pipeline). Review [Getting Started - GitHub specific prerequisites](./GettingStarted) for more information on these Environment Variables. +These are tokens constructed from Environment Variables, which are defined in the Workflow (Pipeline). Review [Getting Started - GitHub specific prerequisites](./GettingStarted.md) for more information on these Environment Variables. #### 2. Local Custom Tokens (Source Control) [Optional] diff --git a/docs/wiki/PipelinesUsage.md b/docs/wiki/PipelinesUsage.md index 45e652c650..552e82f8de 100644 --- a/docs/wiki/PipelinesUsage.md +++ b/docs/wiki/PipelinesUsage.md @@ -57,7 +57,7 @@ As described previously, the dependency pipeline must be triggered manually and Triggering the pipeline is as easy as navigating to it in your corresponding DevOps tool and running the pipeline. No additional steps or input parameters are required. -> **Note:** While operating the dependency pipeline is simple, make sure to set it up in the way it is described [here](./GettingStarted#Dependencies). Especially the globally unique names must be accounted for, before executing the pipeline. +> **Note:** While operating the dependency pipeline is simple, make sure to set it up in the way it is described [here](./GettingStarted.md#Dependencies). Especially the globally unique names must be accounted for, before executing the pipeline. Depending on what you want to test in your module pipeline, you may want to add additional dependencies to your dependency pipeline. If so, make sure to add an additional parameter file for each service you require under `utilities/pipelines/dependencies`. Once done, you just need to add the deployment to the pipeline itself in the correct location in the pipeline. The different deployment waves are documented [here](./TestingDesign#module-dependencies). The implementation depends on the [DevOps tool](#devops-tool-specific-considerations) you're using. diff --git a/docs/wiki/_Sidebar.md b/docs/wiki/_Sidebar.md index 93fb2cee55..522a5bd323 100644 --- a/docs/wiki/_Sidebar.md +++ b/docs/wiki/_Sidebar.md @@ -2,10 +2,10 @@ - [Home](./Home) - [Context](./Context) -- [Getting Started](./GettingStarted) +- [Getting Started](./GettingStarted.md) - [Modules](./Modules) - - [Design](./ModulesDesign) - - [Usage](./ModulesUsage) + - [Design](./ModulesDesign.md) + - [Usage](./ModulesUsage.md) - [Testing](./Testing) - [Design](./TestingDesign) - [Usage](./TestingUsage) From e2af0cba6ac7e0744514bea714aa6a4f574ae679 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 15:29:03 +1100 Subject: [PATCH 59/65] test --- docs/wiki/Context.md | 2 +- docs/wiki/ContributionGuide.md | 2 +- docs/wiki/GettingStarted.md | 4 ++-- docs/wiki/Home.md | 8 ++++---- docs/wiki/Pipelines.md | 4 ++-- docs/wiki/PipelinesDesign.md | 2 +- docs/wiki/PipelinesUsage.md | 18 +++++++++--------- docs/wiki/Testing.md | 12 ++++++------ docs/wiki/TestingDesign.md | 2 +- docs/wiki/TestingUsage.md | 2 +- docs/wiki/_Sidebar.md | 16 ++++++++-------- 11 files changed, 36 insertions(+), 36 deletions(-) diff --git a/docs/wiki/Context.md b/docs/wiki/Context.md index 881d53a236..6414368698 100644 --- a/docs/wiki/Context.md +++ b/docs/wiki/Context.md @@ -122,7 +122,7 @@ The _CARML_ platform hosts a collection of [resource modules](./Modules) with th As such, users can use the modules as they are, alter them and or use them to deploy their environments. -To ensure the modules are valid and can perform the intended deployments, the repository comes with a [validation & test](./Testing) [pipeline](./Pipelines) for each module. If successful it will also publish them in one or multiple target locations. +To ensure the modules are valid and can perform the intended deployments, the repository comes with a [validation & test](./Testing) [pipeline](./Pipelines.md) for each module. If successful it will also publish them in one or multiple target locations. As such, _CARML_ covers the `bottom box` of the [deployment model](#what-is-the-intended-the-deployment-model) section and `Phase #1` & `Phase #2` of the [deployment flow](#what-is-the-intended-deployment-flow) section. diff --git a/docs/wiki/ContributionGuide.md b/docs/wiki/ContributionGuide.md index 10f6ea5760..89fe8ee014 100644 --- a/docs/wiki/ContributionGuide.md +++ b/docs/wiki/ContributionGuide.md @@ -36,4 +36,4 @@ To contribute to the modules, set your environment up, test the updated/added mo Status Badge -Please make sure to set your environment up and also consult the ['Pipeline Design'](./PipelinesDesign) and ['Pipeline Usage'](.\PipelinesUsage) sections. +Please make sure to set your environment up and also consult the ['Pipeline Design'](./PipelinesDesign.md) and ['Pipeline Usage'](.\PipelinesUsage) sections. diff --git a/docs/wiki/GettingStarted.md b/docs/wiki/GettingStarted.md index 36e3896863..5c319e5c35 100644 --- a/docs/wiki/GettingStarted.md +++ b/docs/wiki/GettingStarted.md @@ -173,7 +173,7 @@ In case you would like to simply contribute because you, for example, want to ad ## Parameter File Tokens -If you are forking or cloning the repository, you can use 'tokens' inside your parameter files. Tokens allow you to test deploying modules in your own environment (i.e. using tokens for your naming conventions), or apply other customizations to your resources (i.e. using your own subscription ID inside a Resource ID string). See details in the [Parameter File Tokens Design](./ParameterFileTokens). +If you are forking or cloning the repository, you can use 'tokens' inside your parameter files. Tokens allow you to test deploying modules in your own environment (i.e. using tokens for your naming conventions), or apply other customizations to your resources (i.e. using your own subscription ID inside a Resource ID string). See details in the [Parameter File Tokens Design](./ParameterFileTokens.md). The repository contains a [Settings.json](https://github.com/Azure/ResourceModules/blob/main/settings.json) that enables you to define local tokens and store them in source control. The token format is a `name` and `value` pair as shown in the following example: @@ -211,7 +211,7 @@ Note: There are default tokens that can be enabled on any resource that leverage - `<>`: Will point to the Service Principal ID used for deployments. - `<>`: Will point to the Azure Resource Group where the resources are being deployed to. (This isn't defined in the secrets section but is injected at runtime) -Review [Parameter File Tokens Design](./ParameterFileTokens.md) for more details. +Review [Parameter File Tokens Design](./ParameterFileTokens.md.md) for more details. --- diff --git a/docs/wiki/Home.md b/docs/wiki/Home.md index c514018922..c3ba4b818d 100644 --- a/docs/wiki/Home.md +++ b/docs/wiki/Home.md @@ -20,9 +20,9 @@ If you're unfamiliar with Infrastructure as Code, or wonder how you can use the - [Testing](./Testing.md) - [Design](./TestingDesign.md) - [Usage](./TestingUsage.md) -- [Pipelines](./Pipelines) - - [Design](./PipelinesDesign.md) - - [Usage](./PipelinesUsage.md) +- [Pipelines](./Pipelines.md) + - [Design](./PipelinesDesign.md.md) + - [Usage](./PipelinesUsage.md.md) - [Contribution Guide](./ContributionGuide.md) - [Known Issues](./KnownIssues.md) @@ -33,7 +33,7 @@ Following you can find an abstract overview of everything in- and out-of-scope o ## In Scope - **Modules:** Rich library of resource modules - the foundation for workload or entire environments deployments - **Platform:** Pipelines to validate modules & publish to those that pass to a location of your choice. Available with GitHub Workflows. -- **Documentation:** A rich documentation of best practices on [module](./Modules) design, the [platforms](./Context) and its [context](./Context), [testing](./Testing) and [pipelines](./Pipelines) +- **Documentation:** A rich documentation of best practices on [module](./Modules) design, the [platforms](./Context) and its [context](./Context), [testing](./Testing) and [pipelines](./Pipelines.md) ## Out of Scope - **Orchestration:** Orchestrated solutions such as workloads or entire environments intended for production environments diff --git a/docs/wiki/Pipelines.md b/docs/wiki/Pipelines.md index 5a4a421ec7..540dc80467 100644 --- a/docs/wiki/Pipelines.md +++ b/docs/wiki/Pipelines.md @@ -8,7 +8,7 @@ This section and its sub-sections give you an overview of the principals the pip ### _Navigation_ -- [Pipelines Design](./PipelinesDesign) -- [Pipelines Usage](./PipelinesUsage) +- [Pipelines Design](./PipelinesDesign.md) +- [Pipelines Usage](./PipelinesUsage.md) --- diff --git a/docs/wiki/PipelinesDesign.md b/docs/wiki/PipelinesDesign.md index 87e787d57d..ea582dacd9 100644 --- a/docs/wiki/PipelinesDesign.md +++ b/docs/wiki/PipelinesDesign.md @@ -159,7 +159,7 @@ Dynamic parameters that do not need to be hardcoded in the parameter file, and t For example, some modules require referencing Azure resources with the Resource ID. This ID typically contains the `subscriptionId` in the format of `/subscriptions/<>/...`. This task substitutes the `<>` with the correct value, based on the different token types. -Please review the Parameter File Tokens [Design](./ParameterFileTokens) for more details on the different token types and how you can use them to remove hardcoded values from your parameter files. +Please review the Parameter File Tokens [Design](./ParameterFileTokens.md) for more details on the different token types and how you can use them to remove hardcoded values from your parameter files. --- diff --git a/docs/wiki/PipelinesUsage.md b/docs/wiki/PipelinesUsage.md index 552e82f8de..ae3a84a3cb 100644 --- a/docs/wiki/PipelinesUsage.md +++ b/docs/wiki/PipelinesUsage.md @@ -19,14 +19,14 @@ This section gives you an overview of how to interact with the platform pipeline When working with this platform's pipelines it is important to understand first which pipelines serve which purpose, when they are triggered and how you can use them to test your modules. -As described in the [Pipelines Design](./PipelinesDesign) section we offer the following pipelines: +As described in the [Pipelines Design](./PipelinesDesign.md) section we offer the following pipelines: | Pipeline | Target | Trigger | Notes | | - | - | - | - | -| [Module Pipelines](./PipelinesDesign#module-pipelines) | Module | Changes to [module\|workflow] files in branch [main\|master] or manual | Used to test & publish modules. This is the most common pipeline you will interact with when working on modules. | -| [Dependencies pipeline](./PipelinesDesign#dependencies-pipeline) | All required dependency resources | Manual | Deploys resources we reference in the module tests. Should be run once before testing modules. | -| [ReadMe pipeline](./PipelinesDesign#readme-pipeline) | `README.md` in `` & `/arm` | Changes to [template files] in branch [main\|master] | Keeps the target ReadMe files aligned with the modules in the repository. | -| [Wiki pipeline](./PipelinesDesign#wiki-pipeline) | Wiki | Changes in [docs/wiki] in branch [main\|master] | Keeps the Wiki-repository in sync with the wiki folder in the modules repository | +| [Module Pipelines](./PipelinesDesignmodule-pipelines) | Module | Changes to [module\|workflow] files in branch [main\|master] or manual | Used to test & publish modules. This is the most common pipeline you will interact with when working on modules. | +| [Dependencies pipeline](./PipelinesDesigndependencies-pipeline) | All required dependency resources | Manual | Deploys resources we reference in the module tests. Should be run once before testing modules. | +| [ReadMe pipeline](./PipelinesDesignreadme-pipeline) | `README.md` in `` & `/arm` | Changes to [template files] in branch [main\|master] | Keeps the target ReadMe files aligned with the modules in the repository. | +| [Wiki pipeline](./PipelinesDesignwiki-pipeline) | Wiki | Changes in [docs/wiki] in branch [main\|master] | Keeps the Wiki-repository in sync with the wiki folder in the modules repository | --- @@ -49,7 +49,7 @@ To validate any updates you did to a module template you can perform the followi Once the pipeline concluded, it will either be in a green (success) or red (failed) state, depending on how the module performed. -If you open the pipeline's run, you should be able to investigate the logs and investigate the execution. In case any of the [validation](./PipelinesDesign#Validate) steps failed, the pipeline should give you detailed information of any error. In some cases in which Pester tests failed, you may only see the failed test and need to `expand` the error message. How this looks like depends on the [DevOps platform](#devops-tool-specific-considerations) you use. +If you open the pipeline's run, you should be able to investigate the logs and investigate the execution. In case any of the [validation](./PipelinesDesignValidate) steps failed, the pipeline should give you detailed information of any error. In some cases in which Pester tests failed, you may only see the failed test and need to `expand` the error message. How this looks like depends on the [DevOps platform](#devops-tool-specific-considerations) you use. ## Operate the dependency pipeline @@ -59,11 +59,11 @@ Triggering the pipeline is as easy as navigating to it in your corresponding Dev > **Note:** While operating the dependency pipeline is simple, make sure to set it up in the way it is described [here](./GettingStarted.md#Dependencies). Especially the globally unique names must be accounted for, before executing the pipeline. -Depending on what you want to test in your module pipeline, you may want to add additional dependencies to your dependency pipeline. If so, make sure to add an additional parameter file for each service you require under `utilities/pipelines/dependencies`. Once done, you just need to add the deployment to the pipeline itself in the correct location in the pipeline. The different deployment waves are documented [here](./TestingDesign#module-dependencies). The implementation depends on the [DevOps tool](#devops-tool-specific-considerations) you're using. +Depending on what you want to test in your module pipeline, you may want to add additional dependencies to your dependency pipeline. If so, make sure to add an additional parameter file for each service you require under `utilities/pipelines/dependencies`. Once done, you just need to add the deployment to the pipeline itself in the correct location in the pipeline. The different deployment waves are documented [here](./TestingDesign.md#module-dependencies). The implementation depends on the [DevOps tool](#devops-tool-specific-considerations) you're using. ## Add a new module pipeline -To add a new module pipeline we recommend to create a copy of a currently existing module pipeline and adjust all module-specific properties documented [here](./PipelinesDesign#component-workflows). The registration of the pipeline will differ depending on the DevOps tool you're using. For further information, please review the [DevOps-Tool-specific guidance](#devops-tool-specific-guidance) below. +To add a new module pipeline we recommend to create a copy of a currently existing module pipeline and adjust all module-specific properties documented [here](./PipelinesDesigncomponent-workflows). The registration of the pipeline will differ depending on the DevOps tool you're using. For further information, please review the [DevOps-Tool-specific guidance](#devops-tool-specific-guidance) below. --- @@ -86,7 +86,7 @@ then select the pipeline of your choice from the list on the left, followed by ' Run workflow Depending on the pipeline you selected you may have additional input parameters you can provide aside from the branch: -- [Module pipeline](./TestingDesign#module-pipeline-inputs) inputs +- [Module pipeline](./TestingDesign.md#module-pipeline-inputs) inputs ### Register a pipeline diff --git a/docs/wiki/Testing.md b/docs/wiki/Testing.md index 7383346162..4d9a0dbc66 100644 --- a/docs/wiki/Testing.md +++ b/docs/wiki/Testing.md @@ -6,11 +6,11 @@ This section and its sub-sections give you an overview of the principles the tes ### _Navigation_ -- [Testing Design](./TestingDesign) - - [Approach](./TestingDesign#approach) - - [API version validation](./TestingDesign#api-version-validation) - - [Template validation](./TestingDesign#template-validation) - - [Deployment validation](./TestingDesign#deployment-validation) -- [Testing Usage](./TestingUsage) +- [Testing Design](./TestingDesign.md) + - [Approach](./TestingDesign.md#approach) + - [API version validation](./TestingDesign.md#api-version-validation) + - [Template validation](./TestingDesign.md#template-validation) + - [Deployment validation](./TestingDesign.md#deployment-validation) +- [Testing Usage](./TestingUsage.md) --- diff --git a/docs/wiki/TestingDesign.md b/docs/wiki/TestingDesign.md index 2dcea11bc3..5b09fbab31 100644 --- a/docs/wiki/TestingDesign.md +++ b/docs/wiki/TestingDesign.md @@ -83,7 +83,7 @@ The template validation tests execute a dry-run with each parameter file provide If all other tests passed, the deployment tests are the ultimate module validation. Using the available & configured parameter files for a module, each is deployed to Azure (in parallel) and verifies if the deployment works end-to-end. -Most of the resources are deleted by default after their deployment, to keep costs down and to be able to retest resource modules from scratch in the next run. However, the removal step can be skipped in case further investigation on the deployed resource is needed. For further details, please refer to the (./PipelinesUsage) section. +Most of the resources are deleted by default after their deployment, to keep costs down and to be able to retest resource modules from scratch in the next run. However, the removal step can be skipped in case further investigation on the deployed resource is needed. For further details, please refer to the (./PipelinesUsage.md) section. This happens using the `.github/actions/templates/validateModuleDeploy/scripts/Test-TemplateWithParameterFile.ps1` script. diff --git a/docs/wiki/TestingUsage.md b/docs/wiki/TestingUsage.md index 8f3ac509ef..7cb753b281 100644 --- a/docs/wiki/TestingUsage.md +++ b/docs/wiki/TestingUsage.md @@ -73,7 +73,7 @@ $TestModuleLocallyInput = @{ ## Handling Parameters that require or contain a value that should be tokenized -The following scenarios are common to when to use a token value in the parameter file. Refer to [Parameter File Tokens Design](./ParameterFileTokens) for more details. +The following scenarios are common to when to use a token value in the parameter file. Refer to [Parameter File Tokens Design](./ParameterFileTokens.md) for more details. - Scenarios where resources have dependencies on other resources, which may require to be linked using `resourceId` references. diff --git a/docs/wiki/_Sidebar.md b/docs/wiki/_Sidebar.md index 522a5bd323..2753b387a9 100644 --- a/docs/wiki/_Sidebar.md +++ b/docs/wiki/_Sidebar.md @@ -7,11 +7,11 @@ - [Design](./ModulesDesign.md) - [Usage](./ModulesUsage.md) - [Testing](./Testing) - - [Design](./TestingDesign) - - [Usage](./TestingUsage) -- [Pipelines](./Pipelines) - - [Design](./PipelinesDesign) - - [Parameter File Tokens](./ParameterFileTokens) - - [Usage](./PipelinesUsage) -- [Contribution Guide](./ContributionGuide) -- [Known Issues](./KnownIssues) + - [Design](./TestingDesign.md) + - [Usage](./TestingUsage.md) +- [Pipelines](./Pipelines.md) + - [Design](./PipelinesDesign.md) + - [Parameter File Tokens](./ParameterFileTokens.md) + - [Usage](./PipelinesUsage.md) +- [Contribution Guide](./ContributionGuide.md) +- [Known Issues](./KnownIssues.md) From 0f8018215ecc1c336bc7669293e923bcc0ed6e30 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 15:39:06 +1100 Subject: [PATCH 60/65] test --- docs/wiki/Context.md | 4 ++-- docs/wiki/GettingStarted.md | 4 ++-- docs/wiki/Home.md | 10 +++++----- docs/wiki/PipelinesDesign.md | 4 ++-- docs/wiki/PipelinesUsage.md | 8 ++++---- docs/wiki/_Sidebar.md | 4 ++-- 6 files changed, 17 insertions(+), 17 deletions(-) diff --git a/docs/wiki/Context.md b/docs/wiki/Context.md index 6414368698..0238798df0 100644 --- a/docs/wiki/Context.md +++ b/docs/wiki/Context.md @@ -118,11 +118,11 @@ Deploying resources by referencing their corresponding modules from source contr ## Where does this platform fit in? -The _CARML_ platform hosts a collection of [resource modules](./Modules) with the intend to cover as many Azure resources and their child-resources as possible. +The _CARML_ platform hosts a collection of [resource modules](./Modules.md) with the intend to cover as many Azure resources and their child-resources as possible. As such, users can use the modules as they are, alter them and or use them to deploy their environments. -To ensure the modules are valid and can perform the intended deployments, the repository comes with a [validation & test](./Testing) [pipeline](./Pipelines.md) for each module. If successful it will also publish them in one or multiple target locations. +To ensure the modules are valid and can perform the intended deployments, the repository comes with a [validation & test](./Testing.md) [pipeline](./Pipelines.md) for each module. If successful it will also publish them in one or multiple target locations. As such, _CARML_ covers the `bottom box` of the [deployment model](#what-is-the-intended-the-deployment-model) section and `Phase #1` & `Phase #2` of the [deployment flow](#what-is-the-intended-deployment-flow) section. diff --git a/docs/wiki/GettingStarted.md b/docs/wiki/GettingStarted.md index 5c319e5c35..39ad24955e 100644 --- a/docs/wiki/GettingStarted.md +++ b/docs/wiki/GettingStarted.md @@ -117,7 +117,7 @@ Please refer to [this list][AzureNames] to check which services have a global sc ### Dependencies -As the modules we test often times have dependencies to other services, we created a pipeline to deploys several standard services like VirtualNetworks and KeyVaults (alongside dummy secrets) for the modules to use. This _dependency_ pipeline should be prepared and executed before you start running any pipelines on your own. In case you need to rename any services there (for example because a certain globally unique resource name was already taken) make sure to update any references to this name in the module parameter files. You can find further details about this pipeline [here](.\TestingDesign#Module-Dependencies). +As the modules we test often times have dependencies to other services, we created a pipeline to deploys several standard services like VirtualNetworks and KeyVaults (alongside dummy secrets) for the modules to use. This _dependency_ pipeline should be prepared and executed before you start running any pipelines on your own. In case you need to rename any services there (for example because a certain globally unique resource name was already taken) make sure to update any references to this name in the module parameter files. You can find further details about this pipeline [here](./TestingDesign.md#Module-Dependencies). ### GitHub-specific prerequisites @@ -211,7 +211,7 @@ Note: There are default tokens that can be enabled on any resource that leverage - `<>`: Will point to the Service Principal ID used for deployments. - `<>`: Will point to the Azure Resource Group where the resources are being deployed to. (This isn't defined in the secrets section but is injected at runtime) -Review [Parameter File Tokens Design](./ParameterFileTokens.md.md) for more details. +Review [Parameter File Tokens Design](./ParameterFileTokens.md) for more details. --- diff --git a/docs/wiki/Home.md b/docs/wiki/Home.md index c3ba4b818d..d07c814d1b 100644 --- a/docs/wiki/Home.md +++ b/docs/wiki/Home.md @@ -11,18 +11,18 @@ If you're unfamiliar with Infrastructure as Code, or wonder how you can use the - [Context](./Context.md) - [Infrastructure as Code](./Context#infrastructure-as-code-iac) - [Where does this platform fit in?](./Context#where-does-this-platform-fit-in.md) -- [Getting Started](./GettingStarted.md.md) +- [Getting Started](./GettingStarted.md) - [General prerequisites](./GettingStarted.md#General-prerequisites.md) - [Where to start](./GettingStarted.md#Where-to-start.md) - [Modules](./Modules.md) - [Design](./ModulesDesign.md) - [Usage](./ModulesUsage.md) -- [Testing](./Testing.md) +- [Testing](./Testing.md.md) - [Design](./TestingDesign.md) - [Usage](./TestingUsage.md) - [Pipelines](./Pipelines.md) - - [Design](./PipelinesDesign.md.md) - - [Usage](./PipelinesUsage.md.md) + - [Design](./PipelinesDesign.md) + - [Usage](./PipelinesUsage.md) - [Contribution Guide](./ContributionGuide.md) - [Known Issues](./KnownIssues.md) @@ -33,7 +33,7 @@ Following you can find an abstract overview of everything in- and out-of-scope o ## In Scope - **Modules:** Rich library of resource modules - the foundation for workload or entire environments deployments - **Platform:** Pipelines to validate modules & publish to those that pass to a location of your choice. Available with GitHub Workflows. -- **Documentation:** A rich documentation of best practices on [module](./Modules) design, the [platforms](./Context) and its [context](./Context), [testing](./Testing) and [pipelines](./Pipelines.md) +- **Documentation:** A rich documentation of best practices on [module](./Modules.md) design, the [platforms](./Context) and its [context](./Context), [testing](./Testing.md) and [pipelines](./Pipelines.md) ## Out of Scope - **Orchestration:** Orchestrated solutions such as workloads or entire environments intended for production environments diff --git a/docs/wiki/PipelinesDesign.md b/docs/wiki/PipelinesDesign.md index ea582dacd9..4d00b20b09 100644 --- a/docs/wiki/PipelinesDesign.md +++ b/docs/wiki/PipelinesDesign.md @@ -76,7 +76,7 @@ The validation phase performs all test outside of a test deployment. This includ #### Static module validation -This static validation executes the tests documented in the [testing](./Testing) section. Without diving into to much detail, we test aspects like a proper ReadMe documentation, a proper module folder structure, a minimum number of refresh of the leveraged of API versions and the like. +This static validation executes the tests documented in the [testing](./Testing.md) section. Without diving into to much detail, we test aspects like a proper ReadMe documentation, a proper module folder structure, a minimum number of refresh of the leveraged of API versions and the like. #### Simulated deployment validation @@ -173,7 +173,7 @@ Outside of the previously described platform pipelines we implemented several ad ## Dependencies pipeline -As the modules we test often times have dependencies to other services, we created a pipeline to deploys several standard services like VirtualNetworks and KeyVaults (alongside dummy secrets) for the modules to use. This _dependency_ pipeline should be prepared and executed before you start running any pipelines on your own. In case you need to rename any services there (for example because a certain globally unique resource name was already taken) make sure to update any references to this name in the module parameter files. You can find further details about this pipeline [here](.\TestingDesign#Module-Dependencies). +As the modules we test often times have dependencies to other services, we created a pipeline to deploys several standard services like VirtualNetworks and KeyVaults (alongside dummy secrets) for the modules to use. This _dependency_ pipeline should be prepared and executed before you start running any pipelines on your own. In case you need to rename any services there (for example because a certain globally unique resource name was already taken) make sure to update any references to this name in the module parameter files. You can find further details about this pipeline [here](./TestingDesign.md#Module-Dependencies). ### Dependencies pipeline inputs diff --git a/docs/wiki/PipelinesUsage.md b/docs/wiki/PipelinesUsage.md index ae3a84a3cb..4face1ccfc 100644 --- a/docs/wiki/PipelinesUsage.md +++ b/docs/wiki/PipelinesUsage.md @@ -23,8 +23,8 @@ As described in the [Pipelines Design](./PipelinesDesign.md) section we offer th | Pipeline | Target | Trigger | Notes | | - | - | - | - | -| [Module Pipelines](./PipelinesDesignmodule-pipelines) | Module | Changes to [module\|workflow] files in branch [main\|master] or manual | Used to test & publish modules. This is the most common pipeline you will interact with when working on modules. | -| [Dependencies pipeline](./PipelinesDesigndependencies-pipeline) | All required dependency resources | Manual | Deploys resources we reference in the module tests. Should be run once before testing modules. | +| [Module Pipelines](./PipelinesDesign.md#module-pipelines) | Module | Changes to [module\|workflow] files in branch [main\|master] or manual | Used to test & publish modules. This is the most common pipeline you will interact with when working on modules. | +| [Dependencies pipeline](./PipelinesDesign.md#dependencies-pipeline) | All required dependency resources | Manual | Deploys resources we reference in the module tests. Should be run once before testing modules. | | [ReadMe pipeline](./PipelinesDesignreadme-pipeline) | `README.md` in `` & `/arm` | Changes to [template files] in branch [main\|master] | Keeps the target ReadMe files aligned with the modules in the repository. | | [Wiki pipeline](./PipelinesDesignwiki-pipeline) | Wiki | Changes in [docs/wiki] in branch [main\|master] | Keeps the Wiki-repository in sync with the wiki folder in the modules repository | @@ -49,7 +49,7 @@ To validate any updates you did to a module template you can perform the followi Once the pipeline concluded, it will either be in a green (success) or red (failed) state, depending on how the module performed. -If you open the pipeline's run, you should be able to investigate the logs and investigate the execution. In case any of the [validation](./PipelinesDesignValidate) steps failed, the pipeline should give you detailed information of any error. In some cases in which Pester tests failed, you may only see the failed test and need to `expand` the error message. How this looks like depends on the [DevOps platform](#devops-tool-specific-considerations) you use. +If you open the pipeline's run, you should be able to investigate the logs and investigate the execution. In case any of the [validation](./PipelinesDesign.md#Validate) steps failed, the pipeline should give you detailed information of any error. In some cases in which Pester tests failed, you may only see the failed test and need to `expand` the error message. How this looks like depends on the [DevOps platform](#devops-tool-specific-considerations) you use. ## Operate the dependency pipeline @@ -63,7 +63,7 @@ Depending on what you want to test in your module pipeline, you may want to add ## Add a new module pipeline -To add a new module pipeline we recommend to create a copy of a currently existing module pipeline and adjust all module-specific properties documented [here](./PipelinesDesigncomponent-workflows). The registration of the pipeline will differ depending on the DevOps tool you're using. For further information, please review the [DevOps-Tool-specific guidance](#devops-tool-specific-guidance) below. +To add a new module pipeline we recommend to create a copy of a currently existing module pipeline and adjust all module-specific properties documented [here](./PipelinesDesign.md#component-workflows). The registration of the pipeline will differ depending on the DevOps tool you're using. For further information, please review the [DevOps-Tool-specific guidance](#devops-tool-specific-guidance) below. --- diff --git a/docs/wiki/_Sidebar.md b/docs/wiki/_Sidebar.md index 2753b387a9..c6750bb783 100644 --- a/docs/wiki/_Sidebar.md +++ b/docs/wiki/_Sidebar.md @@ -3,10 +3,10 @@ - [Home](./Home) - [Context](./Context) - [Getting Started](./GettingStarted.md) -- [Modules](./Modules) +- [Modules](./Modules.md) - [Design](./ModulesDesign.md) - [Usage](./ModulesUsage.md) -- [Testing](./Testing) +- [Testing](./Testing.md) - [Design](./TestingDesign.md) - [Usage](./TestingUsage.md) - [Pipelines](./Pipelines.md) From dfcb5cca26e3109e93f9ff6241a5ae4f1abb1a70 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 15:44:50 +1100 Subject: [PATCH 61/65] test --- docs/wiki/ContributionGuide.md | 2 +- docs/wiki/GettingStarted.md | 2 +- docs/wiki/Home.md | 10 +++++----- docs/wiki/PipelinesUsage.md | 4 ++-- docs/wiki/_Sidebar.md | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/wiki/ContributionGuide.md b/docs/wiki/ContributionGuide.md index 89fe8ee014..e21b366657 100644 --- a/docs/wiki/ContributionGuide.md +++ b/docs/wiki/ContributionGuide.md @@ -36,4 +36,4 @@ To contribute to the modules, set your environment up, test the updated/added mo Status Badge -Please make sure to set your environment up and also consult the ['Pipeline Design'](./PipelinesDesign.md) and ['Pipeline Usage'](.\PipelinesUsage) sections. +Please make sure to set your environment up and also consult the ['Pipeline Design'](./PipelinesDesign.md) and ['Pipeline Usage'](./PipelinesUsage.md) sections. diff --git a/docs/wiki/GettingStarted.md b/docs/wiki/GettingStarted.md index 39ad24955e..e6f9d89b43 100644 --- a/docs/wiki/GettingStarted.md +++ b/docs/wiki/GettingStarted.md @@ -203,7 +203,7 @@ Once the Key Vault is deployed, you'll notice that the Key Vault name in Azure w > The token prefix `<<` and suffix `>>` in the above example are also configurable in the [Settings.json](https://github.com/Azure/ResourceModules/blob/main/settings.json) file. They are however the default used in the CARML main repository. --- -Note: There are default tokens that can be enabled on any resource that leverages the [GitHub specific prerequisites](GettingStarted#github-specific-prerequisites) secrets. +Note: There are default tokens that can be enabled on any resource that leverages the [GitHub specific prerequisites](GettingStarted.md#github-specific-prerequisites) secrets. - `<>`: Will point to the Azure subscription. - `<>`: Will point to the Azure an Azure Management Group. diff --git a/docs/wiki/Home.md b/docs/wiki/Home.md index d07c814d1b..4d2e2ae0fa 100644 --- a/docs/wiki/Home.md +++ b/docs/wiki/Home.md @@ -4,20 +4,20 @@ The objective of this repository is to provide a template library that can be re This wiki describes the content of this repository, the modules, pipelines, possible options on how to use them and how to contribute to this project. -If you're unfamiliar with Infrastructure as Code, or wonder how you can use the contents of this repository in your deployments please check out the [context](./Context) section of this wiki. +If you're unfamiliar with Infrastructure as Code, or wonder how you can use the contents of this repository in your deployments please check out the [context](./Context.md) section of this wiki. ### _Navigation_ - [Context](./Context.md) - - [Infrastructure as Code](./Context#infrastructure-as-code-iac) - - [Where does this platform fit in?](./Context#where-does-this-platform-fit-in.md) + - [Infrastructure as Code](./Context.md#infrastructure-as-code-iac) + - [Where does this platform fit in?](./Context.md#where-does-this-platform-fit-in.md) - [Getting Started](./GettingStarted.md) - [General prerequisites](./GettingStarted.md#General-prerequisites.md) - [Where to start](./GettingStarted.md#Where-to-start.md) - [Modules](./Modules.md) - [Design](./ModulesDesign.md) - [Usage](./ModulesUsage.md) -- [Testing](./Testing.md.md) +- [Testing](./Testing.md) - [Design](./TestingDesign.md) - [Usage](./TestingUsage.md) - [Pipelines](./Pipelines.md) @@ -33,7 +33,7 @@ Following you can find an abstract overview of everything in- and out-of-scope o ## In Scope - **Modules:** Rich library of resource modules - the foundation for workload or entire environments deployments - **Platform:** Pipelines to validate modules & publish to those that pass to a location of your choice. Available with GitHub Workflows. -- **Documentation:** A rich documentation of best practices on [module](./Modules.md) design, the [platforms](./Context) and its [context](./Context), [testing](./Testing.md) and [pipelines](./Pipelines.md) +- **Documentation:** A rich documentation of best practices on [module](./Modules.md) design, the [platforms](./Context.md) and its [context](./Context.md), [testing](./Testing.md) and [pipelines](./Pipelines.md) ## Out of Scope - **Orchestration:** Orchestrated solutions such as workloads or entire environments intended for production environments diff --git a/docs/wiki/PipelinesUsage.md b/docs/wiki/PipelinesUsage.md index 4face1ccfc..8f9a6f1594 100644 --- a/docs/wiki/PipelinesUsage.md +++ b/docs/wiki/PipelinesUsage.md @@ -25,8 +25,8 @@ As described in the [Pipelines Design](./PipelinesDesign.md) section we offer th | - | - | - | - | | [Module Pipelines](./PipelinesDesign.md#module-pipelines) | Module | Changes to [module\|workflow] files in branch [main\|master] or manual | Used to test & publish modules. This is the most common pipeline you will interact with when working on modules. | | [Dependencies pipeline](./PipelinesDesign.md#dependencies-pipeline) | All required dependency resources | Manual | Deploys resources we reference in the module tests. Should be run once before testing modules. | -| [ReadMe pipeline](./PipelinesDesignreadme-pipeline) | `README.md` in `` & `/arm` | Changes to [template files] in branch [main\|master] | Keeps the target ReadMe files aligned with the modules in the repository. | -| [Wiki pipeline](./PipelinesDesignwiki-pipeline) | Wiki | Changes in [docs/wiki] in branch [main\|master] | Keeps the Wiki-repository in sync with the wiki folder in the modules repository | +| [ReadMe pipeline](./PipelinesDesign.md#readme-pipeline) | `README.md` in `` & `/arm` | Changes to [template files] in branch [main\|master] | Keeps the target ReadMe files aligned with the modules in the repository. | +| [Wiki pipeline](./PipelinesDesign.md#wiki-pipeline) | Wiki | Changes in [docs/wiki] in branch [main\|master] | Keeps the Wiki-repository in sync with the wiki folder in the modules repository | --- diff --git a/docs/wiki/_Sidebar.md b/docs/wiki/_Sidebar.md index c6750bb783..3e90ad12a4 100644 --- a/docs/wiki/_Sidebar.md +++ b/docs/wiki/_Sidebar.md @@ -1,7 +1,7 @@ # Wiki content -- [Home](./Home) -- [Context](./Context) +- [Home](./Home.md) +- [Context](./Context.md) - [Getting Started](./GettingStarted.md) - [Modules](./Modules.md) - [Design](./ModulesDesign.md) From 4f813d3f43a14f81a6030b41ef1a15dbce42c8f2 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 15:48:38 +1100 Subject: [PATCH 62/65] test --- .github/workflows/linter.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 85646ec98e..190de44ce5 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -33,7 +33,7 @@ jobs: id: checker uses: lycheeverse/lychee-action@v1.1.1 with: - args: --verbose --no-progress **/docs/**/*.md --exclude-file .lycheeignore --accept 200,201,403,429 --base /github/workspace + args: --verbose --no-progress **/docs/**/*.md --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 1975e95dcb530369f8558a07c2f2bdb59b610522 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 15:52:07 +1100 Subject: [PATCH 63/65] test --- .github/workflows/linter.yml | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 190de44ce5..859e69f1cd 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -36,21 +36,8 @@ jobs: args: --verbose --no-progress **/docs/**/*.md --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - - - name: Link Checker Results - if: always() run: exit ${{ steps.checker.outputs.exit_code }} - #- name: 'Checkout2' + #- name: Link Checker Results # if: always() - # uses: actions/checkout@v2 -# -#- name: Link Checker 2 -# if: always() -# id: checker2 -# uses: gaurav-nelson/github-action-markdown-link-check@v1 -# with: -# use-quiet-mode: 'yes' -# use-verbose-mode: 'yes' -# folder-path: 'docs' -# max-depth: 3 + # run: exit ${{ steps.checker.outputs.exit_code }} From 512718b53ef0f3fec0029137269fb2bbfb7cbbf1 Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 16:16:50 +1100 Subject: [PATCH 64/65] test --- .github/workflows/linter.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 859e69f1cd..7fbd58562d 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -36,8 +36,7 @@ jobs: args: --verbose --no-progress **/docs/**/*.md --accept 200,201,403,429 env: GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} - run: exit ${{ steps.checker.outputs.exit_code }} - #- name: Link Checker Results - # if: always() - # run: exit ${{ steps.checker.outputs.exit_code }} + - name: Link Checker Results + if: always() + run: exit ${{ steps.checker.outputs.exit_code }} From 4f752e395bf9e7c4dd9f27f6f88d6f3ec2ff5e5c Mon Sep 17 00:00:00 2001 From: Ahmad Abdalla <28486158+ahmadabdalla@users.noreply.github.com> Date: Tue, 7 Dec 2021 16:24:22 +1100 Subject: [PATCH 65/65] test --- .lycheeignore | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 .lycheeignore diff --git a/.lycheeignore b/.lycheeignore deleted file mode 100644 index 3695bf274b..0000000000 --- a/.lycheeignore +++ /dev/null @@ -1,7 +0,0 @@ -https://foo.psd1/ -https://mystorageaccount.blob.core.windows.net -https://mykeyvault.vault.azure.net -https://www.powershellgallery.com -https://github.com/myProject -http://validURLToConfigLocation/ -https://myCustomDependencyLocation/