* Add --venv delegation to ansible-test.
* Update import sanity test venv creation.
* Fix import test when using --venv on Python 2.x.
* Improve virtualenv setup overhead.
* Hide pip noise for import sanity test.
* Raise verbosity on venv info messages.
* Get rid of base branch noise for collections.
* Add missing --requirements check.
* Files from PR#60621, continue working on fortios_facts modules
* PR#61405 unit test module test_fortios_facts.py
* sanity fixed in test_fortios_facts unit test module
* support wjh module config with testing file
* Fix version, fix enable/disable all groups
* refactor get current group status
* fix indentation and change command_generate function, add test cases and check them
* Update onyx_wjh.py
fix description
* Update onyx_wjh.py
remove extra spaces, add type to choices after run validate-modules
* fix format string - pytest use 2.6.6 format function
* Remove unused imports
* chenge onyx_wjh file permessions
* Fix version, fix enable/disable all groups
* fix indentation and change command_generate function, add test cases and check them
* support wjh module config with testing file
* Fix version, fix enable/disable all groups
* refactor get current group status
* fix indentation and change command_generate function, add test cases and check them
* Update onyx_wjh.py
fix description
* Update onyx_wjh.py
remove extra spaces, add type to choices after run validate-modules
* fix format string - pytest use 2.6.6 format function
* fix format string - pytest use 2.6.6 format function
* chenge onyx_wjh file permessions
* new module
* icx_cliconf
* icx test units module
* icx units module
* added notes
* new changes
* new module
* new fix
* new changes
* new fixes
* new changes
* Rebase
* Remove .keep files from test/results/ dirs.
* Remove classification of test/results/ dir.
* Add results_relative to data context.
* Use variables in delegation paths.
* Standardize file writing and results paths.
* Fix issues reported by PyCharm.
* Clean up invocation of coverage command.
It now runs through the injector.
* Hack to allow intercept_command in cover.py.
* Simplify git ignore for test results.
* Use test result tmp dir instead of cache dir.
* Remove old .pytest_cache reference.
* Fix unit test docker delegation.
* Show HTML report link.
* Clean up more results references.
* Move import sanity test output to .tmp dir.
* Exclude test results dir from coverage.
* Fix import sanity test lib paths.
* Fix hard-coded import test paths.
* Fix most hard-coded integration test paths.
* Fix PyCharm warnings.
* Fix import placement.
* Fix integration test dir path.
* Fix Shippable scripts.
* Fix Shippable matrix check.
* Overhaul key pair management.
* new module
* new module
* new module
* new terminal
* new terminal
* new terminal
* new terminal
* new terminal
* new terminal
* new cliconf
* new cliconf
* cliconf
* cliconf
* icx cliconf
* icx cliconf
* icx_cliconf
* icx_cliconf
* icx test units module
* icx test units module
* icx units module
* icx units module
* icx banner unit test
* icx banner unit test
* icx banner unit test
* PR changes resolved
* PR changes resolved
* changes resolved
* changes resolved
* Changes Resolved
* Changes Resolved
* check_running_config changes resolved
* check_running_config changes resolved
* check_running_config changes resolved
* added notes
* added notes
* new changes
* PR comments resolved
* new module icx_interface
* new module icx_interface
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* new fix
* new fix
* new fix
* new fix
* new fix
* new fix
* new fix
* new fix
* new fix
* new fix
* new fix
* new changes
* new changes
* new changes
* new changes
* new changes
* new changes
* notes updated
* Update icx.py
* Whitespace error
* new module
* icx_cliconf
* icx test units module
* icx test units module
* icx units module
* icx units module
* icx banner unit test
* added notes
* new changes
* New branch to prevent complex rebase
* Rebase had problems
* win_updates: Add flag to only download updates without installing them
* Fix test
* Fixes ansible-test (pep8)
* Fix integration test
* Fix actual fix.
* Change collection PS util import pattern
* Add changes for py2 compat
* fix up regex and doc errors
* fix up import analysis
* Sanity fix for 2.6 CI workers
* Get collection util path for coverage collection
* add locks
* rename the module
* add test
* add test
* address comments
* add quote
* can list child scope lock
* minor docs tweaks
* Add files via upload (#62)
* change '\r\n' to '\n' (#63)
* Small changes, just to trigger CI verify.
* trigger CI verify
* remove 's'
* Update according by comments
* change small for trigger CI check
* Rename OneView _facts modules -> _info
* Adjust PR #.
* Forgot to update test names.
* Remove superfluous blank line.
* Some more things from review.
* Added coverage collection for PowerShell - ci_complete ci_coverage
* uncomment out coverage uploader call
* Generate XML for PowerShell coverage
* Use whitelist to exclude coverage run on non content plugins
* Remove uneeded ignore entry
* Try to reduce diff in cover.py
* Fix up coverage report package - ci_complete ci_coverage
* Initial commit for rate limiting
- Detects if error code is 429
- Pauses for random time between .5 and 5 seconds before retrying
- If it fails 10 times, give up and tell user
* Redo structure of request() to support rate limiting
* Hold down timer is now a sliding scale
- 3 * number of retries
- Fails after the 30 second wait
* Whitespace fixes
* Redo implementation using decorators
- Errors aren't tested but code works for regular calls
* Unit tests work for error handling
* Add integration tests for successful retries
* Add condition for 502 errors and retry
* Move _error_report out of the class
* PEP8 fixes
* Add changelog entry
ansible-test: async deployment w/ vcenter provider
So far, `ansible-test`'s vcenter provider was trigger by a blocking POST
call. Since the depoyment take a lot of time (> 8m), we decided to use
an async call instead and poll the API server until the deployment
is ready.
`vmware_guest_disk_info` expects the VM to be running. Since
964783fbd2, `prepare_vmware_tests`
creates the test VM with the `powered-off` state. This to increase
the performance.
This commit ensures the test-suite actually run against a running VM,
as expected.
* Add controller ownership and cache without batteries option
* Add unit test for new netapp_e_volume options
* Add integration tests for netapp_e_volume module.
* Changed default read_ahead_enable option to true in netapp_e_volume module.
* Fix off-segment aligned volume size in netapp_e_volume module.
* add module to create aci VMM credential objects
add initial remove and add integration tests for VMM credential objects
* update 'credential' var name to 'name'
* move vmware tests to domain type specific file
* move vmware tests to domain type specific file
add include task in main file to reference domain type specific tests
* update task names
add test to remove credential prior to first credential add
add tests for querying individual credentials
add tests for query all credentials
add additional tests for removing credentials
* update version added to 2.9
remove invalid module references from 'seealso' section
* fix list reference in query all assertions
* add reference to VM_PROVIDER_MAPPING keys for vm_provider arg
* FortiOS System Fimrware Upgrade Module
* default timeout 12 seconds is not enough for large firmware or slow connection, increase it to 300 seconds
* update fortios system firmware upgrade module together with unit test
* minor updates based on the new templates
* minor updates and remove fortiosapi dependency in unit test module
* add author, remove unused method, fix descriptions, apply some sanity fixes
* FortiOS modules for 2.9 - 9
* Undo ignore file
* Remove non valid identifiers
* Leave fortios_switch_controller_lldp_profile and fortios_switch_controller_managed_switch out of this PR
* Updated fortios_switch_controller_lldp_profile and fortios_switch_controller_managed_switch
* Fix junos resource modules group based config and minor updates
Fixes https://github.com/ansible/ansible/issues/61183
* Add support to get inherited configuration for resource
modules to handle group based configuration
* Add task input check for merged, replaced and overridden
states in junos resource modules
* Integration test for group based configuration
* Fix CI test failures
* Fix test failures
* Fortinet's new module for fortios_wireless_controller_hotspot20_hs_profile
* Update fortios_wireless_controller_hotspot20_hs_profile.py and test_fortios_wireless_controller_hotspot20_hs_profile.py
* Remove pointless sanity tests on `bin` dir.
* Update action-plugin-docs test for collections.
* Update no-main-display test for collections.
* Update empty-init test for collections.
* Update no-assert test for collections.
* Move required-and-default-attributes test.
This test only applies to Ansible itself.
* Update use-argspec-type-path test for collections.
* add azure monitor log profile module
* fix version
* fix lint
* mark test as unsupported
* fix lint
* fix lint
* Fix the error prompted in the comments
* Add retrieve_orders option.
* Run acme_certificate tests also for acme_account_info; use acme_account_info to get list of orders.
* Doing some quoting.
* Improve returned description.
* Added comment field to na_ontap_volume module
* fixed zapi attribute name in create_volume_options(), and fix to ensure comment field can be set back to an empty string
* Properly JSON encode AnsibleUnsafe, using a pre-processor. Fixes#47295
* Add AnsibleUnsafe json tests
* Require preprocess_unsafe to be enabled for that functionality
* Support older json
* sort keys in tests
* Decouple AnsibleJSONEncoder from isinstance checks in preparation to move to module_utils
* Move AnsibleJSONEncoder to module_utils, consolidate instances
* add missing boilerplate
* remove removed.py from ignore
* Add missing HA admission control policies
* Add new parameter host_isolation_response
* Bugfix: 'das_vm_config' referenced before assignment
* Implement test cases
* new cliconf
* cliconf
* icx cliconf
* icx test units module
* icx units module
* icx banner unit test
* added notes
* new changes
* icx .rst
* modified platform_index.rst
* test
* Revert "test"
This reverts commit 99b72c6614.
* new module icx_facts
* fixtures added
* Rebase causing problem on branch-PR4. So created new PR
* new commit
* new changes
* adding group parameter for win_firewall_rule
* integration test fix
* changing the version add to 2.9
* setting group optional
* fix:setting required to optional
* Added NetApp ONTAP Adaptive QoS Policy Module
* updated documentation to fix validation errors
* Updates to documentation fields and modified logging function to log against the current vserver
* Fixed minor formatting issues
* Documentation update for consistency - author field
* Empty commit to force CI
* fixes
* ec2 inventory/rds: (integration tests) migrate to module_defaults and cope with missing security_token
* ec2 inventory/rds: (integration tests) Avoid hard coding the parameter group name
Generated it based on the information returned when creating the RDS instance.
* ec2 inventory/rds: (integration tests) rename templates to .j2 rather than .yml
- avoids throwing yamllint errors
- makes it clear they're templates not the final yaml files.
* Relocate ansible-test self tests outside package.
We don't want to include the tests for verifying ansible-test within the ansible-test package.
* Add `test/ansible_test/` to classification.py.
* Fix test invocation.
* Relocate tests in MANIFEST.in.
* Improve package-data sanity test error checking.
* Only use includes for ansible-test in MANIFEST.in.
* Improve readability of MANIFEST.in.
* Run no-unwanted-files sanity test only on Ansible.
Since collections should be able to use binary modules there is not really any limit on what could exist in a collection `plugins` directory.
* Add support for symlinks in sanity target lists:
- Sanity tests that need to analyze symlinks can do so using the supplied target list.
- Tests that analyze directories will now only look at symlinks if requested.
- Directory symlinks will now be seen as directories instead of files.
* Enable symlinks on filename based sanity tests.
Sanity tests that evalulate filenames instead of content should include symlinks.
* Update symlinks sanity test.
Use the sanity test target list now that it can include symlinks.
* aws_kms: (integration tests) Test updating a key by ID rather than just my alias
* aws_kms: (integration tests) Test deletion of non-existent and keys that are already marked for deletion
* aws_kms: Ensure we can perform actions on a specific key_id rather than just aliases
In the process switch over to using get_key_details rather than listing all keys.
* aws_kms: When updating keys use the ARN rather than just the ID.
This is important when working with cross-account trusts.
* Renaming `onepassword_facts` to `onepassword_info`.
* Update module examples.
* Add changelog fragment.
* Add module rename to the 2.9 porting guide.
* Document the parameter types in the module docs.
* Fix incorrect parameter name.
* Update docs/docsite/rst/porting_guides/porting_guide_2.9.rst
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Remove `onepassword_facts` as it has been renamed to `onepassword_info` including fixes for the sanity tests.
* Add support for SubjectKeyIdentifier and AuthorityKeyIdentifier to _info modules.
* Adding SubjectKeyIdentifier and AuthorityKeyIdentifier support to openssl_certificate and openssl_csr.
* Fix type of authority_cert_issuer.
* Add basic tests.
* Add changelog.
* Added proper tests for _info modules.
* Fix docs bug.
* Make sure new features are only used when cryptography backend for openssl_csr is available.
* Work around jinja2 being too old on some CI hosts.
* Add tests for openssl_csr.
* Add openssl_certificate tests.
* Fix idempotence test.
* Move one level up.
* Add ownca_create_authority_key_identifier option.
* Add ownca_create_authority_key_identifier option.
* Add idempotency check.
* Apparently the function call expected different args for cryptography < 2.7.
* Fix copy'n'paste errors and typos.
* string -> general name.
* Add disclaimer.
* Implement always_create / create_if_not_provided / never_create for openssl_certificate.
* Update changelog and porting guide.
* Add comments for defaults.
* aws_kms: (integration tests) Use module_defaults to reduce the copy and paste
* aws_kms: (integration tests) make sure policy option functions.
* aws_kms: (integration tests) Move iam_role creation to start of playbook.
iam_roles aren't fully created when iam_role completes, there's a delay on the Amazon side before they're fully recognised.
* aws_kms: Update policy on existing keys (when passed)
* Fortinet's new module for fortios_wireless_controller_hotspot20_anqp_roaming_consortium
* Update fortios_wireless_controller_hotspot20_anqp_roaming_consortium.py
* Fortinet's new module for fortios_wireless_controller_hotspot20_h2qp_conn_capability
* Update fortios_wireless_controller_hotspot20_h2qp_conn_capability.py
DCI uses an inventory directory instead of a file, along with --no-temp-workdir.
This changes the inventory check to keep that scenario working until all DCI jobs can be migrated to Zuul.
* iam_password_policy: (integration tests) Use module defaults for AWS connection details
* iam_password_policy: (integration tests) Ensure the policy is removed when tests fail
* iam_password_policy: (integration tests) Add regression test for #59102
* iam_password_policy: Only return changed when the policy changes.
* iam_password_policy: PasswordReusePrevention must be omitted to remove/set to 0
* #60930 add changelog
* Update hacking AWS security policy to allow testing of Password Policy Management
* #60921 add max_allocated_storage parameter add apply that parameter also to the integration test
* version_added 2.9
* test value of max allocated storage
* PR Update to fmgr_fwpol_ipv4 -- now allows for failure or skip behavior option upon missing dependencies
* fmgr_fwpol_ipv4 minor docs fix
* Removed "system_package_print" line from test/sanity/ignore.txt as instructed by failed shippable test.
Actual PR module isn't affected.
* Update ansible-test collection inventory handling.
- The `windows-integration` command now supports the `--inventory` option.
- The incomplete support for host_vars and group_vars directories has been removed.
- The incomplete support for an inventory directory has been removed.
- The inventory specified by `--inventory` can now reside outside the install and content roots.
- Using `ansible_ssh_private_key_file` with `--docker` or `--remote` results in a warning about the combination being unsupported and likely to fail.
* Fix config handling.
* Fix payload handling of ssh keys.
* Disable pylint no-self-use rule for ansible-test.
* De-duplicate payload paths.
* Rename hcloud_datacenter_facts to hcloud_datacenter_info
* Rename hcloud_location_facts to hcloud_location_info
* Rename hcloud_image_facts to hcloud_image_info
* Rename hcloud_floating_ip_facts to hcloud_floating_ip_info
* Rename hcloud_server_type_facts to hcloud_server_type_info
* Rename hcloud_server_facts to hcloud_server_info
* Rename hcloud_ssh_key_facts to hcloud_ssh_key_info
* Rename hcloud_volume_facts to hcloud_volume_info
* Fix typo in hcloud_image_info
* Add to porting guide and add changelog fragment
* Reword porting guide
* add subdir support to collection loading
* collections may now load plugins from subdirs under a plugin type or roles dir, eg `ns.coll.subdir1.subdir2.myrole`->ns.coll's roles/subdir1/subdir2/myrole, `ns.coll.subdir1.mymodule`->ns.coll's plugins/modules/subdir1/mymodule.py
* centralize parsing/validation in AnsibleCollectionRef class
* fix issues loading Jinja2 plugins from multiple sources
* resolves#59462, #59890,
* sanity test fixes
* string fixes
* add changelog entry
* Install ansible-test
Modify the install script to install ansible-test and its supporting
code. Alternative to #60701 that doesn't change package_dir ansible for
fear that it might regress https://github.com/ansible/ansible/issues/10437
Also:
* No longer use package_data. Everything in the package dirs is going
to be installed. Anything that shouldn't be installed needs to be
moved elsewhere.
* modify the algorithm to store symlinks which are in the same tree
instead of same directory
* Add ansible_test files to package-data sanity test
* MANIFEST.in cleanups
* Add lib/ansible/config/*.yml
* Make most things in code directories (lib/ansible and test/lib/ansible_test/)
use explicit file extensions instead of wildcards for maintainability
* Exclude common file extensions that we don't want included in the code
directories
* Change package-data test to be more complete
* Now compares the repository, sdist, and install
* Compares both that everything in the sdist is in the repo and
everything in the install is in the sdist in addition to comparing that
everything in the repo that we want is in the install
* Leave out test artifacts
Only include the directory structure for test/results and test/cache not
any files that may have been generated by test runs
Remove test/utils files from the sdist as these are only needed for our CI
cleanup of docs in MANIFEST.in; getting rid of build files.
* Add the ability to output sdist and snapshot to specific directory
* Add a warning about modifying the heuristic to setup.py
* Address generated files
* Use make snapshot instead of sdist to generate changelog and man pages
and make sure they're included
* Ignore both the test/utils and generated test files (results, cache)
* Deal with Python3 __pycache__ byte code caches
* Don't check documentation, that isn't built for the sdist
* Restructure for clarity
* Add cli web docs to make clean
This was causing problems when attempting to test that the sdist didn't
have extra files
* Fix bug constructing python names from __pycache__ names
* Create a clean repo to work from
* Exclude test/legacy and be more explicit on extensions
* Exclude the legacy directory from sdist
* fix: check_mode, add suboptions, return the facts
* pip8, ansible_facts, get_payload
* add space to create PR
* remove space to create PR
* test tests of cp_network
* change for the test of network
* fixes to pass the tests
* fix tests
* Update ignore.txt
* Fixed format issues reported by pre-check tests
* Changes as per review comments. using single api_client between util class and module
* re-running the task to check the idempotency of module object
* ansible-galaxy: support multiple servers on install
* Added docs for the server configuration file
* Fix up doc string for requirements file format
* Fix bugs after testing
* Fix kwarg doc and added version
* Fix typo and doc improvement
* Fix base64 encoding and allow --server to override list
Host specific settings are created as part of the generated inventory instead of using a host_vars directory.
Also update connection tests to work properly with the generated inventory changes.
Preserve tag key case by only calling camel_dict_to_snake_dict once,
before the tags are added.
Don't call assert_policy_shape as it seems to fail
Use aws_caller_info in the test suite now that it exists rather
than running `aws sts get_caller_identity`
Ensure that calls using `grant_types` can also use key aliases
* Add information how to change Python interpreter used by Ansible.
* Update lib/ansible/module_utils/basic.py
Co-Authored-By: Abhijeet Kasurde <akasurde@redhat.com>
* Make test less dependent on exact message.
* Add support for configurable terminal plugin options
Fixes#59404
* Add terminal options to support platform specific login menu
* Add terminal options to support configurable options for stdout
and stderr regex list
* Fix CI failures
* Fix CI issues
* Fix review comments and add integration test
* Fix sanity test failures
* Fix review comments
* Fix integration test case
* Fix integration test failure
* Add support to configure terminal related options
Fixes https://github.com/ansible/ansible/issues/59404
* Add network_cli configurable options to support platform specific login menu
* Add network_cli configurable options to support configurable options for stdout
and stderr regex list
* Fix review comment
* Fix review comment
* Add support for passing networks as dicts
* Add function to compare a list of different objects
* Handle comparing falsy values to missing values
* Pass docker versions to Service
* Move can_update_networks to Service class
* Pass Networks in TaskTemplate when supported
* Remove weird __str__
* Add networks integration tests
* Add unit tests
* Add example
* Add changelog fragment
* Make sure that network options are clean
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Set networks elements as raw in arg spec
Co-Authored-By: Felix Fontein <felix@fontein.de>
* Fix wrong variable naming
* Check for network options that are not valid
* Only check for None options
* Validate that aliases is a list
* Remove unused imports / variables for junos
This is to help with the migration to collections.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
* Remove duplicate execute_module() function for junos lacp_interfaces
This seems to have passed lint checks, but something we caught in
collection migration.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Today we are getting an Ansible templating exception because this
variable isn't defined. But we also don't want testing to run, as we
don't have ability to run this test in DCI.
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
* Add cryptography backend for get_certificate.
* Add changelog.
* Use short names (if possible).
* Adjust version (to behave as pyOpenSSL).
* Work around bugs (needed for cryptography 1.2.3).
* Don't run cryptography backend tests for CentOS 6.
* Bump cryptography requirement to 1.6 or newer.
Otherwise, signature_algorithm_oid isn't there, either.
* Simplify requirement text.
* CentOS 6 has cryptography 1.9, so we still need to block.
* Add auto-detect test.
* Improve YAML.
* Start of work to support collections
* remove version_added from base schema
* If a collection, pass that to validate-modules
* clean ups
* Allow version_added in a collection, just make it optional
* Don't traceback on missing doc_fragment
* Don't validate metadata in a collection
* fix: docker_swarm_service does not publish both tcp and udp ports for same published port
* fix the linting problems and add the changelog fragment.
* add test
* modify test to ensure result rather than return value
Creates the test VMs with `prepare_vmware_test`. Before this commit,
only one VM was created and the next step was failing because this was
not matching the expected list of VMs.
The `test/integration/integration_config.yml` vars file will now be loaded from the content under test and is now optional.
The `output_dir` and `win_output_dir` vars are now provided by ansible-test.
* Fix var_blending test temp dir usage.
* Fix filters integration test:
- Fix use of `output_dir`.
- Use `localhost` instead of `testhost` since we're only testing filters.
- Fix `fileglob` test to actually test a directory that exists.
* Fix lookups integration test:
- Fix use of `output_dir`.
- Use `localhost` instead of `testhost` since we're only testing lookups.
* Fix ansible-runner test temp dir usage.
* Fix template and template_jinja2_latest test.
Use the `OUTPUT_DIR` env var to get the output directory for the tests.
* Fix Python version compat in filters test.
* Skip filters test on Python 2.6.
* Initial commit for the most basic of unit tests
* Rewrote unit test to actually work
- Uses pytest's fixtures structure, not classes
- Added a test file for importing
* Whitespace fixes
* Draft version of the mock unit test
* Modify code to actually work!
* Add 429 testing
* ansible-test fixes
* Resort lines
* Fix import for 2.x compatibility
* Delay calling connect() until absolutely necessary
* Implement transport_test to enable wait_for_connection
* plugin might be connected already for some reason?
* ensure_connect for httpapi
There's some become shenanigans still needing to be ironed out
* Fix tests for network_cli
* FortiOS modules for 2.9 - 1
* Fix empty choices and avoid E337,E338 warnings
* Ansible comments on version_added and ignore.txt only on this PR files
* Add version_added also for state attribute
* Avoid null choices on dlp_sensor
* Change required flag according to argspec
* Fix xfs_quota integration test temp dir usage.
* Fix lvg integration test temp dir usage.
* Fix filesystem integration test temp dir usage.
* Fix connection_windows_ssh test temp dir usage.
* ansible-galaxy tidy up arg parse with better validation
* Add support back in for -v before sub aprser
* Added deprecation warning for manually parsed verbosity
* Move Ansible test config into env vars.
This allows ansible-test to use an empty Ansible config file, leaving open the option for users to customize the one used to run tests (although such usage is discouraged).
* Use config from content under test when present.
* Limiting when path_content is generated
path_content will be empty and unnecessary in all scenarios except when changing the state of a folder to absent, so adding in a check to limit when this parameter is defined