Style: Adds mmc list view, kickstart filter, spelling fix
Fixes plenty of spelling mistakes, style guides, views, layouts and other visual topics for the Icinga for Windows Management Console.
Fix: Icinga Director Self-Service Zones and CA config
Fixes an issue on legacy installation wizard, which did not render the zones.conf properly with the correct information shipped for connection data and added missing `-CAEndpoint` assignment, which was wrong previously.
Fix: Missing architecture check on installation from repository
The architecture check was missing from the Icinga Repository installation, causing x86 packages being installed on x64 systems and vice versa.
Fix: Director Self-Service ticket handling not working
Fixes the handling for the Icinga Director Self-Service API, which caused the ticket handling for certificate signing not to work
Fatures: Adds Cmdlet to test Icinga for Windows service
Adds a new Cmdlet `Test-IcingaForWindowsService` which will test for security issue IWKB000009 and check if the service is properly configured to run against the .psd1 instead of .psm1 of the icinga-powershell-framework.
Fix: Icinga Director installation on every way for Managment Console
Fixes Icinga Director Self-Service API which caused exception on some scenarios and stored wrong keys inside configuration.
Fix: Remove-ItemSecure is not using all args and might fail on empty path
The Cmdlet `Remove-ItemSecure` was not using all args and might have crashed on empty values shipped to `-Path`
Feature: Allow force adding of repository
Extends repository feature, by allowing to force add new repositories with the same name, overriding current configuration.
Fix: Installer should always overwrite values in automation mode
The installer is not overwriting pre-defined values, in case we run in automation mode. This causes default values being used over custom defined values while using the installation file or the intallation command
Fix: Possible exception on first import run
On certain systems you can run into an exception on the first run of the system, as the module is imported but the cache is written on this import run. Therefor a second import run is required, to import the newly generated files.
Fix: Module import on non PowerShell folders
Fixes import for module files, by using the full path to the module now instead of the name only, as files could be placed inside a folder which is not listed inside the `$ENV:PSModulePath`
Fix: MSI package reader not working on Windows 2012 R2
On Windows 2012 R2, the current implementation for `Read-IcingaMSIMetadata` is not working, as we require to do it on a more complicated way.
Feature: Adds repository management
Icinga for Windows installation and configuration can be very complex, even though way to complicated because there are plenty of different sources available you can download files from.
The repository managmenet will make things easier, as you can provide single entry points containing all your components for installation.
Feature: Adds array thresholds and date time support
Adds support to parse arrays to Icinga Check thresholds functions like `WarnOutOfRange` and adds two new functions `WarnDateTime` and `CritDateTime`, for easier comparing of time stamps.
Required for new `Invoke-IcingaCheckScheduledTask` features requested on [Plugin Feature Reqest #208](https://github.com/Icinga/icinga-powershell-plugins/issues/208)
Feature: Adds rebuild cache switch to icinga cmd
As we move forward with enforcing the Framework Code Cache, we should make it easier for developers to rebuild the cache while testing new features.
For this we now added the `RebuildCache` switch for `icinga` alias and `Invoke-IcingaCommand` which rebuilds the cache before the actual Icinga Shell or Icinga Command is executed.
Deprecated: Remove legacy import feature from files
In the past we used different ways to import certain information into Icinga for Windows. With the new version, we can get rid of most of the handling and reduce CPU impact in this matter.
Fix: Code cache creation loop
With the previous implementation, we caused an infinite creation of the code cache during every execution, causing Icinga to fail executing checks.
Feature: Always enforce Framework code caching
To ensure we increase the performance of the loading and to introduce JEA profiles later on, we will now enforce the Icinga Framework Code cache starting with 1.6.0.
By doing so, each new update will be forced to create a Framework Code Cache and only this file will be loaded during intialisation.
Fix: Long file names causing error on Windows Copy
With the implementatation of the Management Console, file names were way too big for certain branch names and checkouts. This resolves the issue by renaming them to a shorter grade.
Feature: Relocating reconfigure menu entry
The reconfigure menu was previously present inside the Icinga Agent sub-menu and is now moved to the main installation menu.
The reason was that in case Agent installation failed, no re-configuration was possible because the entry is locked for the Agent not being present.
Feature: Adds support to set listen ip, defaults to localhost
We should ensure the local socket creation always defaults to the loopback interface, while making it configurable on which IP it listens.
Feature: Removes password on Secure.String exceptions
Improves error handling in case of exceptions, which will now remove the arguments and content for passwords, in case `String` is tried to be used for `SecureString` arguments.
Feature: Adds critical exception cmdlet and exit code catch
Adds new Cmdlet `Exit-IcingaThrowCritical` to throw critical exit with a custom message, either by force or by using string filtering and adds storing of plugin exit codes internally.