Commit Graph

39 Commits (4b0954a441abdd8c383941c5578017f69a635e23)

Author SHA1 Message Date
Alex Willmer 28e08ef94c ci: Reduce number of Jobs by parameterizing Mitogen Docker SSH tests
This reduces the number of jobs from 48 to 24. The Mitogen part of the test
suite has been parameterized on the Linux container targets to be run against.
Both the Ansible tests & Mitogen tests now use the same source of truth to
control which targets to use: environment variable MITOGEN_TEST_DISTRO_SPECS.
This replaces the two mutually exclusive env vars DISTRO and DISTROS. I've
also removed vestgial traces of an unused env var MITOGEN_TEST_DISTRO.

Parameterization adapted from
https://eli.thegreenplace.net/2014/04/02/dynamically-generating-python-test-cases

refs #1058, #1059
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.
2 months ago
Alex Willmer 49c54386b3 tests: Only use subprocess32 package on Python 2.x
This is how the package documentation recommends and it's less likely to
interfere with new features in stdlib subprocess module.
1 year ago
Alex Willmer 392c41d160 ci: Ignore WALinuxAgent processes in Azure Piplines CI runner 2 years ago
Alex Willmer 64819ecb5f tests: Regression test for #776 (package/yum/dnf module called twice) 2 years ago
Alex Willmer c32577295a tests: Check and/or suppress stderr of subprocesses, reduce shell=True uses 2 years ago
Alex Willmer 18c89de5a9 Remove unused module imports 3 years ago
Alex Willmer 491458673b tests: Manage ANSIBLE_STRATEGY with Tox 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 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 e76eefb8be Fix miscellaneous spelling/formatting 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 e67e4b83b4 tests: Fix throttling of Docker pulls
fixes #809
4 years ago
Alex Willmer b71fbe528c
Merge branch 'master' into distro-vs-distros 4 years ago
Alex Willmer f5b3fab04c
Merge branch 'master' into docstrings 4 years ago
Alex Willmer 99235071a3 tests: docstrings for ci_lib 4 years ago
Alex Willmer 1c7e107809 tests: Use AWS Elastic Container registry for test images
This replaces use of Docker Hub, which now rate limits API calls and
causing CI builds to fail.

refs #791
4 years ago
Alex Willmer 9dce5fe056 tests: Correct DISTRO vs DISTROS usage in CI configurations
The environment variable DISTRO is used to set the target Docker image
used when running the Mitogen unit tests. DISTROS is used for the
Ansible integration tests. VER sets the version of Ansible that is
installed on the controller.

When MODE=Mitogen
- there is no need to set VER, because nothing that installs Ansible
- it does not make sense to set DISTROS.
4 years ago
Steven Robertson 7507b88255 clean up azure python version used 4 years ago
David Wilson d6329f3446 Merge devel/290 @ 79b979ec8544ef5d8620c64068d4a42fabf50415 5 years ago
David Wilson fa8755085a ci: fix procps command line format warning 5 years ago
David Wilson f2e35be143 issue #482: remove 'ssh' from checked processes
Can't be used due to regular Ansible behaviour
5 years ago
David Wilson faec0158d9 ci: Py3 fix 5 years ago
David Wilson 7ca073cdf8 issue #482: ci: add stray process checks to all jobs
List of interesting processes can probably expand more over time.
5 years ago
David Wilson 50b2d590fd docs: update Changelog. 5 years ago
David Wilson 16ba1aacce ci: log failed command line, and try enabling stdout line buffering 5 years ago
David Wilson 36a5968ee2 .ci: copy private key file to tempdir. 6 years ago
David Wilson ad7185444d .ci: allow containers for different jobs to run simultaneously 6 years ago
David Wilson 0aa4c9d8fc issue #542: .ci: move some tests to Azure and enable Mac job. 6 years ago
David Wilson 49a8745a45 ci: fix incorrect partition/rpartition from 8a4caea84f 6 years ago
David Wilson 8a4caea84f ci: Allow DISTROS="debian*32" variable, and KEEP=1 6 years ago
David Wilson f86d79b284 ci: don't use the TTY->pipe hack except on Travis where it's needed. 6 years ago
David Wilson 835bead37a tests: allow running scripts from any subdir. 6 years ago
David Wilson e7bb5c1ee0 issue #426: teach make_containers() to parse -py3 DISTRO suffix 6 years ago
David Wilson 8df895a8ac issue #426: make ansible_tests dump inventory. 6 years ago
David Wilson c84f36e809 issue #426: teach .ci/ Docker pulls to ignore -py3 image suffix. 6 years ago
David Wilson 2a6dbb038f Pythonize, split out and parallelize all jobs. 6 years ago
David Wilson 0b86c4e45f tests: basic (incomplete) Azure Pipelines config 6 years ago
David Wilson 3f414d5967 tests: rename .travis -> .ci, move Azure config into .ci 6 years ago