Commit Graph

82 Commits (40a1bd19622741439750037a9290376482a6f751)

Author SHA1 Message Date
Dreamcat4 40a1bd1962 fix: Add 'enable:' flag for enabling existing rules which are disabled by default.
This is a very much needed flag. To turn on/off existing firewall rules. And like the recent fix of the 'Profile' key, the netsh cmd prints 'Enabled' in the textual output. (at least on win10 it does). So again a similar small code added for the necessary exception handling when the difference check happens.

Please merge / push upstream like the other fixes. Many thanks. This is the last fix I have put together for this patch set. So I will raise my PR now.

But if you want to fix more bugs, it seems there may be others. In terms of the control code. Sometimes it will delete a rule under 'force' condition (when found difference) - but instead it is supposed to just modify the existing rule. Some weird behaviour regarding that. The other problem is that ansible does not return the error text printed by 'netsh' cmd verbatim... but it should as that makes debugging these errors a *lot* easier.
2016-12-08 11:33:27 -05:00
Dreamcat4 e0da4a3362 fix: update documentation with new module name "win_firewall_rule" 2016-12-08 11:33:27 -05:00
Dreamcat4 7188ae4fe1 fix: The names of firewall profiles are different on win10 & win2008r2
Hi again. This commit removes a small portion of your script's own internal error checking. In specific: for the value of the profile: key. This is essential to avoid errors on other verisons of the windows operating system which are not win2008r2 (your version).

For example: on win10 (and most likely win8x too), the names of the profiles don't include the values 'current' and 'all'. But instead the values are 'Public' 'Private' 'Domain' and 'Any. But in addition, there are also certain combinatorial values, such as profile=Public,Private etc. Which is too many to error check yourself.

Yet removing the error checking here should not cause any ill effects however: since the netsh advfirewall ... cmds themselves to add / remove / modify actually to their own error checking of the profile=value. So when the cmd is run, it will error out itself with an appropriate / informative error msg. No harm done.

Therefore please remove the highlighed portions from your own script. It is essential for interoperability with win10 and win8x. Many thanks.
2016-12-08 11:33:27 -05:00
Dreamcat4 f64e438150 fix: win10 - Add exception handling for 'Profiles:' textual output key name mismatch.
In win10 (and pribably win8x also):

The output of 'show rule' key includes the line "Profiles:<TAB>Public,Private".
Yet your script expects the key name printed out to be "Profile:<TAB>value".

This commit added the necessary exception handling to avoid flagging 'different=true' under the false circumstance. The key name to SET a firewall rule is still "profile=" and not "profiles=".

