Alex Willmer
4c02ea659e
Merge pull request #878 from moreati/ci-version-comparisons
...
ci: Fix version comparisons involving double digits
3 years ago
Alex Willmer
d9b8d50d4e
Fix ansible.__version__ comparisons with multi-digit components
...
Ansible 2.8 is older than Ansible 2.10, but `'2.8' < '2.10' == False`
3 years ago
Alex Willmer
465ac8abff
ansible: Fix AttributeError in kubectl connection
3 years ago
Alex Willmer
e194a6367f
ci: Fix version comparisons involving double digits
...
See https://gist.github.com/moreati/e7507c5b606b12ec0ddafcb7c8debbf1
3 years ago
Alex Willmer
9a66d3aeec
Merge pull request #876 from moreati/first-stage-space
...
mitogen.parent: Remove tabs from minimized first stage
3 years ago
Alex Willmer
e6bc53ca3a
mitogen.parent: Remove tabs from minimized first stage
...
Saves 4 bytes
Before
```
$ python preamble_size.py
SSH command size: 629
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97497 95.2KiB 50356 49.2KiB 51.6% 12665 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
After
```
$ python preamble_size.py
SSH command size: 625
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97496 95.2KiB 50355 49.2KiB 51.6% 12663 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
3 years ago
Alex Willmer
b5ad3b7c63
Merge pull request #875 from moreati/job-per-tox-env
...
ci: One Tox environment per Azure job
3 years ago
Alex Willmer
7bdec56a70
ci: One Tox environment per Azure job
...
Should result in
- better isolation of faults
- easier retries of failed jobs
- quicker test completion, to to more efficient queueing.
This does not expand test coverage, merely rearranges the tests already run.
3 years ago
Alex Willmer
65e343afc0
Merge pull request #873 from moreati/first-stage-wo-platform
...
mitogen.parent: Eliminate use of platform module in first stage
3 years ago
Alex Willmer
dd6d73db37
mitogen.parent: Eliminate use of platform module in first stage
...
This reduces the size of the initial SSH command by 204 bytes, & may fix errors
running Mitogen on macOS. AFAICT platform was used but not imported.
Before
```
$ python ./preamble_size.py
SSH command size: 833
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97565 95.3KiB 50427 49.2KiB 51.7% 12689 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
After
```
$ python preamble_size.py
SSH command size: 629
Bootstrap (mitogen.core) size: 17007 (16.61KiB)
Original Minimized Compressed
mitogen.parent 97543 95.3KiB 50357 49.2KiB 51.6% 12665 12.4KiB 13.0%
mitogen.fork 8436 8.2KiB 4130 4.0KiB 49.0% 1648 1.6KiB 19.5%
mitogen.ssh 10892 10.6KiB 6952 6.8KiB 63.8% 2113 2.1KiB 19.4%
mitogen.sudo 12089 11.8KiB 5924 5.8KiB 49.0% 2249 2.2KiB 18.6%
mitogen.select 12325 12.0KiB 2929 2.9KiB 23.8% 964 0.9KiB 7.8%
mitogen.service 41644 40.7KiB 22431 21.9KiB 53.9% 5886 5.7KiB 14.1%
mitogen.fakessh 15599 15.2KiB 8011 7.8KiB 51.4% 2624 2.6KiB 16.8%
mitogen.master 48732 47.6KiB 24569 24.0KiB 50.4% 6768 6.6KiB 13.9%
```
3 years ago
Alex Willmer
59e6fe5289
Merge pull request #870 from moreati/ansible4
...
Support for Ansible 3 & 4
3 years ago
Alex Willmer
c61c063b4f
Support for Ansible 3 & 4
...
fixes #834
Co-authored-by: Claude Becker (@upekkha)
Co-authored-by: Dolph Mathews (@dolph)
3 years ago
Alex Willmer
b5353aa6e0
Merge pull request #860 from deztructor/dez-podman
...
Add support for podman connection
3 years ago
Denis Zalevskiy
84c567e265
Add podman connection support
...
Shameless copy of buildah connection with modifications of invocation to
fit podman CLI.
Signed-off-by: Denis Zalevskiy <dez@aiven.io>
3 years ago
Denis Zalevskiy
10caa4a104
Fix typo in buildah context creation docs
...
Signed-off-by: Denis Zalevskiy <dez@aiven.io>
3 years ago
Alex Willmer
2885f62c45
Merge pull request #869 from moreati/azure-tox
...
ci: Switch Continuous Integration to Tox
3 years ago
Alex Willmer
c5c65ab0d2
ci: Switch Continuous Integration to Tox
...
Also
- Simplifies adding support for additional Ansible versions
- Unifies Python package versioning in CI and local test environments
- Matches Python versions tested, with those declared in setup.py
- Expands targets covered by automated Ansible tests to
- centos6, centos8
- debian9, debian11
- ubuntu1604, ubuntu2004
3 years ago
Alex Willmer
7e2f92191a
Merge pull request #868 from moreati/cleanup
...
Bump version, streamline output from tests, misc cleanups
3 years ago
Alex Willmer
e76eefb8be
Fix miscellaneous spelling/formatting
3 years ago
Alex Willmer
da0262cc18
ci: Upgrade faulthandler to non-yanked release
3 years ago
Alex Willmer
1bdf6294e4
ci: Print playbook role execution times
3 years ago
Alex Willmer
9201761348
ci: Format ansible-playbook output as yaml
3 years ago
Alex Willmer
da536e8ae1
Fix stdlib typos that would cause NameError or AttributeError exceptions
3 years ago
Alex Willmer
39d02e9d59
ci: Don't install pycparser and idna seperately
...
AFAICT no longer necessary. These install fine as part of requirements.txt.
3 years ago
Alex Willmer
3ba1625a99
ci: Reduce verbosity of Ansible integration tests
3 years ago
Alex Willmer
da3772cbff
Increment version to 0.3.1.dev0
3 years ago
Alex Willmer
680fa81b22
Merge pull request #867 from moreati/tests-tag
...
tests: Tag Ansible tests
3 years ago
Alex Willmer
3c58215a91
tests: Tag Ansible tests
...
This makes it easier to run subsets using ANSIBLE_RUN_TAGS=...
3 years ago
Alex Willmer
f202ba9320
Merge pull request #859 from moreati/travis-no-more
...
Abandon Travis CI
3 years ago
Alex Willmer
9e9161cbb9
CI: Clamp ansible-base to < 2.10.14
...
refs #861
3 years ago
Alex Willmer
a990eb3d77
CI: Remove obsolete reverse shell historically used to debug CI
...
This reverse shell was historically used to debug CI jobs interactively.
It is not used anymore, and may be causing jobs to hang, then timeout.
There is no reason to keep it, and removing it simplifies CI jobs.
Additionally it has been reported as flagged by security scanners, so
removing it makes Mitogen easier to package/adopt.
fixes #847
3 years ago
Alex Willmer
147a716b28
CI: Handle NameError traceback on stdout in Ansible 2.10+
3 years ago
Alex Willmer
2b27384a93
CI: Handle variant of unknown user error message seen on MacOS
3 years ago
Alex Willmer
5fc7fcd112
CI: Skip unprivileged become tests on MacOS with Ansible < 2.11
...
Ansible 2.10 and earlier try to use setfacl, which is not present on
MacOS. Ansible 2.11 and later use chmod +a instead.
3 years ago
Dolph Mathews
bd086fd519
fix mac build failure
...
(cherry picked from commit 40b603e098
)
3 years ago
Alex Willmer
042e46682e
Abandon Travis CI We have no credits, and its a PITA to maintain two CI platforms. The tests running on Travis provide very little extra coverage vs Azure Pipelines alone
3 years ago
Alex Willmer
f5683ae767
Merge pull request #854 from moreati/issue809
...
tests: Authenticate to AWS Elastic Container Registry for `docker pull`
fixes #789
3 years ago
Alex Willmer
0db7467e4a
tests: Authenticate to AWS Elastic Container Registry for `docker pull`
...
This should increase the rate limit from 1/s to 10/s. AWS
credentials are obtained from environment variables in Azure
pipelines, or the default AWS CLI profile.
https://docs.aws.amazon.com/AmazonECR/latest/public/public-service-quotas.html
https://docs.aws.amazon.com/AmazonECR/latest/public/public-registries.html#public-registry-auth
https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html
3 years ago
Alex Willmer
2f56b16795
Merge pull request #830 from stefanor/multi-word-mask
...
tests: Support multi-word cpusets
3 years ago
Alex Willmer
b65b6ae88f
Merge branch 'master' into multi-word-mask
3 years ago
Alex Willmer
068a904cb3
Merge pull request #853 from moreati/issue852
...
tests: Print variables on failure of assert tasks
3 years ago
Alex Willmer
eae6bdd1de
Merge branch 'master' into issue852
3 years ago
Alex Willmer
f5eb19ed6f
Merge pull request #844 from philfry/issue_827_collections
...
Fix issue 827 (collections import)
3 years ago
Alex Willmer
cfa5888547
tests: Print variables on failure of assert tasks
...
Fixes #852
3 years ago
Alex Willmer
2382d8dab5
Merge branch 'master' into issue_827_collections
3 years ago
Alex Willmer
bd94c570a6
Merge pull request #845 from annttu/issue_776
...
Fix for load_plugins() called twice error with dnf
3 years ago
Alex Willmer
89bfb32384
Merge branch 'master' into issue_776
3 years ago
Alex Willmer
fe48fde656
Merge pull request #851 from moreati/issue850
...
testlib: Don't assume `docker port` output matches regex
3 years ago
Alex Willmer
3d350643a9
tests: Tighten requirements.txt, due to new package releases
...
Attempt to fix
Collecting hdrhistogram==0.6.1 (from -r tests/ansible/requirements.txt
(line 2))
Downloading
2422ad2ad9
0047d3b9f73061e8696f/hdrhistogram-0.6.1.tar.gz
(61kB)
Complete output from command python setup.py egg_info:
Couldn't find index page for 'pbr' (maybe misspelled?)
sources=['src/python-codec.c'])]
File "/usr/lib/python3.5/distutils/core.py", line 108, in setup
_setup_distribution = dist = klass(attrs)
File "/tmp/venv/lib/python3.5/site-packages/setuptools/dist.py",
line 315, in __init__
self.fetch_build_eggs(attrs['setup_requires'])
File "/tmp/venv/lib/python3.5/site-packages/setuptools/dist.py",
line 361, in fetch_build_eggs
replace_conflicting=True,
File
"/tmp/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line
850, in resolve
dist = best[req.key] = env.best_match(req, ws, installer)
File
"/tmp/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line
1122, in best_match
return self.obtain(req, installer)
File
"/tmp/venv/lib/python3.5/site-packages/pkg_resources/__init__.py", line
1134, in obtain
return installer(requirement)
File "/tmp/venv/lib/python3.5/site-packages/setuptools/dist.py",
line 429, in fetch_build_egg
return cmd.easy_install(req)
File
"/tmp/venv/lib/python3.5/site-packages/setuptools/command/easy_install.py",
line 659, in easy_install
raise DistutilsError(msg)
distutils.errors.DistutilsError: Could not find suitable
distribution for Requirement.parse('pbr')
3 years ago
Alex Willmer
8cbbfaf3c1
testlib: Don't assume `docker port` output matches regex
3 years ago