Commit Graph

3607 Commits (9cdd51cf5b584bf828354301ab97d4a2e13e30c7)
 

Author SHA1 Message Date
Alex Willmer 9cdd51cf5b Declare Python 3.13 support
No code changes needed, that I could find.
3 weeks ago
Alex Willmer e2c112d2fe
Merge pull request #1146 from stefanor/python3.13
Remove get_password_hash, unused
3 weeks ago
Stefano Rivera 34d441fb87 Remove get_password_hash, unused
spwd is removed in Python 3.13. But fortunately, this function itself is
never used.

Part of: #1073
3 weeks ago
Alex Willmer e3b16d6d13
Merge pull request #1145 from moreati/issue978
Ansible: templated SSH port
3 weeks ago
Alex Willmer 77a01ff8d6 ansible_mitogen: Support templated SSH port
fixes #978
3 weeks ago
Alex Willmer fb76f2eeea
Merge pull request #1147 from jmkeyes/template-ssh-user-and-port
ansible_mitogen: Handle templated ansible_ssh_user.
3 weeks ago
Alex Willmer 14cb8be7e5 ansible_mitogen: Test templated connection user (e.g. ansible_user) 3 weeks ago
Joshua K 2c4316fa16
Fix rST whitespace error in changelog entry.
Co-authored-by: Alex Willmer <alex@moreati.org.uk>
3 weeks ago
Joshua M. Keyes 6053e1b5cf ansible_mitogen: Handle templated ansible_ssh_user. 3 weeks ago
Alex Willmer 45ab5344d5
Merge pull request #1144 from moreati/washup
Washup
3 weeks ago
Alex Willmer c395b13184 CI: Remove Azure DevOps environment variable handling
refs #1138
3 weeks ago
Alex Willmer 8bf4eb2ce9 CI: Remove awcli from local tooling, add missing python*{-dev,-venv} variants 3 weeks ago
Alex Willmer 0e9c890637 tests: Remove unused physical_hosts variable 3 weeks ago
Alex Willmer 90ba0a74eb ansible_mitogen: Remove unused imports 3 weeks ago
Alex Willmer 1773c9aba6 trivia: Fix trailing whitespace 3 weeks ago
Alex Willmer 9f0566b522 docs: Changelog entry for migration to GitHub Actions
refs #1138
3 weeks ago
Alex Willmer 69edac7b98
Merge pull request #1142 from moreati/azure-no-more
CI: Remove Azure DevOps pipelines (replaced by GitHub Actions)
3 weeks ago
Alex Willmer 8362d61462 CI: Remove Azure DevOps pipelines (replaced by GitHub Actions)
fixes #1138
3 weeks ago
Alex Willmer 6e4336ce0e
Merge pull request #1140 from moreati/prep-0.3.12
Prep 0.3.12
3 weeks ago
Alex Willmer 61b800781b Begin v0.3.13 development 3 weeks ago
Alex Willmer 298d28a650 Prep v0.3.12 3 weeks ago
Alex Willmer 3f288f934a docs: Correct 0.3.11 release month
Reports of Mitogen's time machine will have been greatly exaggerated.
3 weeks ago
Alex Willmer 8f7ec88a9f
Merge pull request #1139 from moreati/github-action-all-greens
CI: Add re-actors/alls-green GitHub Actions job
3 weeks ago
Alex Willmer b05b2c8c8e CI: Add re-actors/alls-green GitHub Actions job
This will allow a single job to be required in the GitHub branch protection
web UI; regardless of which jobs are added to or removed from the matrix of
platform specific, Ansible specific jobs.
3 weeks ago
Alex Willmer c9f2d905a0
Merge pull request #1137 from moreati/test-targets-disabled
tests: Ignore inventory files of inactive tests & benchmarks
3 weeks ago
Alex Willmer 3504bea3bb tests: Ignore inventory files of inactive tests & benchmarks
These targets are not used by any active tests, and the large numbers of hosts
multiply the size of the taskvars disctionary in memory to many (10s) MiB.

refs #1058
3 weeks ago
Alex Willmer de3c6dcdc9
Merge pull request #1136 from moreati/fail_msg
tests: Improve Ansible fail_msg formatting
3 weeks ago
Alex Willmer 6accc87da1 tests: Improve Ansible fail_msg formatting
By switching to block style (`|`) with clip (no `-` or `+`) the failure
messages don't require quoting and gain a single trailing newline. This causes
Ansible to print them as block style, when using the yaml stdout callback
plugin. As a result the values have one less layer of quoting and quote
escaping, making them much easier to read.
3 weeks ago
Alex Willmer 17d3f39e44
Merge pull request #1114 from moreati/ansible_ssh_password
`ansible_ssh_password` support
3 weeks ago
Alex Willmer 551690ee1d ansible_mitogen: Handle templated connection passwords and ansible_ssh_password
This switches `ansible_mitogen.transport_config.PlayContextSpec.password()` to
Ansible's plugin option framework. As a result
- The relatively recent `ansible_ssh_password` variable is now respected.
- The SSH connection password can be templated and specified as a play
  variable. Task variables will probably also work, but testing was blocked
  by #1132.

