Commit Graph

54606 Commits (1b8bfd40abfaba139b9ffc76601551ec7720e1a5)
 

Author SHA1 Message Date
Matt Davis 1b8bfd40ab
bump devel to 2.19 (#83985) 2 months ago
Abhijeet Kasurde b5263c2c10
isidentifier: Remove Python 2 specific code (#83688)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2 months ago
Matt Clay 7693c892fa
ansible-test - Use Python version in pylint contexts (#83984) 2 months ago
Sloane Hertel bf8da52aac
ansible-galaxy - fix the usage for role/collection install (#83979) 2 months ago
Martin Krizek aa24e97435
dnf5: re-introduce ``state: installed`` alias (#83961)
Fixes #83960
2 months ago
Brian Coca 6efb30b43e
Do not convert floats to ints when there is truncation (#83864)
Adjusted error messages
fixed tests
removed py2 compat tests, since no more py2

Co-authored-by: Matt Clay <matt@mystile.com>
2 months ago
Sloane Hertel 40ade1f84b
Add mount_facts module (#83508)
* Add a mount_facts module capable of gathering mounts skipped by default
fact gathering

* By default, collect mount facts from standard locations including
/etc/mtab, /proc/mounts, /etc/fstab, /etc/mnttab, /etc/vfstab, and on AIX,
/etc/filesystems.

When no file-based source for the current mounts can be found
(like /proc/mounts), the module falls back to using mount as a source.
This allows BSD and AIX to collect the existing mounts by default, without
causing Linux hosts to use both /proc/mounts and mount output.

* Non-standard locations and "mount" can be configured as a sources.

* Support returning an aggregate list of mount points in addition to first
found.

When there are multiple mounts for the same mount point in an
individual source, a warning is given if the include_aggregate_mounts
option is not configured.

* Add options to filter on fstypes and devices (supporting UNIX shell
wildcards).

* Support configuring a timeout and timeout behavior to make it easier
to use the module as a default facts module without risking a hang.

* Include the source and line(s) corresponding to a mount for easier
debugging.

Co-authored-by: Brian Coca <bcoca@users.noreply.github.com>
Co-authored-by: Matt Clay <matt@mystile.com>
Co-authored-by: Matt Davis <6775756+nitzmahone@users.noreply.github.com>
2 months ago
Matt Martz 9ab63986ad
ansible-test no longer needs special casing in `__main__.py` (#83962) 2 months ago
Sloane Hertel 85d9a40aac
Clarify galaxy CLI --help about install locations (#83919)
* add descriptions for `ansible-galaxy install` and `ansible-galaxy role|collection install`

* fix the usage for installing roles and collections together and include collections in the description for -r

Closes #81159

Co-authored-by: Alan Rominger <arominge@redhat.com>
Co-authored-by: Sandra McCann <samccann@redhat.com>
2 months ago
Brian Coca bcee35385b
timedout extended (#83953)
* timedout extended

* add timedout test
2 months ago
Don Naro f00e3d7762
Update communication links for the forum (#83862)
* update communication details in README

* update comms details in contributing

* update comms details in issue templates

* add link to contributors guide

* point to devel for comms
2 months ago
Jordan Borean b5ae8a382b
runas - create new SYTEM token for become (#83827)
Instead of re-using the token used in impersonation, this change will
create a new token for the SYSTEM account as returned by LogonUser. The
benefits of this is that the token will contain the full privileges for
the SYSTEM account rather than potentially one that has restricted
privileges we used during impersonation. It should also help avoid
problems on Windows that fails on status 0x0000016F when the
impersonated token during become was from a process that is restricted
from creating sub processes.
2 months ago
Gleb Popov 33d4ba8fa2
file module: Clarify the docs that the force parameter works for hardlinks too (#83913) 2 months ago
Brian Coca 47e64dc371
service_facts, fix systemd/ubuntu failed reporting (#83424)
Avoid check description, better comments
2 months ago
Brian Coca d58988d8ff
fact gathering, mounts, fixes for single proc code and tests (#83866)
* Fact gathering fix 'no shm' branhc

* Use concurrent.futures instead of multiprocessing

This entirely avoids the need for fallback logic since the concurrent.futures thread pool does not depend on `/dev/shm`.

Co-authored-by: Matt Clay <matt@mystile.com>
2 months ago
Matt Clay 31d73b0645
Replace binary_modules Makefile with Python script (#83925)
Also update the platform list:

* Remove linux ppc64le
* Add darwin arm64
2 months ago
Matt Clay a84fa50096
ansible-test - Update base/default containers (#83930) 2 months ago
Matt Clay cf2a4a85da
ansible-test - Update sanity test requirements (#83921) 2 months ago
Matt Clay cd342f76b4
release.py - Use changelog requirements (#83920)
Use the changelog sanity test requirements instead of the package-data sanity test requirements.

This enables removal of most package-data sanity test requirements, as they are no longer used by the test itself.
The additional requirements were being maintained only to provide pinned requirements for building the changelog during a release.
2 months ago
Brian Coca 11e56d9c27
iptables, use existing validation (#83907)
also remove redundant  and wrong test
3 months ago
Sviatoslav Sydorenko (Святослав Сидоренко) 59b3e49d70
Stop suggesting `easy_install` in hacking (#83909)
It's been discouraged for the past decade. And CPython actually ships
with pip nowadays, that is bundled within the built-in `ensurepip`
stdlib module.
3 months ago
Brian Coca 9c49fdd86d
delay keyword changed from int to float (#83901)
* delay keyword changed from int to float

* draft test

* fixed test

* expanded test, fixed 'name' tests also

* cleanup

* fix
3 months ago
Suman Tripuraneni 0f6b58b5f2
Update subset.yml (#83908)
Typo error in examples
3 months ago
Brian Coca 4fa512406b
loop_control "early exit" feature (#62151)
* add a loop_control break_when directive to break out of a loop after any item

* remove loop var as normal exit would

* example usage:

- name: generate a random password up to 10 times, until it matches the policy
  set_fact:
    password: "{{ lookup('password', '/dev/null', chars=character_set, length=length) }}"
  loop: "{{ range(0, 10) }}"
  loop_control:
    break_when:
      - password is match(password_policy)

Co-authored-by: s-hertel <19572925+s-hertel@users.noreply.github.com>
3 months ago
Matt Clay e3ccdaaa2e
release.py - Include pyproject.toml in git add (#83892) 3 months ago
Matt Clay b544ac13ec
release.py - Add missing setuptools arg to prepare (#83887)
* release.py - Add missing setuptools arg to prepare

This allows the prepare command to accept the `--no-setuptools` argument.

It also fixes a traceback when using the `prepare` command.

* Use a more accurate type hint
3 months ago
Matt Davis 24e5b0d4fc
Add DaemonThreadPoolExecutor impl (#83880)
* Add DaemonThreadPoolExecutor impl
* Provide a simple parallel execution method with the ability to abandon timed-out operations that won't block threadpool/process shutdown, and without a dependency on /dev/shm (as multiprocessing Thread/Process pools have).
* Create module_utils/_internal to ensure that this is clearly not supported for public consumption.
3 months ago
Jordan Borean 1a4644ff15
psrp - Remove extras lookups (#83760)
* psrp - Remove extras lookups

Removed the extras variable lookups for the psrp connection plugin. All
valid options are already documented and the extras functionality is
slated to be deprecated at a future point in time. This should have
affect on existing user's playbooks.

* Fix up sanity tests and add explicit boolean conversion test
3 months ago
Jordan Borean 1503805b70
Add location on include_tasks fail inside include (#83876)
Adds the datastore details to the parser error when attempting to
include tasks that contain include_tasks without a filename set. This
change will now display the exact location of the include_tasks that
failed like any normal syntax error.
3 months ago
Matt Clay 4346430003
ansible-test - Reduce scope of empty-init test (#83878) 3 months ago
Matt Clay 49490d92c3
Update boilerplate sanity test (#83879)
The `annotations` future can now be imported as `_annotations`.
3 months ago
John Barker 8b8a249d26
Remove references to IRC or Google Groups (#83875) 3 months ago
Matt Clay 9d42b34ed3
Fix Windows entries in test matrix (#83873)
The display names need to be set so code coverage reporting works.
3 months ago
Jordan Borean 9a5a9e48fc
Improve testing for Windows SSH and other connection plugins (#83834)
Expands the test matrix used for testing on Windows to cover the three
connection plugins we support for all the tasks. This change also
changes how raw commands are run over SSH to avoid starting a
`powershell.exe` process that was uneeded in the majority of cases used
in Ansible. This simplifies our code a bit more by removing extra
Windows specific actions in the ssh plugin and improves the efficiency
when running tasks.
3 months ago
Matt Clay db04499f58 ansible-test - Update nios-test-container to 5.0.0 3 months ago
Martin Krizek 1f987423fd
Print the name of the option being deprecated (#83761)
Fixes #83759
3 months ago
Matt Davis c6a391c8d8
fix delegate_to integration test (#83865)
* the test was previously passing erroneously due to the `timeout` elapsing in CI, and that the `failed` test does not encompass `unreachable`
3 months ago
Brian Coca 2a676ff897
copy, fix permissions and atime on diff partitions (#83824)
we just set time also, when on diff partitions
3 months ago
Felix Fontein faf446a895
runtime-metadata sanity test: do not fail deprecation version checks if galaxy.yml has empty `version` (#83831)
* Do not create invalid SemanticVersion objects.
* Fix SemanticVersion.parse().
* Add basic runtime-metadata tests.
3 months ago
jctanner bed9a9597a
galaxy-cli tasking polling interval from environment variable (#83803)
Added configuration options, including environment variables to control the polling 
No-Issue

---------
Signed-off-by: James Tanner <tanner.jc@gmail.com>
Co-authored-by: s-hertel <19572925+s-hertel@users.noreply.github.com>
Co-authored-by: Jordan Borean <jborean93@gmail.com>
3 months ago
Jordan Borean b5e0293645
powershell - Improve CLIXML parsing (#83847)
Improves the logic used when parsing CLIXML to support all escaped
character sequences and not just newlines.
3 months ago
Matt Martz 9b0d2decb2
Handle authentication errors and token expiration (#83695)
Fixes #70019
3 months ago
Martin Krizek 5ab5f23487
dnf: stop filtering exceptions by matching on text (#83297)
* Rely on dnf.base.remove, no special handling isn't needed,
  let the dnf internals figure out what is needed to be done.
  This is more in line with what dnf cli does.

* "already installed" in Exception (if it is even a thing) should be
  caught by special exceptions like MarkingError or CompsError. This
  appears to be a historic check that is no longer needed.

Supersedes: #83295
3 months ago
Jordan Borean 69fb629355
Fix up raw_params for ansible.windows modules (#83830)
* Fix up raw_params for ansible.windows modules

Fixes up the logic for detecting if using ansible.windows.win_command or
ansible.windows.win_shell with _raw_params. These two modules are
special in that they can be referenced in 4 different ways but the
ansible.windows collection specific prefix needs to be manually added to
the list.

* Fix up sanity issue
3 months ago
Brian Coca 718ce13673
connection plugins: extras fix (#83353)
Currently we match the load name, which can be an fqcn, but most users expect the 'naked' name
Now plugins can declare that name by setting _extras_prefix property or fallback to 'non fqcn' if no extras prefix
3 months ago
Brian Coca 90de03be50
Gather mount facts, fallback for when multiproc is not feasable (#83750)
* fallback to 'single threaded gathering' for when multiproc fails

Co-authored-by: Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua>
3 months ago
Jordan Borean 520fa688ba
ssh and psrp - Support more complex characters in fetch_file (#83753)
* ssh and psrp - Support more complex chars in fetch_file

Fixes the psrp and ssh (with piped) fetch function to work with paths
that contains glob like characters in the path. For Windows this was
needed when using paths that contain `[]` in the path. For ssh this was
a problem with FreeBSD when using the piped transfer method with similar
characters.

Also tidies up the psrp logic to not inject the paths and buffer size
in the script but pass it as an object through an argument/parameter.

* Fix sanity check
3 months ago
Jordan Borean dec49e6288
Add explicit winrm/psrp tests for HTTP and HTTPS (#83769) 3 months ago
Jordan Borean 430aaa1960 Fix tests when running against SSH target 3 months ago
Matt Clay 81e025b414 ansible-test - Add Windows remote connection option 3 months ago