There is coming up another commit to fix the value handling for win10/win8. Which is another (different) error with the profile: key.
2016-12-08 11:33:26 -05:00
Dreamcat4 b9dd3568f3 fix: fw rule names must always be quoted, to permit spaces ' ' and brackets '()'
Without this fix, the 'netsh' command gets name=Firewall Rule Name instead of name="Firewall Rule Name". Thus causing all sorts of havoc. Basic shell quoting rules seems to apply to Windows Powershell too. This is very much needed as many of windows 10's default firewall rules contain spaces and brackets () characters.
2016-12-08 11:33:26 -05:00
jhawkesworth@users.noreply.github.com 17d1c8916d Document module limitations to resolve https://github.com/ansible/ansible-modules-extras/issues/908 2016-12-08 11:33:25 -05:00
Brian Coca 4134b7a04d doc formatting fixes 2016-12-08 11:33:25 -05:00
nitzmahone bf59d1cc1e win_updates rewrite for 2.0
uses scheduled job to run under a local token (required for WU client)
supports check mode
no external PS module deps
2016-12-08 11:33:24 -05:00
Trond Hindenes 86be6b1dba added module author 2016-12-08 11:33:24 -05:00
Trond Hindenes 6890cc81be fixes #984 2016-12-08 11:33:24 -05:00
Toshio Kuratomi 07af4c3627 Fix doc build 2016-12-08 11:33:24 -05:00
Trond Hindenes cb88c17856 win_chocolatey bugfixes 2016-12-08 11:33:23 -05:00
gfrank 3ea3b9efc9 Move comments to the documentation 2016-12-08 11:33:22 -05:00
gfrank 6fa4292bed Remove unnecessary aliases arrays 2016-12-08 11:33:22 -05:00
gfrank ebbe086d3a Clean up unneeded comment and comma 2016-12-08 11:33:22 -05:00
gfrank fbf6c2ddc3 Adding nssm requirement note 2016-12-08 11:33:22 -05:00
gfrank d6c42c0e6f Adding win_nssm module 2016-12-08 11:33:22 -05:00
Michael Perzel 9fd59bde6d Remove duplicate action declaration. 2016-12-08 11:33:22 -05:00
Michael Perzel 6f752a871b Note parameters that are not idempotent 2016-12-08 11:33:22 -05:00
Michael Perzel 141b3ce41f Fix logging of error message 2016-12-08 11:33:22 -05:00
Michael Perzel 0f9c81a8c2 Add support for specifying user for scheduled task to run as 2016-12-08 11:33:22 -05:00
Michael Perzel 7ea34369f7 Add support for command arguments 2016-12-08 11:33:22 -05:00
Michael Perzel f1e8de2f67 Show order of operations with parenthesis 2016-12-08 11:33:22 -05:00
Michael Perzel 0d78c01d32 Use helper methods to validate vars. Cleanup logic. 2016-12-08 11:33:22 -05:00
Michael Perzel dae8cfe0a9 Remove accidental newlines 2016-12-08 11:33:22 -05:00
Michael Perzel e3c6dbf14e Cleanup enable/disable logic 2016-12-08 11:33:22 -05:00
Michael Perzel 66d9d896e4 Update method to determine if task exists, add days of week parameter to weekly triggers 2016-12-08 11:33:22 -05:00
Michael Perzel 28164d2ae4 Ability to add/remove scheduled task 2016-12-08 11:33:21 -05:00
TimothyVandenbrande 8cb80ce7bf upon request, added the license 2016-12-08 11:33:20 -05:00
Timothy Vandenbrande 12a26a8f81 add version_added: "2.0" 2016-12-08 11:33:20 -05:00
Timothy Vandenbrande 8aa14ac4aa renamed profile var 2016-12-08 11:33:20 -05:00
Timothy Vandenbrande c7fb582b9c windows default to current instead of all 2016-12-08 11:33:20 -05:00
Timothy Vandenbrande 3511497dc1 renamed the module 2016-12-08 11:33:20 -05:00
Timothy Vandenbrande 115fb59136 added the profile option + updated the docs for it 2016-12-08 11:33:20 -05:00
Timothy Vandenbrande d8663132ad windows firewall control 2016-12-08 11:33:20 -05:00
Toshio Kuratomi ba8cc9493a correct documentation formatting 2016-12-08 11:33:17 -05:00
Trond Hindenes bc19cceb8e Added module win_package 2016-12-08 11:33:16 -05:00
Chris Church eaf6d6fb4d Workaround for bug in PowerShell Get-Website cmdlet. 2016-12-08 11:33:07 -05:00
Brian Coca cff83ca72a more doc fixes 2016-12-08 11:33:05 -05:00
Peter Mounce 9660b1f887 version -> 2, remove unnecessary doc attributes 2016-12-08 11:33:03 -05:00
Peter Mounce ded61f5a49 fix license boilerplate 2016-12-08 11:33:02 -05:00
Peter Mounce e193215d12 win_webpicmd module for IIS module installation
Chocolatey 0.9.9+ deprecated support for the `webpi` custom source, so I needed to write this.

[Windows Web Platform Installer](http://www.microsoft.com/web/downloads/platform.aspx) is a way of installing products and applications for Microsoft IIS on Windows. It has a [command line](http://www.iis.net/learn/install/web-platform-installer/web-platform-installer-v4-command-line-webpicmdexe-rtw-release); this ansible module allows IIS modules to be installed via this means.

To find out names of modules, use `webpicmd /list /listoption:available`.

Notes:
* `webpicmd` must be installed and on `PATH` first (see `win_chocolatey` module; package is `webpicmd`)
* `webpicmd` does not allow modules to be uninstalled
* IIS must be installed first (see `win_feature` module; package is `Web-Server`)
* Installations will
  * accept EULA (which otherwise requires user input)
  * suppress reboots (so you have to manage those; see `win_reboot` module)
2016-12-08 11:33:02 -05:00
Peter Mounce 761197707b use the notes property 2016-12-08 11:33:02 -05:00
Peter Mounce e00089986a version -> 2, quote doc strings with colons 2016-12-08 11:33:02 -05:00
Peter Mounce 490c8fa0ca Add documentation note 2016-12-08 11:33:02 -05:00
Peter Mounce 1c6e252ca0 Create win_dotnet_ngen module
When .NET is installed or updated, ngen is triggered to optimise the installation. This triggers high CPU while it's happening, and usually happens at an inconvenient time.

This allows you to trigger it when you like. Full details and background in doc.

I don't know a way to figure out whether this is required without actually running it.
2016-12-08 11:33:02 -05:00
Peter Mounce a9978b5283 re-submit @adematte's PR #278 against HEAD 2016-12-08 11:33:02 -05:00
Phil f6d66bb3db minor doc fixes that had lingering description of deprecated functions 2016-12-08 11:33:00 -05:00
Phil 01b36130a8 use convertto-bool for rm and recurse params 2016-12-08 11:32:59 -05:00
Phil 2d1189dee8 removes restart functionality, and added creates param for idempotency 2016-12-08 11:32:59 -05:00