There is a chance this change will cause a regression in another connection
plugin (e.g. mitogen_docker), but nothing turned up in the test suite.
I intend ot migrate other connection configuration to
`ansible_mitogen.transport_config.PlayContextSpec._connect_option()`, the next
candidate is the remote port.

fixes #1106
3 weeks ago
Alex Willmer 3bdd3e237a tests: Coverage of support for ansible_ssh_password variable 3 weeks ago
michael.dsilva d0993e9918 allow ansible_ssh_password as it is documented as valid in current ansible documentation
Co-authored-by: Alex Willmer <alex@moreati.org.uk>
4 weeks ago
Alex Willmer ab2a921744
Merge pull request #1130 from moreati/prep-0.3.11
Prep v0.3.11
4 weeks ago
Alex Willmer 809d169d36 Begin v0.3.12dev 4 weeks ago
Alex Willmer c63dc0e080 Prepare v0.3.11 4 weeks ago
Alex Willmer a51909ea79
Merge pull request #1128 from moreati/github-actions
CI: Begin migration from Azure DevOps to GitHub actions
1 month ago
Alex Willmer 4f60d01f09 CI: Enable GitHub Actions testing workflow
This replicate the existing Azure DevOps workflow, and adds a couple of new
jobs (Python 2.7 on macOS, Python + vanilla Ansible on Linux).

The GitHub Actions use container images hosted on GitHub Container Registry
(GHCR, ghcr.io/mitogen-hq). These images have been copied straight from the
existing Amazon Elastic Cloud Registry (AWS ECR, public.ecr.aws/n5z0e8q9).

A short period of parallel running is planned. Then a second PR will remove
the Azure DevOps workflow.
1 month ago
Alex Willmer 27214517a7 tests: Use a subprocess to check discovered python == running
This replaces the use of `os.path.realpath()` which gave incorrect results on
macOS - depending on the exact Python build, Python version, macOS version,
installation method, and phase of the moon.

realpath information kept around to aid debugging.
1 month ago
Alex Willmer c6c8bfb690 tests: Skip vanilla Ansible on Linux unpriviliged -> unprivileged become
CI containers lack the necessary `setfacl` command. This has not previously
been noticed because no vanilla Ansible jobs were being run on Linux, only on
macOS.

refs #1118
1 month ago
Alex Willmer 8b92e09655 ci: Extract container registry location into variables
Preperation for migrating from Azure DevOps with Amazon Elastic Container
Registry (AWS ECR), to GitHub Actions with GitHub Container Registry (GHCR).

DebOps tests are not currently being run, the updates to .ci/debops*.py are
best effort only.
1 month ago
Alex Willmer b926795973 ci: Move container registry authentication to an Azure Devops step
This aims to
- Reduce duplication
- Seperate CI specific setup from test setup
- Prepare for migration from Azure DevOps to GitHub Actions
1 month ago
Alex Willmer 2e2dfb147e
Merge pull request #1127 from moreati/import-cleanups
Consolidate backward compatibility imports and polyfills
1 month ago
Alex Willmer 0e7eefbc70 tests: Remove unused import 1 month ago
Alex Willmer 34088a8b7f ansible_mitogen: Consolidate Python 2 & 3 compatibility
Rough guidelines, in decending preference:
- Use mitogen.core if possible
- Use ansible.module_utils.six if possible
- Embed a getattr() or try/except

viewkeys() et al can't be brought into mitogen.core because that package still
targets Python 2.4. dict.viewkeys() were introduced in Python 2.7.
1 month ago
Alex Willmer 0a908d76da ansible_mitogen: Remove fallback imports for Ansible < 2.10 1 month ago
Alex Willmer b1fd6038bf ansible_mitogen: Remove Python 2.4 and 2.5 backward compatibility fallbacks
Because ansible_mitogen >= 0.3 supports Ansible >= 2.10 and Ansible 2.10
requires supports Python >= 2.7 on controllers and Python >= 2.6 on targets
these are dead weight.

See
- https://docs.ansible.com/ansible/latest/reference_appendices/release_and_maintenance.html#ansible-core-support-matrix
- tox.ini
1 month ago
Alex Willmer c6cf08ab39 mitogen: Consolidate back compatibility fallbacks and polyfills in mitogen.core
This saves some bytes on the wire ad simplifies reasoning about the code.
1 month ago
Alex Willmer ce6297b0e9 Begin v0.3.11 1 month ago
Alex Willmer cea2e7b98d Prepare v0.3.10 1 month ago
Gaige B Paulsen 2ba1b2b3f8
Fix: termios.error: (22, 'Invalid argument') during `become` on Solaris/Illumos/SmartOS (#1089)
This fixes compatibility with Solaris/Illumos/SmartOS, addressing an issue that shows up most frequently with become. The issue was mostly due to differences in how the TTY driver is handled and the pty driver not supporting echo on both sides of the pipe (as designed, from a Solaris point of view).

Fixes #950

Co-authored-by: Alex Willmer <alex@moreati.org.uk>
1 month ago