From 937a003a9115dbd734e00d56e15a9ebf01ced00b Mon Sep 17 00:00:00 2001 From: Alex Willmer Date: Tue, 19 Oct 2021 22:41:35 +0100 Subject: [PATCH] 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 (cherry picked from commit 042e46682ed457e02e07c45cd48240f691a4ff6d) --- .ci/README.md | 4 +-- .ci/ci_lib.py | 42 ++-------------------- .travis.yml | 95 ------------------------------------------------- README.md | 5 +-- tests/README.md | 2 +- 5 files changed, 7 insertions(+), 141 deletions(-) delete mode 100644 .travis.yml diff --git a/.ci/README.md b/.ci/README.md index 1b9f9dfa..4d033602 100644 --- a/.ci/README.md +++ b/.ci/README.md @@ -1,8 +1,8 @@ # `.ci` -This directory contains scripts for Travis CI and (more or less) Azure -Pipelines, but they will also happily run on any Debian-like machine. +This directory contains scripts for Continuous Integration platforms. Currently +Azure Pipelines, but they will also happily run on any Debian-like machine. The scripts are usually split into `_install` and `_test` steps. The `_install` step will damage your machine, the `_test` step will just run the tests the way diff --git a/.ci/ci_lib.py b/.ci/ci_lib.py index 307483c3..b79f6b95 100644 --- a/.ci/ci_lib.py +++ b/.ci/ci_lib.py @@ -60,24 +60,6 @@ def have_docker(): # Force line buffering on stdout. sys.stdout = os.fdopen(1, 'w', 1) -# Force stdout FD 1 to be a pipe, so tools like pip don't spam progress bars. -if 'TRAVIS_HOME' in os.environ: - proc = subprocess.Popen( - args=['stdbuf', '-oL', 'cat'], - stdin=subprocess.PIPE - ) - - os.dup2(proc.stdin.fileno(), 1) - os.dup2(proc.stdin.fileno(), 2) - - def cleanup_travis_junk(stdout=sys.stdout, stderr=sys.stderr, proc=proc): - stdout.close() - stderr.close() - proc.terminate() - - atexit.register(cleanup_travis_junk) - -# ----------------- def _argv(s, *args): """Interpolate a command line using *args, return an argv style list. @@ -202,27 +184,9 @@ class TempDir(object): class Fold(object): - """ - Bracket a section of stdout with travis_fold markers. - - This allows the section to be collapsed or expanded in Travis CI web UI. - - >>> with Fold('stage 1'): - ... print('Frobnicate the frobnitz') - ... - travis_fold:start:stage 1 - Frobnicate the frobnitz - travis_fold:end:stage 1 - """ - def __init__(self, name): - self.name = name - - def __enter__(self): - print('travis_fold:start:%s' % (self.name)) - - def __exit__(self, _1, _2, _3): - print('') - print('travis_fold:end:%s' % (self.name)) + def __init__(self, name): pass + def __enter__(self): pass + def __exit__(self, _1, _2, _3): pass os.environ.setdefault('ANSIBLE_STRATEGY', diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index bb50dc51..00000000 --- a/.travis.yml +++ /dev/null @@ -1,95 +0,0 @@ -sudo: required -dist: trusty - -notifications: - email: false - irc: "chat.freenode.net#mitogen-builds" - -language: python - -branches: - except: - - docs-master - -cache: -- pip -- directories: - - /home/travis/virtualenv - -env: - - NOCOVERAGE=1 - -install: -- grep -Erl git-lfs\|couchdb /etc/apt | sudo xargs rm -v -- .ci/${MODE}_install.py - -script: -- .ci/spawn_reverse_shell.py -- .ci/${MODE}_tests.py - - -# To avoid matrix explosion, just test against oldest->newest and -# newest->oldest in various configuartions. - -matrix: - allow_failures: - # Python 2.4 tests are still unreliable - - language: c - env: MODE=mitogen_py24 DISTRO=centos5 - - include: - # Debops tests. - # 2.9.6; 3.6 -> 2.7 - - python: "3.6" - env: MODE=debops_common VER=2.9.6 - # 2.8.3; 3.6 -> 2.7 - - python: "3.6" - env: MODE=debops_common VER=2.8.3 - # 2.4.6.0; 2.7 -> 2.7 - - python: "2.7" - env: MODE=debops_common VER=2.4.6.0 - - # Sanity check against vanilla Ansible. One job suffices. - - python: "2.7" - env: MODE=ansible VER=2.8.3 DISTROS=debian STRATEGY=linear - - # ansible_mitogen tests. - - # 2.9.6 -> {debian, centos6, centos7} - - python: "3.6" - env: MODE=ansible VER=2.9.6 - # 2.8.3 -> {debian, centos6, centos7} - - python: "3.6" - env: MODE=ansible VER=2.8.3 - # 2.8.3 -> {debian, centos6, centos7} - - python: "2.7" - env: MODE=ansible VER=2.8.3 - - # 2.4.6.0 -> {debian, centos6, centos7} - - python: "3.6" - env: MODE=ansible VER=2.4.6.0 - # 2.4.6.0 -> {debian, centos6, centos7} - - python: "2.6" - env: MODE=ansible VER=2.4.6.0 - - # 2.3 -> {centos5} - - python: "2.6" - env: MODE=ansible VER=2.3.3.0 DISTROS=centos5 - - # Mitogen tests. - # 2.4 -> 2.4 - - language: c - env: MODE=mitogen_py24 DISTRO=centos5 - # 2.7 -> 2.7 -- moved to Azure - # 2.7 -> 2.6 - #- python: "2.7" - #env: MODE=mitogen DISTRO=centos6 - - python: "3.6" - env: MODE=mitogen DISTRO=centos7 - # 2.6 -> 2.7 - - python: "2.6" - env: MODE=mitogen DISTRO=centos7 - # 2.6 -> 3.5 - - python: "2.6" - env: MODE=mitogen DISTRO=debian-py3 - # 3.6 -> 2.6 -- moved to Azure diff --git a/README.md b/README.md index 85beacb4..0d4d1b30 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,9 @@ # Mitogen - Please see the documentation. ![](https://i.imgur.com/eBM6LhJ.gif) [![Total alerts](https://img.shields.io/lgtm/alerts/g/mitogen-hq/mitogen.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/mitogen-hq/mitogen/alerts/) -[![Build Status](https://api.travis-ci.com/mitogen-hq/mitogen.svg?branch=master)](https://api.travis-ci.com/mitogen-hq/mitogen) - -[![Pipelines Status](https://dev.azure.com/mitogen-hq/mitogen/_apis/build/status/mitogen-hq.mitogen?branchName=master)](https://dev.azure.com/mitogen-hq/mitogen/_build/latest?definitionId=1&branchName=master) +[![Build Status](https://dev.azure.com/mitogen-hq/mitogen/_apis/build/status/mitogen-hq.mitogen?branchName=master)](https://dev.azure.com/mitogen-hq/mitogen/_build/latest?definitionId=1&branchName=master) diff --git a/tests/README.md b/tests/README.md index 51464989..65226e87 100644 --- a/tests/README.md +++ b/tests/README.md @@ -7,7 +7,7 @@ started in September 2017. Pull requests in this area are very welcome! ## Running The Tests -[![Build Status](https://api.travis-ci.org/dw/mitogen.svg?branch=master)](https://travis-ci.org/dw/mitogen) +[![Build Status](https://dev.azure.com/mitogen-hq/mitogen/_apis/build/status/mitogen-hq.mitogen?branchName=master)](https://dev.azure.com/mitogen-hq/mitogen/_build/latest?definitionId=1&branchName=master) Your computer should have an Internet connection, and the ``docker`` command line tool should be able to connect to a working Docker daemon (localhost or