Commit Graph

1591 Commits (e375bfd6a588c4b3044b2c2a26b9553f83f63002)

Author SHA1 Message Date
Robin Roth 2b28beb1d7 add check_mode option for tasks (#16056)
* add check_mode option for tasks

includes example testcases for the template module

* extend check_mode option

* replace always_run, see also proposal rename_always_run
* rename always_run where used and add deprecation warning
* add some documentation

* have check_mode overwrite always_run

* use unique template name to prevent conflicts

test_check_mode was right before, but failed due to using the same filename as other roles

* still mention always_run in the docs

* set deprecation of always_run to version 2.4

* fix rst style

* expand documentation on per-task check mode
8 years ago
s-hertel 93c5ec42cf Test GalaxyCLI when no actions are provided
Adds a new test for GalaxyCLI. Tests cases when:

- no actions are provided
- invalid actions are provided
- each valid action is provided

When parser() runs successfully the method returns True, creates a
SortedOptParser instance, a Galaxy instance, and updates certain class data.
8 years ago
s-hertel 671f9c3d15 Merge pull request #16783 from s-hertel/test_display_galaxy_info_fix
fixing a logic error in test_galaxy
8 years ago
s-hertel 3cb5747f54 fixing a logic error in test_galaxy 8 years ago
s-hertel aae5e50299 Adding a test for GalaxyCLI. Tests exit_without_ignore method. 8 years ago
Christoph Dittmann d55452d3ed Adding unit tests for role variable precedence
Originally from PR #16735
8 years ago
Matt Clay 4cc4dc6793 Add postgresql dependencies to opensuseleap. 8 years ago
nitzmahone 7aa39981c4 fix setup test for renamed windows fact 8 years ago
jctanner 238c6461f6 Add a function to check for killed processes in all strategies (#16684)
* Add a function to check for killed processes so that if any
threads are sigkilled or sigtermed, the entire playbook execution is aborted.
8 years ago
James Cammarata 153133132d Updating tests for new module feature for remote_src in unarchive
Fixes #10218
8 years ago
Toshio Kuratomi c8a8f546d4 A little unittest refactoring (#16704)
A little unittest refactoring

* Add a class decorator to generate tests when using a unittest.TestCase base class
* Add a TestCase subclass with setUp() and tearDown() that sets up
  module parameter parsing
* Move test_safe_eval to use the class decorator and ModuleTestCase base
  class
* Move testing of set_mode_if_different into its own file and separate
  some test methods out so we get better errors and more coverage in
  case of errors.
* Naming convention for test cases doesn't need to duplicate information
  that's already in the file path.
8 years ago
James Cammarata 221520cbad Fixing type in 293723f (mock_handler -> mock_handler_task) 9 years ago
James Cammarata 0ea2b2a6af Fix unit test for base strategy in regards to handler changes 9 years ago
s-hertel e84ab95733 Fixing bug in GalaxyCLI test; creates temp dir for role_path instead … (#16689)
* Fixing bug in GalaxyCLI test; creates temp dir for role_path instead of installing to /etc/ansible/roles

* Update test_galaxy.py
9 years ago
nitzmahone de549ad675 update action unit test for powershell shebang behavior 9 years ago
s-hertel 9c925eeeab Adding a test for GalaxyCLI and two methods on which it depends. Tes… (#16651)
* Adding a test for GalaxyCLI and two methods on which it depends. Tests execute_info method.

*  Adding a test for GalaxyCLI and two methods on which it depends. Tests execute_remove method.

* Update test_galaxy.py

* Revising test for GalaxyCLI execute_remove.

* Removing mocks
9 years ago
Matt Clay 0ada7eae5e Add test tags for shell and command modules. 9 years ago
= 3c66caa058 fix win_msi tests by setting wait: true on all win_msi tasks.
I suspect this problem was masked previously as older versions of pywinrm
where significantly slower, allowing more time for the windows installer service to complete.
9 years ago
Matt Clay bbffa0a0e9 Add tags for modules without dedicated test roles. 9 years ago
James Cammarata cd4412016a Updating integration tests for async testing 9 years ago
Matt Davis 30c63a41e9 Merge pull request #16555 from matsu-chara/fix-error-msg-default-to-defaults
fix default/main.yml to defaults/main.yml
9 years ago
Matt Clay 9a6b8ab271 Add more tags to test_async role. 9 years ago
Matt Clay fdf22b5a40 Support module tests on a single image. (#16620) 9 years ago
Matt Clay 696feacbb6 Add script to generate module tests. (#16617) 9 years ago
Robin Roth d0ccedc617 Fix git shallow update (#16224)
* add git shallow fetch test

covers https://github.com/ansible/ansible-modules-core/issues/3782

updating a repo with depth=1 fails silently if version==HEAD

* raise git version support supporting depth to 1.9.1
9 years ago
Robin Roth 1f04130c00 add more distribution version tests (#16563)
* ubuntu 16.04
* solaris 10, 11
* fedora 22, 25

Thanks Peter Oliver for providing the test data
9 years ago
Robin Roth 8021adfe97 use git-core ppa instead of menulibre
menulibre is no longer actively maintained and does not support 16.04
9 years ago
Robin Roth a5e394d23a reenable apt_repository tests in ubuntu 16.04
fixes #15718
9 years ago
matsu-chara 9f8b0cabcd fix default/main.yml to defaults/main.yml 9 years ago
Matt Clay 4e369a31db Fix test_async. (#16552)
* Conditionally run test_async in docker containers.
* Revise test_async test.
9 years ago
Matt Clay 292785ff2b Parse async response in async action. (#16534)
* Parse async response in async action.
* Add async test for non-JSON data before module output.
* Fix existing async unit test.

Resolves #16156
9 years ago
Abhijit Menon-Sen 950cc26aab Use loop_control.loop_var directly
6eefc11c converted task.loop_control into an object, but while the other
callers were updated to use .loop_var instead of .get('loop_var'), this
site was overlooked.

This can be reproduced by including with loop_control a file that does
set_fact; a simple regression test along these lines is included.
9 years ago
Matt Clay fbfadc47c7 Update shippable shared dir for COPY_SOURCE. (#16511)
Tests now use '/shared' instead of '/tmp/shared-dir' when using
COPY_SOURCE. This avoids issues with containers purging '/tmp'.
9 years ago
Matt Clay f1e1558f4f Unpin yamllint now that version 1.3.2 is out. (#16479)
The newer version of yamllint fixes the UnicodeEncodeError
which previously required pinning the version to 1.2.2.
9 years ago
jctanner 4ba60d00c8 Refactor the parameter splitting in ini lookup to handle more path formats (#16477)
Refactor the parameter splitting in ini lookup to handle more path formats.

Fixes #16468
9 years ago
Matt Clay 394430a61e Switch test_lookups to badssl/local testing. (#16466)
* Switch test_lookups to badssl/local testing.
* Use var for checking badssl host content.
9 years ago
Matt Clay 81a49912b0 Pin yamllint to 1.2.2 to avoid issues in 1.3.0. (#16464)
This also moves shippable test requirements to external files.
9 years ago
Pilou b361bf90d7 Lookup password omit salt (#16361)
* Lookup unencrypted password must not include salt
* Integration test lookup: remove previous directory
* Test that lookup password doesn't return salt
* Lookup password: test behavior with empty encrypt parameter

Closes #16189
9 years ago
Matt Clay 1b29c87936 Test ansible version and ping during sanity tests. (#16441) 9 years ago
YueMing Qin 310692abe0 Changes to be committed: (#16430)
renamed:    lookup_pipe.py -> lookup_pipe.yml
9 years ago
nitzmahone 1f92ade584 add integration test to assert included tasks run in proper order 9 years ago
Matt Clay 8a55a446bf Fix fedora23 Dockerfile after fedora:23 updates. 9 years ago
Pilou 7ffbbd34f4 Add python-passlib to docker images. (#16376)
Related to #16361
9 years ago
Matt Clay 7de23a1c5b Update opensuseleap Dockerfile.
- Do not update base image packages unnecessarily.
- Fix incorrect package names.
- Remove commented out RUN statements.
- Sort list of packages to install.
9 years ago
jctanner b7f9037b5b Add test for multi-options in authorized_key (#16375)
Addresses https://github.com/ansible/ansible-modules-core/issues/1715
9 years ago
James Cammarata ca6ee4c789 FEATURE: handler listeners
Fixes ansible/proposals#8
9 years ago
James Cammarata 8218591fec Track notified handlers by object rather than simply their name
Due to the fact that roles may be instantiated with different sets of
params (multiple inclusions of the same role or via role dependencies),
simply tracking notified handlers by name does not work. This patch
changes the way we track handler notifications by using the handler
object itself instead of just the name, allowing for multiple internal
instances. Normally this would be bad, but we also modify the way we
search for handlers by first looking at the notifying tasks dependency
chain (ensuring that roles find their own handlers first) and then at
the main list of handlers, using the first match it finds.

This patch also modifies the way we setup the internal list of handlers,
which should allow us to correctly identify if a notified handler exists
more easily.

Fixes #15084
9 years ago
Nate Coraor 706778ee7f Fix distro detection for Solaris derivatives 9 years ago
nitzmahone 7bc3be64ae fix win_setup integration test to match fact name 9 years ago
= 9857af2b6e added further tests for win_regedit to cover the changes made
under https://github.com/ansible/ansible-modules-extras/pull/2436
9 years ago
jctanner 587d3c368b Fix synchronize+vagrant dest assertions that were incorrect. (#16291)
Addresses #16284
9 years ago
Matt Clay cabbafb650 Update Fedora and CentOS docker images.
- Reduce image size by skipping weak package references.
- Consolidate and sort packages to install.
- Improve consistency between versions.
- Combine yum/dnf install and clean to avoid unwanted caching.
- Don't update existing packages from base image unnecessarily.
9 years ago
Matt Clay 82b978e186 Add curl to Ubuntu docker images. 9 years ago
Matt Clay 349b06974e Update Ubuntu docker images.
- Reduce image size by skipping recommended packages.
- Consolidate and sort packages to install.
- Improve consistency between Ubuntu versions.
- Combine apt-get update and install to avoid caching stale updates.
9 years ago
Matt Clay 2f1fc5a324 Update integration test runner on shippable. 9 years ago
Matt Clay 62e6f6b885 Add junit-xml to docker images. 9 years ago
jctanner 3b3ab605f6 Add a get_url test for www.google.com (#16212)
Add a get_url test for www.google.com

Addresses #16191
9 years ago
Dag Wieers d91df20620 Fix unit tests for module_name commit #16087 9 years ago
Brian Coca a529a60478 raw should not use default executable (#16085)
also removed unused cruft in script
9 years ago
Toshio Kuratomi 872f3c5503 Revert "Add git shallow fetch test (#16055)" -- Broke integration tests:
https://app.shippable.com/runs/57599a7897ae890c00c2898d

This reverts commit e81f14ab48.
9 years ago
Robin Roth e81f14ab48 Add git shallow fetch test (#16055)
* add git shallow fetch test

covers https://github.com/ansible/ansible-modules-core/issues/3782

updating a repo with depth=1 fails silently if version==HEAD

* disable git shallow tests for old git versions

Older git versions don't treat the --depth option correctly.
While the git module tried to work around this and introduced subtle
bugs, ansible/ansible-modules-core#3794 falls back to full checkouts.
Don't run the tests then.
9 years ago
James Cammarata fbec2d9692 Expand return code values returned by TQM and strategies
This allows the PlaybookExecutor to receive more information regarding
what happened internal to the TaskQueueManager and strategy, to determine
things like whether or not the play iteration should stop.

Fixes #15523
9 years ago
Matt Clay 03597143d0 Detect use of Travis tests on Shippable.
This can occur when building pre-Shippable branches or PRs.
9 years ago
James Cammarata 61f132a609 Adding unit tests for playbook group/host vars 9 years ago
Toshio Kuratomi 5a3493be5f Port urls.py to python3 and other byte vs text fixes (#16124)
* Port urls.py to python3

Fixes (largely normalizing byte vs text strings) for python3

* Rework what we do with attributes that aren't set already.

* Comments
9 years ago
Matt Clay 6e1e86028f Split integration tests into multiple groups.
This will allow tests to complete much faster.
9 years ago
Toshio Kuratomi 73bb06ae84 Fix the code-smell tests for six again 9 years ago
Adrien Vergé 4d48711242 Fix YAML source and check it on Shippable (#15678)
Fix YAML source and check it on Shippable
9 years ago
Matt Clay 643a7ec01d Merge pull request #16126 from mattclay/shippable-fix
Update how shippable scripts are called.
9 years ago
Matt Clay 7a533406f9 Merge pull request #13145 from Mic92/devel
lxc connection plugin
9 years ago
Matt Clay 6d74f43eff Update how shippable scripts are called. 9 years ago
Saran Ahluwalia fda927a14b added failing test for testing if executable is not empty string 9 years ago
Matt Clay b0e1efbd62 Add full support for Shippable CI. 9 years ago
Toshio Kuratomi 08fd017d99 Test file needed to be renamed 9 years ago
Toshio Kuratomi 2a5ef4496a Workaround test failures on OSX controllers for now -- will have to look
more heavily into normailizing the unicode later.
9 years ago
Toshio Kuratomi f86df7c88b Test that task.args are also set properly (#15950) 9 years ago
Adrian Likins 644f0fb190 Merge pull request #15178 from alikins/galaxy_info_output
galaxy info displayed 'galaxy_info' section wrong [fix for #15177]
9 years ago
Brian Coca 3387d557bc Revert "Add prefixing and suffixing fuctionality to assemble module" (#16084) 9 years ago
Matt Clay e45b3b89a2 Skip some service tests for systemd. 9 years ago
jctanner c52cea8db3 Add a framework, fixtures and test for common synchronize scenarios. (#15983)
* Add a framework, fixtures and test for common synchronize scenarios.

Addresses #15905
9 years ago
Chris Houseknecht ce34397cf8 Merge pull request #10399 from underyx/assemble-with-prefix-and-suffix
Add prefixing and suffixing fuctionality to assemble module
9 years ago
jctanner 373b23cc24 Fix mock loader for osx /etc symlinks (#16074)
Fix role based unit tests for osx via mock.patch
9 years ago
Robin Roth c06884eff0 Run tests on ubuntu1604 and opensuseleap (#15936)
* reduce async sleep time in test
* make zypper test less destructive (don't break following uses of zypper)
* fix ca cert on suse
* fix/enable postgres/mysql on opensuseleap
* fix mysql test for mysql versions 5.7.6 and newer
* skip sni_host check on ubuntu1604
* add HTTPTESTER flag for test_uri

ubuntu 16.04 uses dash which drops env variables containing a dot
we work around this by adding an explicit env variable to enable httptester
9 years ago
Bence Nagy 13210e346f Add integration test for assemble with a header and a footer 9 years ago
Matt Clay 027006b846 Don't use TEST_FLAGS for the test_tags target.
This allows use of --skip-tag in TEST_FLAGS without conflicting with the test.
9 years ago
Matt Clay 844b415066 Mark tasks expected to fail with EXPECTED FAILURE.
This allows for automated identification of tasks which are
expected to fail, but which cannot use ignore_errors because
they need to fail.
9 years ago
Adrian Likins 1468538414 galaxy info displayed 'galaxy_info' section wrong
The output of 'ansible-galaxy info' was formatting the
'galaxy_info' key with one char per line.

Previously, when building the output string, items in
role_info that had a dict for value, the label for
it's key ('galaxy_info' for ex) was being added to
the text list in addition to being appended. Only
the append is needed.

Also added a unit test in test/units/cli/test_galaxy.py,
but skip it on py3 until galaxy is py3 compatible.

fixes #15177
9 years ago
jctanner 018d3c3118 Add a new vmware inventory script backed by pyvmomi (#15967)
Add a new dynamic vmware inventory script backed by pyvmomi
9 years ago
Jörg Thalheim 88482234e6
lxc connection plugin 9 years ago
Toshio Kuratomi c03555b650 Fix unarchive failures when the destination is a symlink to a directory (#15999)
Also add integration tests for this problem and unicode filenames inside
a tarball.

Fixes #3725
9 years ago
Matt Clay b755bcd875 Corrected reference to httptester container. 9 years ago
Matt Martz 164f247ec8 Add httptester docker container files and update run_tests.sh to use ansible/httptester 9 years ago
Brian Coca 329c62e914 docker was deprecated, test now reflects new name 9 years ago
Toshio Kuratomi 650bfdce8f Update grep for six to not falsely trigger when six is only a substring of a different library 9 years ago
Robin Roth 0edec45c3d install packages for tests (#15979)
* curl is needed for test_binary_modules
* glibc-i18ndata is needed for postgresql (localedef)
9 years ago
John R Barker 1861151fa4 [WIP] Extra test and build dependencies in Docker images (#15692)
* Merge conflicts:

* [skip ci] Revert changes to run_tests.sh

gundalow will update this in a different PR

* [skip ci] Add in ubuntu1604 and opensuseleap

NOTE: We are not configuring anything to use these new images yet.
Therefore no impact on Travis performance

* python-mysql for opensuse

* It's mysql-server on centos6
9 years ago
Toshio Kuratomi b41b6b2ec5 Update test off make_become for ssh pty race mitigation (#15931) 9 years ago
nitzmahone 42f6114b61 fix windows integration tests to run under kerberos users 9 years ago
Michael Scherer 376fc21f92 Add a exception for module_utils/six.py regarding code smell (#15878)
Since six replace urlopen, it is normal to trigger the test,
hence the exception
9 years ago
Michael Scherer cc61531a74 Do not test vca and vmware.py for py2.4 (#15887)
Since both of them depend on libraries not
working on python 2.4, we shouldn't restrict
ourself on 2.4, cf https://github.com/ansible/ansible/pull/15870
9 years ago