Граф коммитов

414 Коммитов

Автор SHA1 Сообщение Дата
Bernie White 4b42fd021f
Use consistent rule references #217 (#247) 2019-07-28 20:43:25 +10:00
Bernie White d18df953d7
Update dependencies for test and benchmark (#246)
- Update dependencies for test and benchmark
- Bump PSScriptAnalyzer version to 1.18.1
- Add Cobertura report generator
2019-07-27 20:57:35 +10:00
Bernie White 3654ac39dc
Automatically load rule modules #218 (#245) 2019-07-25 12:58:38 +10:00
Bernie White de55ece634
Add detection for improper keyword use. #203 (#244) 2019-07-24 23:59:27 +10:00
Bernie White 062b74f7cd
Added per object reason for failing rules #200 (#241)
* Added per object reason for failing rules #200
* Updated docs and helper functions
2019-07-23 23:10:58 +10:00
Bernie White c24358d305
Add debug messages and verbose limiting #146 #235 (#236)
- Add debug messages and verbose limiting #146 #235
- Fix test to handle DebugPreference for Window PS
- Fix within comparison issue #237
2019-07-05 00:23:15 +12:00
Bernie White 0d57f6da36
Fix YAML options discovery and display #232 #233 (#234) 2019-07-03 21:29:41 +12:00
Bernie White fb50426e94
Improve handling of null rule result #224 (#228) 2019-06-30 01:16:04 +10:00
Bernie White fc23dce272
Fix Within comparison of non-string types #226 (#227) 2019-06-29 14:21:47 +10:00
Bernie White 6753c498cc
Fix reading nested arrays from JSON input #223 (#225) 2019-06-28 21:30:01 +10:00
Bernie White afef56ced2
Improve handling of rule tags and filtering #209 #204 (#220)
- Improve discovery of rule tags #209
- Change filtering by tag to ignore case #204
2019-06-26 23:10:32 +10:00
Bernie White 2c2d8db59f
Add culture support for rule informational messages #158 (#219) 2019-06-26 00:14:15 +10:00
Bernie White 5494379da5
Fix TargetName binding of null #202 (#216) 2019-06-25 00:23:01 +10:00
Bernie White 21a00c195a
Add -Not to Within and Match keywords #208 (#213) 2019-06-24 08:59:35 +10:00
Bernie White b6de1c604b
Fix rule DependsOn parameter allows null and change rule timing to milliseconds #191 #192 (#205)
* Fix null DependsOn parameter #191

* Exclude VS test results

* Record rule time in milliseconds

* Add documentation on PSRule features #68

* Update change log #192
2019-06-21 10:16:12 +08:00
Bernie White 37d536c016
Fix circular dependencies and rule nesting error handling #190 #189 (#198) 2019-06-20 01:35:19 +08:00
Bernie White e3b3695c80
Fix handling of non-boolean results in rules #187 (#193)
- Fix handling of non-boolean results in rules. #187
2019-06-19 00:33:01 +08:00
Bernie White 536442ea8a
Include .ps1 files that are specified directly #182 (#186)
- Include .ps1 files when specified directly
2019-06-18 00:36:22 +10:00
Bernie White f1400543d1
Add support for outputting results as CSV and improving cmdlet usage #175 #169 (#180)
- Added support for Invoke-PSRule to return CSV formatted results. #169
- Reordered cmdlet parameters to improve usage of frequently used parameters. #175
2019-06-15 14:11:39 +10:00
Bernie White 3f550c0746
Fix for path space and exporting of recommend keyword #168 #171 (#172)
* Fix handling of spaces in rule paths #168
* Export Recommend and Hint #171
* Improve tests for exports
2019-06-07 21:11:19 +10:00
Bernie White 3b5bc3a9a5
Change rule properties to align with docs #164 #165 (#166)
- Change rule properties to align with docs #164
- Changed Hint keyword to Recommend to align with rule documentation #165
- Added rule documentation
2019-06-06 23:17:10 +10:00
Bernie White 6844497810
Add markdown help #157 #18 #148 #147 (#159)
- Added rule documentation, which allows additional rule information to be stored in markdown files. #157
- Rule documentation also adds culture support. #18
- Added annotations, which are non-indexed metadata stored in rule documentation. #148
- Annotations can contain a link to online version of the documentation. #147
2019-06-02 21:40:26 +10:00
Bernie White dd34fdd9b9
Update dependencies (#156) 2019-05-25 18:50:52 +10:00
Bernie White 0529970352
Fix FullName cannot be found on this object error #149 (#154)
- Fix FullName cannot be found on this object error. #149
2019-05-11 15:47:53 +10:00
Bernie White 98a68ce47d
Documentation updates for v0.5.0 (#151)
- Updated to documentation based on v0.5.0 improved features and optimisation.
2019-05-05 11:58:16 +10:00
Bernie White c3398f88a7
Fix schema conformance for NUnit3 #141 (#142) 2019-04-30 22:25:44 +10:00
Bernie White bdc81fae14
Improve handling of default YAML options file #137 (#139)
- Improve options file handling #137
2019-04-29 23:59:22 +10:00
Bernie White 26b94a0921
Add and update cmdlets to set options from parameters #135 #134 (#138)
- Added Set-PSRuleOption cmdlet to configure YAML options file. #135
- Added parameters to New-PSRuleOption to configure common options. #134
2019-04-29 23:06:26 +10:00
Bernie White 185b57c6cd
CI process performance pre-v0.5.0 (#132)
* Split up tests into smaller files
* Exclude PR builds from running SonarCloud
* Additional Pester test performance and code improvements
2019-04-25 14:22:48 +10:00
Bernie White c5556eaac1
Add NUnit output format and validation #129 (#130)
- Added validation pipeline scenario.
- Added -OutputFormat NUnit3 to Invoke-PSRule return NUnit formatted output. #129
2019-04-23 08:55:08 +10:00
Bernie White 53c9615b7d
Fix error when traversing null field #123 (#124)
- Fix null reference exception when traversing null field #123
2019-04-02 21:33:26 +11:00
Bernie White 85a03bd116
Code base quality updates (#119)
* Code quality updates
* Add version to SonarCloud analysis
* Publish pester code coverage
* Switch working path to use ExecutionContext
* Update pipeline checks for strict compliance
2019-03-31 10:59:45 +10:00
Bernie White 0346927923
Fix YAML property serialization and summary output format #114 #115 #116 (#117)
- Fix summary is not correctly serialized with JSON or YAML output format #116
- Fix missing properties on serialized YAML output #115
- Fix incorrect property name case of YAML serialized results #114
2019-03-27 19:38:28 +10:00
Bernie White dc8acc8d0f
Add SonarCloud to CI pipeline (#85)
- Add SonarCloud integration to pipeline
2019-03-26 21:29:51 +10:00
Bernie White f093774cbe
Fix de-serialization of non-object arrays #111 (#112)
- Fix incorrect JSON de-serialization of non-object arrays. #111
2019-03-24 20:17:32 +10:00
Bernie White d0f81ea7b8
Fix deserialization of nested JSON arrays #109 (#110)
- Fix incorrect JSON de-serialization of nested arrays. #109
2019-03-22 08:57:39 +10:00
Bernie White 94abb8954b
Added support for reading objects from file and serializing output (#107)
- Added support for using `-InputPath` instead of using `-InputObject` to handle serialized objects. [#106](https://github.com/BernieWhite/PSRule/issues/106)
  - `-Format` is automatically detected for `.yaml`, `.yml` and `.json` file extensions.
- Added `-OutputFormat` parameter to serialize output from `Invoke-PSRule`. [#29](https://github.com/BernieWhite/PSRule/issues/29)
2019-03-21 09:22:01 +10:00
Bernie White 2f52ab00df
Removed deprecated Hint -TargetName parameter #81 (#105) 2019-03-07 15:48:54 +10:00
Bernie White afa6c3777d
Add outcome logging #97 (#104)
- Added support for logging pass or fail outcomes to a data stream such as Error, Warning or Information
2019-03-07 15:36:03 +10:00
Bernie White 49d2417763
Documentation quality updates and kubernetes scenario (#98)
- Minor grammatical updates
- Added documentation for Kubernetes resource validation scenario
- Added kubernetes-resources scenario to end-to-end tests
2019-02-28 19:10:18 +10:00
Bernie White 1d55968570
Add support for input deserialization from FileInfo objects #95 (#96)
* Support input deserialization from FileInfo objects #95
2019-02-25 21:28:54 +10:00
Bernie White f2ed28de65
Fix empty YAML object causes format deserialize to fail #92 (#93) 2019-02-25 13:50:07 +10:00
Bernie White d84ce434dd
Add support for keyword pipelining #90 (#91)
* Add support for keyword pipelining and updated docs #90
2019-02-20 17:27:27 +10:00
Bernie White 2c7c293a00
Improve field support and add type binding #82 #86 #87 (#88)
- Added object type binding and dynamic filtering for rules #82
- Added support for indexed and quoted field names #86
- Added support for case-sensitive binding operations #87
2019-02-19 13:37:13 +10:00
Bernie White 5eb05abf16
Add module packaging and export variables (#84)
- Export variables to improve authoring experience #83
- Support for packaging rules in modules #16
- Removed `-TargetName` parameter of the `Hint` keyword #81
2019-02-09 19:20:20 -08:00
Bernie White eea6aad2f6
Support nested TargetObjects #77 (#79)
- Support nested TargetObjects #77
2019-02-08 00:03:59 +10:00
Bernie White 097c4b8b72
Support input from YAML or JSON format and nested TargetName binding #75 #71 (#78)
- Import objects from YAML or JSON format #75
- Support TargetName binding of nested properties #71
2019-02-07 15:07:05 +10:00
Bernie White 946d6f7ea8
Update configuration variable (#63) 2019-01-28 23:23:08 +10:00
Bernie White 8122004883
Added support for nested fields and rule configuration #60 #17 #61 (#62)
- Added support for nested field names with Exists, Within and Match keywords #60
- Added support for rule configuration using baselines #17
- Use rule description when hint message not set #61
2019-01-26 00:37:22 +10:00
Bernie White 9157b5f51c
Rename Test-PSRule to Test-PSRuleTarget #57 (#58)
- Rename Test-PSRule to Test-PSRuleTarget #57
2019-01-14 11:23:39 +10:00
Bernie White ed781c43da
Fix path handling issues #53 #54 (#56)
- Fix Get-PSRule generates exception when no .rule.ps1 scripts exist in path #53
- Fix LocalizedData.PathNotFound warning when no .rule.ps1 scripts exist in path #54
2019-01-11 19:19:03 +10:00
Bernie White a5912cca17
Fix PowerShell logging and add cross platform support #48 #49 (#51)
- Fix propagation of informational messages to host from rule scripts and definitions #48
- Add support for cross-platform environments (Windows, Linux, and macOS) #49
2019-01-03 18:20:00 +10:00
Bernie White 1a641b3862
Support testing pipeline objects #30 #46 (#47)
- Add Test-PSRule command to return an overall $True or $False after evaluating rules for an object #30
- Improve reporting of inconclusive results and objects that are not processed by any rule #46
2018-12-24 20:14:56 +10:00
Bernie White a5ba1ff50f
Add rule suppression and custom TargetName binding #13 #44 (#45)
- Update pipeline for early target name binding and suppression #44 #13
- Allow objects to be suppressed by TargetName for individual rules #13
- Allow binding of TargetName to custom property #44
- Custom functions can be used to bind TargetName #44
- Objects that are unable to bind a TargetName will use a SHA1 object hash for TargetName #44
2018-12-24 12:40:14 +10:00
Bernie White 3f706fd66c
Fix issue verbose logging and handling of hashtable keys #35 #36 (#37)
* Fix verbose logging counter not incrementing #35
* Fix hashtable keys should be handled as fields #36
* Improved unit test cases
* Improved GitHub issue report template
2018-12-15 14:45:42 +10:00
Bernie White e92eaf2a70
Fix Invoke-PSRule summary ignores outcome filter #33 (#34)
* Fix Invoke-PSRule summary ignores outcome filter #33
* Update issue report template
2018-12-13 20:47:11 +10:00
Bernie White 5c7ad63504
Parameter name and rule id refactor (#31)
* Improved error handling of invalid paths
* Realign types and enums for consistency
* Refactor rule types to name properties and parameters consistently
* Improve RuleId and RuleName usage
2018-12-13 15:58:56 +10:00
Bernie White b18afbc280
Add rule summaries #12 (#21)
- Added option to report rule summary using -As parameter of Invoke-PSRule #12
- Added performance benchmarks
2018-12-10 18:34:14 +10:00
Bernie White dfd53c7509
Add tag mapping and tag existance filter (#20)
- Added rule tags to results to enable grouping and sorting
- Added support to check for rule tag existence
2018-12-04 10:19:55 +10:00
Bernie White 9304445c74
Pre-release module update 05 (#10)
- Automatically bind TargetName to TargetName or Name property
- Update fruit example
- Update CI pipeline
2018-12-03 18:27:48 +10:00
Bernie White 3a56e4fce4
PSRule usage examples (#9)
- Add Azure resource example
- Add fruit example
- Update Within keyword
- Update readme and links to examples
2018-12-03 16:40:44 +10:00
Bernie White 28321507ac
Pre-release module update 04 (#6)
- Added logging
- Update to handle rules dependencies
- Quality updates and expanded tests
- Improved build versioning of CI process
2018-12-01 01:31:16 +11:00
Bernie White 656e31aaa2
Pre-release module update 02 (#4)
* Read from file instead of using parser
* Handle multi-condition rules and inconclusive results
* Add additional contextual help
2018-11-30 00:10:02 +11:00
Bernie White 49be453c14
Pre-release module update (#3)
- Major re-factoring to push main engine code into CSharp
- Added use for tags to select rules
- Added support for constrained language mode
- Renamed Invoke-RuleEngine to Invoke-PSRule
- Allow discovery of rule definitions with Get-PSRule
- Updated documentation
- Added quality of life configurations for VSCode
2018-11-29 18:41:36 +11:00