- Use qualified target names #36 - Use pre-release PSRule version to fix POSIX issue.
This commit is contained in:
Родитель
75a0009d53
Коммит
a19407c0e9
|
@ -2,6 +2,9 @@
|
||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
- **Breaking change**: Use qualified target names. [#36](https://github.com/Microsoft/PSRule.Rules.Kubernetes/issues/36)
|
||||||
|
- If using suppression, update suppressed target name with qualified name.
|
||||||
|
|
||||||
## v0.1.0
|
## v0.1.0
|
||||||
|
|
||||||
- Initial release.
|
- Initial release.
|
||||||
|
|
|
@ -7,4 +7,4 @@
|
||||||
. ./.azure-pipelines/pipeline-deps.ps1
|
. ./.azure-pipelines/pipeline-deps.ps1
|
||||||
Invoke-Build Test -AssertStyle Client
|
Invoke-Build Test -AssertStyle Client
|
||||||
|
|
||||||
Write-Host "If no build errors occured. The module has been saved to out/modules/PSRule.Rules.Kubernetes"
|
Write-Host "If no build errors occurred. The module has been saved to out/modules/PSRule.Rules.Kubernetes"
|
||||||
|
|
|
@ -22,11 +22,13 @@ param (
|
||||||
[String]$AssertStyle = 'AzurePipelines'
|
[String]$AssertStyle = 'AzurePipelines'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Write-Host -Object "[Pipeline] -- PowerShell: v$($PSVersionTable.PSVersion.ToString())" -ForegroundColor Green;
|
||||||
Write-Host -Object "[Pipeline] -- PWD: $PWD" -ForegroundColor Green;
|
Write-Host -Object "[Pipeline] -- PWD: $PWD" -ForegroundColor Green;
|
||||||
Write-Host -Object "[Pipeline] -- ArtifactPath: $ArtifactPath" -ForegroundColor Green;
|
Write-Host -Object "[Pipeline] -- ArtifactPath: $ArtifactPath" -ForegroundColor Green;
|
||||||
Write-Host -Object "[Pipeline] -- BuildNumber: $($Env:BUILD_BUILDNUMBER)" -ForegroundColor Green;
|
Write-Host -Object "[Pipeline] -- BuildNumber: $($Env:BUILD_BUILDNUMBER)" -ForegroundColor Green;
|
||||||
Write-Host -Object "[Pipeline] -- SourceBranch: $($Env:BUILD_SOURCEBRANCH)" -ForegroundColor Green;
|
Write-Host -Object "[Pipeline] -- SourceBranch: $($Env:BUILD_SOURCEBRANCH)" -ForegroundColor Green;
|
||||||
Write-Host -Object "[Pipeline] -- SourceBranchName: $($Env:BUILD_SOURCEBRANCHNAME)" -ForegroundColor Green;
|
Write-Host -Object "[Pipeline] -- SourceBranchName: $($Env:BUILD_SOURCEBRANCHNAME)" -ForegroundColor Green;
|
||||||
|
Write-Host -Object "[Pipeline] -- Culture: $((Get-Culture).Name), $((Get-Culture).Parent)" -ForegroundColor Green;
|
||||||
|
|
||||||
if ($Env:SYSTEM_DEBUG -eq 'true') {
|
if ($Env:SYSTEM_DEBUG -eq 'true') {
|
||||||
$VerbosePreference = 'Continue';
|
$VerbosePreference = 'Continue';
|
||||||
|
@ -143,7 +145,7 @@ task VersionModule ModuleDependencies, {
|
||||||
$manifest = Test-ModuleManifest -Path $manifestPath;
|
$manifest = Test-ModuleManifest -Path $manifestPath;
|
||||||
$requiredModules = $manifest.RequiredModules | ForEach-Object -Process {
|
$requiredModules = $manifest.RequiredModules | ForEach-Object -Process {
|
||||||
if ($_.Name -eq 'PSRule' -and $Configuration -eq 'Release') {
|
if ($_.Name -eq 'PSRule' -and $Configuration -eq 'Release') {
|
||||||
@{ ModuleName = 'PSRule'; ModuleVersion = '0.13.0' }
|
@{ ModuleName = 'PSRule'; ModuleVersion = '0.14.0' }
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@{ ModuleName = $_.Name; ModuleVersion = $_.Version }
|
@{ ModuleName = $_.Name; ModuleVersion = $_.Version }
|
||||||
|
@ -193,8 +195,8 @@ task PSScriptAnalyzer NuGet, {
|
||||||
|
|
||||||
# Synopsis: Install PSRule
|
# Synopsis: Install PSRule
|
||||||
task PSRule NuGet, {
|
task PSRule NuGet, {
|
||||||
if ($Null -eq (Get-InstalledModule -Name PSRule -MinimumVersion 0.13.0 -ErrorAction Ignore)) {
|
if ($Null -eq (Get-InstalledModule -Name PSRule -MinimumVersion '0.15.0-B2002012' -AllowPrerelease -ErrorAction Ignore)) {
|
||||||
Install-Module -Name PSRule -MinimumVersion 0.13.0 -Scope CurrentUser -Force;
|
Install-Module -Name PSRule -MinimumVersion '0.15.0-B2002012' -AllowPrerelease -Scope CurrentUser -Force;
|
||||||
}
|
}
|
||||||
Import-Module -Name PSRule -Verbose:$False;
|
Import-Module -Name PSRule -Verbose:$False;
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,6 +12,7 @@ spec:
|
||||||
- kind
|
- kind
|
||||||
field:
|
field:
|
||||||
namespace: [ 'metadata.namespace' ]
|
namespace: [ 'metadata.namespace' ]
|
||||||
|
useQualifiedName: true
|
||||||
rule:
|
rule:
|
||||||
tag:
|
tag:
|
||||||
group: core
|
group: core
|
||||||
|
@ -29,6 +30,7 @@ spec:
|
||||||
- kind
|
- kind
|
||||||
field:
|
field:
|
||||||
namespace: [ 'metadata.namespace' ]
|
namespace: [ 'metadata.namespace' ]
|
||||||
|
useQualifiedName: true
|
||||||
rule:
|
rule:
|
||||||
tag:
|
tag:
|
||||||
group: [ 'core', 'AKS' ]
|
group: [ 'core', 'AKS' ]
|
||||||
|
|
|
@ -38,13 +38,13 @@ Describe 'Kubernetes.AKS' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'service-B';
|
$ruleResult.TargetName | Should -Be 'service/service-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 2;
|
$ruleResult.Length | Should -Be 2;
|
||||||
$ruleResult.TargetName | Should -BeIn 'service-A', 'service-C';
|
$ruleResult.TargetName | Should -BeIn 'service/service-A', 'service/service-C';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,13 +38,13 @@ Describe 'Kubernetes.API.Removal' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-B';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-A';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-A';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,13 +38,13 @@ Describe 'Kubernetes.Metadata' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 2;
|
$ruleResult.Length | Should -Be 2;
|
||||||
$ruleResult.TargetName | Should -BeIn 'deployment-B', 'service-B';
|
$ruleResult.TargetName | Should -BeIn 'deployment/deployment-B', 'service/service-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 2;
|
$ruleResult.Length | Should -Be 2;
|
||||||
$ruleResult.TargetName | Should -BeIn 'deployment-A', 'service-A';
|
$ruleResult.TargetName | Should -BeIn 'deployment/deployment-A', 'service/service-A';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,13 +38,13 @@ Describe 'Kubernetes.Pod' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-B';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-A';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-A';
|
||||||
}
|
}
|
||||||
|
|
||||||
It 'Kubernetes.Pod.Latest' {
|
It 'Kubernetes.Pod.Latest' {
|
||||||
|
@ -54,13 +54,13 @@ Describe 'Kubernetes.Pod' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-B';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-A';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-A';
|
||||||
}
|
}
|
||||||
|
|
||||||
It 'Kubernetes.Pod.Secrets' {
|
It 'Kubernetes.Pod.Secrets' {
|
||||||
|
@ -70,13 +70,13 @@ Describe 'Kubernetes.Pod' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-B';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-A';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-A';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,13 +88,13 @@ Describe 'Kubernetes.Pod' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-B';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-A';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-A';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -106,13 +106,13 @@ Describe 'Kubernetes.Pod' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-B';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-A';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-A';
|
||||||
}
|
}
|
||||||
|
|
||||||
It 'Kubernetes.Pod.Replicas' {
|
It 'Kubernetes.Pod.Replicas' {
|
||||||
|
@ -122,13 +122,13 @@ Describe 'Kubernetes.Pod' {
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Fail' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-B';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-B';
|
||||||
|
|
||||||
# Pass
|
# Pass
|
||||||
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
$ruleResult = @($filteredResult | Where-Object { $_.Outcome -eq 'Pass' });
|
||||||
$ruleResult | Should -Not -BeNullOrEmpty;
|
$ruleResult | Should -Not -BeNullOrEmpty;
|
||||||
$ruleResult.Length | Should -Be 1;
|
$ruleResult.Length | Should -Be 1;
|
||||||
$ruleResult.TargetName | Should -Be 'deployment-A';
|
$ruleResult.TargetName | Should -Be 'deployment/deployment-A';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче