Commit Graph

451 Commits (8e664ad2269914123f16541e81c6bc16f4136ffe)

Author SHA1 Message Date
Chris Church 15070e2af8 Merge pull request #11790 from brianlloyd/win_lineinfile
Integration tests for windows implementation of lineinfile
9 years ago
Abhijit Menon-Sen 88a20e7a20 Fix broken integration test with unicode hostnames
1. The test did "name: '{{hostnames}}.{{item}}'" inside a with_sequence
   loop, which didn't do what was intended: it expanded hostnames into
   an array, appended ".1", and set name to the resulting string. This
   can be converted to a simple with_items loop.

2. Some of the entries in hostnames contained punctuation characters,
   which I see no reason to support in inventory hostnames anyway.

3. Once the add_host failures are fixed, the playbook later fails when
   the unicode hostnames are interpolated into debug output in ssh.py
   due to an encoding error. This is only one of the many places that
   may fail when using unicode inventory hostnames; we work around it
   by providing an ansible_ssh_host setting.
9 years ago
Rene Moser f6382a160d cloudstack: new integration test role test_cs_user 9 years ago
Brian Coca 514fa73fcd galaxy fixes 9 years ago
Marius Gedminas c846bab69b Fix assert statement syntax
`assert (condition, message)` gets parsed by Python as `assert
a_two_tuple`, and a 2-element tuple is never False.

Discovered by compileall on Python 3.4, which emits a SyntaxWarning for
this common mistake.
9 years ago
Marius Gedminas 727cb8a917 Support print() function in test/ 9 years ago
Marius Gedminas 9ae66a7f5c Use 'except ... as' syntax in contrib/ and test/ too 9 years ago
James Cammarata 601a1cc6d9 Multiple fixes for include statements and blocks in general
Fixes #11981
Fixes #11995
Fixes #12039
Fixes #12077
9 years ago
Toshio Kuratomi 9f9891df2c Add unicode characters to the data that we're testing that ansible-vault can decrypt 9 years ago
Brian Coca 3e13dfd7e8 used stdoutlines list to avoid string mismatches
added block environment test
9 years ago
Brian Coca efa005c228 added names to assert tasks for easier debugging 9 years ago
Brian Coca d6a1cbeefb corrected varname that started with number and broke templating 9 years ago
Brian Coca 104b8a9a7b avoid hostvars which is not a dict 9 years ago
Brian Coca 857d74a274 made diff ignore whitespace 9 years ago
Brian Coca 6da2587c36 Merge pull request #12058 from resmo/for-ansible
cloudstack: more integration tests and updates
9 years ago
James Cammarata db65503778 Revert "Add PowerShell exception handling and turn on strict mode." 9 years ago
Rene Moser 69d5e62083 cloudstack: test_cs_account: account_state was renamed, fixes tests 9 years ago
Rene Moser eb44f85dc8 cloudstack: test_cs_instance: make it more configurable 9 years ago
Rene Moser 15a7f818e1 cloudstack: add more integration tests 9 years ago
Chris Church 4b2cdadc98 Add PowerShell exception handling and turn on strict mode.
* Add exception handling when running PowerShell modules to provide exception message and stack trace.
* Enable strict mode for all PowerShell modules and internal commands.
* Update common PowerShell code to fix strict mode errors.
* Fix an issue with Set-Attr where it would not replace an existing property if already set.
* Add tests for exception handling using modified win_ping modules.
9 years ago
Brian Coca 01708cc824 added test for environment directive 9 years ago
Feanil Patel 892e230514 Don't convert nulls to strings.
This change is similar to https://github.com/ansible/ansible/pull/10465

It extends the logic there to also support none types.  Right now if you have
a '!!null' in yaml, and that var gets passed around, it will get converted to
a string.

eg. defaults/main.yml
```
ENABLE_AWESOME_FEATURE: !!null # Yaml Null
OTHER_CONFIG:
  secret1: "so_secret"
  secret2: "even_more_secret"

CONFIG:
  hostname: "some_hostname"
  features:
    awesame_feature: "{{ ENABLE_AWESOME_FEATURE}}"
  secrets: "{{ OTHER_CONFIG }}"
```

If you output `CONFIG` to json or yaml, the feature flag would get represented in the output
as a string instead of as a null, but secrets would get represented as a dictionary.  This is
a mis-match in behaviour where some "types" are retained and others are not.  This change
should fix the issue.

I also updated the template test to test for this and made the changes to v2.

Added a changelog entry specifically for the change from empty string to null as the default.

Made the null representation configurable.

It still defaults to the python NoneType but can be overriden to be an emptystring by updating
the DEFAULT_NULL_REPRESENTATION config.
9 years ago
Rene Moser 9d3577a74a cloudstack: fix tests unhashable type: 'dict' 9 years ago
Rene Moser 8f3c181d90 cloudstack: tests: use resource_prefix 9 years ago
Brian Coca 1acb29ff9b sequence will now run once for start=end, added test to suite
fixes #11979
9 years ago
Brian Coca 43cc27084d corrected on delete also 9 years ago
Brian Coca 089687140d corrected role path 9 years ago
Brian Coca 033c77a13b now creates/removes files/ dir 9 years ago
Brian Coca 464a436f8f fixed testplay host, included lookup path tests in all, added stage for easier debugging 9 years ago
Brian Coca 60803a1d3c added lookup paths testing 9 years ago
Yannig Perré 47db352725 Merge remote-tracking branch 'ansible/devel' into devel 9 years ago
Yannig Perré c0bd140959 Add documentation for the ini lookup plugin. 9 years ago
Yannig Perré 733d40a77c When value does not exist, return default value instead of stopping ansible with an exception. 9 years ago
Brian Coca aefca24616 Merge pull request #10857 from jeffb-stell/devel
Add test for https://github.com/ansible/ansible/issues/9851
9 years ago
James Cammarata a586c74967 Merge pull request #11838 from cchurch/stringify_powershell_unquote_value
Fix for PowerShell unquote method when passed None.
9 years ago
Chris Church cafc35fd5b Fix for PowerShell unquote method when passed None. 9 years ago
Chris Church 6969b5ac8b Make sure raw doesn't eat key=value arguments. 9 years ago
Chris Church 2154212491 Merge pull request #11094 from cchurch/test_win_feature_has_servermanager
Only run win_feature tests when the host has the ServerManager module.
9 years ago
Chris Church e87cf4a3cc Fixes for WinRM/PowerShell support in v2.
- Add support for inserting module args into PowerShell modules.  Fixes #11661.
- Support Windows paths containing spaces.  Applies changes from #10727 to v2.  Fixes #9999.  Should also fix ansible/ansible-modules-core#944 and ansible/ansible-modules-core#1007.
- Change how execution policy is set for running remote scripts.  Applies changes from #11092 to v2.  Also fixes ansible/ansible-modules-core#1776.
- Use codepage 65001 (UTF-8) for WinRM connection instead of default (CP437), convert command to UTF-8 and results from UTF-8.  Replaces changes from #10024.  Fixes #11198.
- Close WinRM connection when task completes.
- Use win_stat, win_file and win_copy modules instead of stat, file and copy when called from within other action plugins (only when using WinRM+PowerShell).
- Unquote Windows path arguments before passing to win_stat, win_file, win_copy and slurp modules (only when using WinRM/PowerShell).
- Check for win_ping module to determine if core modules are missing (only when using WinRM/PowerShell).
- Add stdout_lines to result from running low level commands (so stdout_lines is available when using raw/script).
- Update copy action plugin to use shell functions for joining paths and checking for trailing slash.
- Update fetch action plugin to unquote source path when using Windows paths.
- Add win_copy and win_template action plugins that inherit from copy and template.
- Support running .bat and .cmd scripts using default system encoding instead of UTF-8.
- Always send PowerShell commands as base64-encoded blobs to allow for running simple PowerShell commands via raw.
- Support running modules on Windows with interpreters other than PowerShell.
- Update integration tests to support above changes and test unicode fixes.
- Add test for win_user error from ansible/ansible-modules-core#1241 (fixed by ansible/ansible-modules-core#1774).
- Add test for additional win_stat output values (implemented by ansible/ansible-modules-core#1473).
- Add test for OS architecture and name from setup.ps1 (implemented by ansible/ansible-modules-core#1100).

All WinRM integration tests pass for me with these changes.
9 years ago
Brian Coca c2d8ca4bf7 fixed test to expected output 9 years ago
Brian Lloyd 07b14b9731 integration tests for windows implementation of lineinfile 9 years ago
James Cammarata ba56beda90 Fix include task using a potentially undefined variable 9 years ago
James Cammarata 71867f9480 Remove vars attribute from base
Fixes #11779
9 years ago
James Cammarata e505a1b7c4 Fix variable precedence integrationt test 9 years ago
Brian Coca c76a66694f fixed typo 9 years ago
Michael Scherer 106e942faa Document and test 'is undefined' rather than 'is not defined'
According to https://github.com/ansible/ansible/issues/10273,
this syntax should work better for nested dicts.
9 years ago
Toshio Kuratomi b06353791c Don't pass mode from synchronize action plugin to the ansible module
Fixes https://github.com/ansible/ansible-modules-core/issues/1783
9 years ago
James Cammarata 46f74a0d69 Re-adding --start-at-task test to unicode integration test 9 years ago
James Cammarata b09eed3353 Merge branch 'test_notify_with_loops' of https://github.com/pilou-/ansible into pilou--test_notify_with_loops 9 years ago
James Cammarata dca36c1d16 Reestablishing the use of tags/when for role duplication detection
Not figuring these in can cause problems with "diamond" pattern relationships,
even though this is still not quite optimal.
9 years ago