]> git.apps.os.sepia.ceph.com Git - teuthology.git/log
teuthology.git
3 years agoDockerfile: Optimize pip installs
Zack Cerza [Tue, 12 Apr 2022 23:22:54 +0000 (17:22 -0600)]
Dockerfile: Optimize pip installs

With this change, we can avoid rerunning bootstrap on build if
requirements.txt hasn't changed. Build times after non-requirements
changes go from 3-5min to ~2s.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Optionally skip teuthology install
Zack Cerza [Tue, 12 Apr 2022 18:31:52 +0000 (12:31 -0600)]
bootstrap: Optionally skip teuthology install

The docker-compose dev setup was the inspiration for this feature; it
allows us to split the installation of dependencies and the project
itself into two phases. This in turn allows us to avoid rerunning
bootstrap if requirements.txt didn't change.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Drop virtualenv in favor of venv
Zack Cerza [Fri, 1 Apr 2022 17:14:28 +0000 (13:14 -0400)]
bootstrap: Drop virtualenv in favor of venv

We don't need it, and if it is present, setuptools will use
easy_install instead of building wheels.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMerge pull request #1750 from tchaikov/pass-extra
Zack Cerza [Tue, 26 Apr 2022 16:06:51 +0000 (10:06 -0600)]
Merge pull request #1750 from tchaikov/pass-extra

update-requirements.sh: pass --extra=test to pip-compile

3 years agoMerge pull request #1698 from kshtsk/wip-raise-if-not-reconnect
kyr [Tue, 26 Apr 2022 13:02:52 +0000 (15:02 +0200)]
Merge pull request #1698 from kshtsk/wip-raise-if-not-reconnect

orchestra/remote: throw exception on reconnect failed

3 years agoupdate-requirements.sh: pass --extra=test to pip-compile 1750/head
Kefu Chai [Tue, 26 Apr 2022 01:12:07 +0000 (09:12 +0800)]
update-requirements.sh: pass --extra=test to pip-compile

otherwise the requirements used by test would be missed

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #1749 from tchaikov/setup-add-nose
Zack Cerza [Mon, 25 Apr 2022 21:18:21 +0000 (15:18 -0600)]
Merge pull request #1749 from tchaikov/setup-add-nose

setup.cfg: add nose to "options.extras_require/test"

3 years agosetup.py: dedup the requires 1749/head
Kefu Chai [Sun, 24 Apr 2022 01:29:24 +0000 (09:29 +0800)]
setup.py: dedup the requires

* move the dependencies from options.install_requires to
  options.extras_require if those dependencies are only used by tests.
  as per
  https://packaging.python.org/en/latest/discussions/install-requires-vs-requirements/#id5
  > install_requires is a setuptools setup.py keyword that should be
  > used to specify what a project minimally needs to run correctly.
* remove the duplicated dependencies from options.extras_require
  if they are also listed in options.install_requires.
* update requirements.txt using
  "pip-compile --extra=test pyproject.toml", so requirements.txt
  can include the dependencies required by tests.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoscrape: drop dependency of "six"
Kefu Chai [Sun, 24 Apr 2022 01:28:55 +0000 (09:28 +0800)]
scrape: drop dependency of "six"

since we don't need to be compatible with python2, let's stop using
the six package.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agosetup.cfg: add nose to "options.extras_require/test"
Kefu Chai [Sat, 23 Apr 2022 03:26:48 +0000 (11:26 +0800)]
setup.cfg: add nose to "options.extras_require/test"

some tests are using nose python package. since teuthology is
responsible for preparing the deps to run the tests. let's add
nose back to setup.cfg.

the "nose" package was included in requirements.txt before
21372fd9b2b87bb6417929f10097fba7db9cdca9. in this change, it,
it is brought back.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
3 years agoMerge pull request #1743 from ceph/packaging
Zack Cerza [Thu, 21 Apr 2022 18:08:32 +0000 (12:08 -0600)]
Merge pull request #1743 from ceph/packaging

Revised packaging updates

3 years agoMerge pull request #1747 from ceph/ca-test-fix
Zack Cerza [Wed, 20 Apr 2022 15:06:13 +0000 (09:06 -0600)]
Merge pull request #1747 from ceph/ca-test-fix

task/ceph_ansible: Fix attribute handling

3 years agoMerge pull request #1746 from rishabh-d-dave/py3104-MutableMapping
Kefu Chai [Wed, 20 Apr 2022 12:22:23 +0000 (20:22 +0800)]
Merge pull request #1746 from rishabh-d-dave/py3104-MutableMapping

config: import MuableMapping based on python version

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
3 years agotask/ceph_ansible: Fix attribute handling 1747/head
Zack Cerza [Tue, 19 Apr 2022 23:44:16 +0000 (17:44 -0600)]
task/ceph_ansible: Fix attribute handling

... in get_host_vars(). This had broken unit tests when a top-level
"ceph_ansible" key is present in the teuthology config.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotox.ini: Drop basepython lines 1743/head
Zack Cerza [Wed, 6 Apr 2022 17:17:03 +0000 (11:17 -0600)]
tox.ini: Drop basepython lines

They're redundant.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotox.ini: Install 'test' extras for py.test envs
Zack Cerza [Tue, 5 Apr 2022 22:29:43 +0000 (18:29 -0400)]
tox.ini: Install 'test' extras for py.test envs

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoModernized versioning
Zack Cerza [Thu, 31 Mar 2022 19:32:14 +0000 (15:32 -0400)]
Modernized versioning

Using setuptools_scm; we can automatically generate version numbers
instead of using this odd combination of hardcoding and running git
commands. This method is faster as well.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Install 'test' extras
Zack Cerza [Thu, 31 Mar 2022 21:32:43 +0000 (17:32 -0400)]
bootstrap: Install 'test' extras

So that we can use the 'tests' task.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agorun_tasks: Do not mask missing task dependencies
Zack Cerza [Fri, 1 Apr 2022 15:14:42 +0000 (11:14 -0400)]
run_tasks: Do not mask missing task dependencies

While doing packaging work, I noticed that teuthology began claiming it
couldn't find the 'tests' task. After some slightly painful debugging I
realized the issue was that the task was trying to import pytest, which
wasn't installed. The ModuleNotFoundError that was being raised was
being confused with the exception that would be raised if the task
couldn't be found at all. With this change, we see the root cause.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotask.tests: Update pytest_runtest_makereport
Zack Cerza [Thu, 31 Mar 2022 20:29:16 +0000 (16:29 -0400)]
task.tests: Update pytest_runtest_makereport

And fix a typo

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Drop python2 support
Zack Cerza [Thu, 31 Mar 2022 19:43:25 +0000 (15:43 -0400)]
bootstrap: Drop python2 support

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotox.ini: Set isolated_build
Zack Cerza [Fri, 18 Mar 2022 19:02:10 +0000 (13:02 -0600)]
tox.ini: Set isolated_build

This also requires us to re-add mock to the py3 env.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoTestOpenStackBase.setup: Remove arguments
Zack Cerza [Fri, 18 Mar 2022 18:55:46 +0000 (12:55 -0600)]
TestOpenStackBase.setup: Remove arguments

In newer py.test versions, the test method itself was being passed as
the conf arg, causing errors. We don't even use it, so remove it.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoTolerate a missing manhole package
Zack Cerza [Fri, 18 Mar 2022 18:51:55 +0000 (12:51 -0600)]
Tolerate a missing manhole package

The vast majority of users won't ever need this.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMANIFEST.in: Add tox.ini and pytest.ini
Zack Cerza [Fri, 18 Mar 2022 18:51:34 +0000 (12:51 -0600)]
MANIFEST.in: Add tox.ini and pytest.ini

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoReplace setup.py with setup.cfg and pyproject.toml
Zack Cerza [Thu, 17 Mar 2022 23:34:59 +0000 (17:34 -0600)]
Replace setup.py with setup.cfg and pyproject.toml

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoconfig: import MuableMapping based on python version 1746/head
Rishabh Dave [Sun, 17 Apr 2022 14:59:28 +0000 (20:29 +0530)]
config: import MuableMapping based on python version

MutableMapping has been moved from collections to collections.abc.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
3 years agoMerge pull request #1739 from ceph/docker-compose
Zack Cerza [Mon, 18 Apr 2022 22:52:16 +0000 (16:52 -0600)]
Merge pull request #1739 from ceph/docker-compose

docker-compose: "wait mode"

3 years agodocker-compose.yml: Start beanstalkd sooner 1739/head
Zack Cerza [Mon, 18 Apr 2022 19:59:01 +0000 (13:59 -0600)]
docker-compose.yml: Start beanstalkd sooner

There was a bit of a race condition happening in wait mode, where
teuthology would start up before beanstalkd and fail immediately.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agostart.sh: Default to RSA keys
Zack Cerza [Mon, 18 Apr 2022 18:44:21 +0000 (12:44 -0600)]
start.sh: Default to RSA keys

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Add wait mode
Zack Cerza [Thu, 7 Apr 2022 18:07:29 +0000 (12:07 -0600)]
docker-compose: Add wait mode

Instead of scheduling the teuthology:no-ceph suite and then exiting
when it finishes, schedule nothing and don't exit automatically. This
allows running whatever - and however many - tests are desired.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Document containerized nodes
Zack Cerza [Mon, 4 Apr 2022 15:06:34 +0000 (11:06 -0400)]
docker-compose: Document containerized nodes

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years ago.dockerignore: Simplify paths
Zack Cerza [Fri, 1 Apr 2022 19:51:41 +0000 (15:51 -0400)]
.dockerignore: Simplify paths

The we we'd used wildcards, we were only ignoring directory contents -
not the directories themselves. Also add the tox temporary directory.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Use repo root as build context
Zack Cerza [Fri, 1 Apr 2022 18:02:05 +0000 (14:02 -0400)]
docker-compose: Use repo root as build context

Rather than add more logic to support things like cloning different
forks of the repo, let's just not clone at all.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agostart.sh: Make sure to run docker-compose down
Zack Cerza [Fri, 1 Apr 2022 15:15:54 +0000 (11:15 -0400)]
start.sh: Make sure to run docker-compose down

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMerge pull request #1741 from ceph/dc-fixes
Zack Cerza [Mon, 18 Apr 2022 18:43:51 +0000 (12:43 -0600)]
Merge pull request #1741 from ceph/dc-fixes

teuthology.sh: Run tests using current branch

3 years agoMerge pull request #1742 from ceph/repo_logging
Zack Cerza [Mon, 18 Apr 2022 18:42:55 +0000 (12:42 -0600)]
Merge pull request #1742 from ceph/repo_logging

repo_utils: Fix logging in bootstrap_teuthology

3 years agorepo_utils: Fix logging in bootstrap_teuthology 1742/head
Zack Cerza [Thu, 14 Apr 2022 18:01:38 +0000 (12:01 -0600)]
repo_utils: Fix logging in bootstrap_teuthology

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoworker: Don't log incorrect teuthology sha1 1741/head
Zack Cerza [Thu, 14 Apr 2022 21:49:37 +0000 (15:49 -0600)]
worker: Don't log incorrect teuthology sha1

If teuthology_path is set, we don't fetch a separate copy of the repo.
In that case, the sha1 logged here may be incorrect.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoteuthology.sh: Run tests using current branch
Zack Cerza [Thu, 14 Apr 2022 19:19:24 +0000 (13:19 -0600)]
teuthology.sh: Run tests using current branch

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMerge pull request #1740 from ceph/wip-revert4333
David Galloway [Thu, 14 Apr 2022 15:36:55 +0000 (11:36 -0400)]
Merge pull request #1740 from ceph/wip-revert4333

Revert "Merge pull request #1737 from ceph/build"

3 years agoRevert "Merge pull request #1737 from ceph/build" 1740/head
David Galloway [Thu, 14 Apr 2022 15:19:46 +0000 (11:19 -0400)]
Revert "Merge pull request #1737 from ceph/build"

This reverts commit 43327234bc2c8066c173e4c6d602c8a0a05db642, reversing
changes made to a347b2ac5400a43ba76a678399b1deda7dae1a6c.

3 years agoMerge pull request #1737 from ceph/build
Zack Cerza [Wed, 13 Apr 2022 21:33:45 +0000 (15:33 -0600)]
Merge pull request #1737 from ceph/build

Packaging overhaul

3 years agobootstrap: Drop pyc removal 1737/head
Zack Cerza [Tue, 12 Apr 2022 18:32:12 +0000 (12:32 -0600)]
bootstrap: Drop pyc removal

We stopped writing these files years ago.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Optionally skip teuthology install
Zack Cerza [Tue, 12 Apr 2022 18:31:52 +0000 (12:31 -0600)]
bootstrap: Optionally skip teuthology install

The docker-compose dev setup was the inspiration for this feature; it
allows us to split the installation of dependencies and the project
itself into two phases. This in turn allows us to avoid rerunning
bootstrap if requirements.txt didn't change.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotox.ini: Drop basepython lines
Zack Cerza [Wed, 6 Apr 2022 17:17:03 +0000 (11:17 -0600)]
tox.ini: Drop basepython lines

They're redundant.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotox.ini: Install 'test' extras for py.test envs
Zack Cerza [Tue, 5 Apr 2022 22:29:43 +0000 (18:29 -0400)]
tox.ini: Install 'test' extras for py.test envs

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoModernized versioning
Zack Cerza [Thu, 31 Mar 2022 19:32:14 +0000 (15:32 -0400)]
Modernized versioning

Using setuptools_scm; we can automatically generate version numbers
instead of using this odd combination of hardcoding and running git
commands. This method is faster as well.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoRemove references to teuth_bin_path
Zack Cerza [Fri, 1 Apr 2022 18:33:25 +0000 (14:33 -0400)]
Remove references to teuth_bin_path

This effectively hardcoded the path to the virtualenv we'll use, which
aside from being bad generally, also prevented us from supporting
absolute-pathed virtualenvs.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Allow absolute-path $VENV
Zack Cerza [Fri, 1 Apr 2022 18:01:32 +0000 (14:01 -0400)]
bootstrap: Allow absolute-path $VENV

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Drop virtualenv in favor of venv
Zack Cerza [Fri, 1 Apr 2022 17:14:28 +0000 (13:14 -0400)]
bootstrap: Drop virtualenv in favor of venv

We don't need it, and if it is present, setuptools will use
easy_install instead of building wheels.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agobootstrap: Install 'test' extras
Zack Cerza [Thu, 31 Mar 2022 21:32:43 +0000 (17:32 -0400)]
bootstrap: Install 'test' extras

So that we can use the 'tests' task.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agorun_tasks: Do not mask missing task dependencies
Zack Cerza [Fri, 1 Apr 2022 15:14:42 +0000 (11:14 -0400)]
run_tasks: Do not mask missing task dependencies

While doing packaging work, I noticed that teuthology began claiming it
couldn't find the 'tests' task. After some slightly painful debugging I
realized the issue was that the task was trying to import pytest, which
wasn't installed. The ModuleNotFoundError that was being raised was
being confused with the exception that would be raised if the task
couldn't be found at all. With this change, we see the root cause.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotask.tests: Update pytest_runtest_makereport
Zack Cerza [Thu, 31 Mar 2022 20:29:16 +0000 (16:29 -0400)]
task.tests: Update pytest_runtest_makereport

And fix a typo

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMerge pull request #1735 from ceph/rhel85
Zack Cerza [Thu, 7 Apr 2022 17:46:58 +0000 (11:46 -0600)]
Merge pull request #1735 from ceph/rhel85

opsys.py: RHEL8.5 is latest

3 years agobootstrap: Drop python2 support
Zack Cerza [Thu, 31 Mar 2022 19:43:25 +0000 (15:43 -0400)]
bootstrap: Drop python2 support

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotox.ini: Set isolated_build
Zack Cerza [Fri, 18 Mar 2022 19:02:10 +0000 (13:02 -0600)]
tox.ini: Set isolated_build

This also requires us to re-add mock to the py3 env.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoTestOpenStackBase.setup: Remove arguments
Zack Cerza [Fri, 18 Mar 2022 18:55:46 +0000 (12:55 -0600)]
TestOpenStackBase.setup: Remove arguments

In newer py.test versions, the test method itself was being passed as
the conf arg, causing errors. We don't even use it, so remove it.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoTolerate a missing manhole package
Zack Cerza [Fri, 18 Mar 2022 18:51:55 +0000 (12:51 -0600)]
Tolerate a missing manhole package

The vast majority of users won't ever need this.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMANIFEST.in: Add tox.ini and pytest.ini
Zack Cerza [Fri, 18 Mar 2022 18:51:34 +0000 (12:51 -0600)]
MANIFEST.in: Add tox.ini and pytest.ini

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoReplace setup.py with setup.cfg and pyproject.toml
Zack Cerza [Thu, 17 Mar 2022 23:34:59 +0000 (17:34 -0600)]
Replace setup.py with setup.cfg and pyproject.toml

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoMerge pull request #1734 from ceph/dependabot/pip/paramiko-2.10.1
kyr [Tue, 5 Apr 2022 17:55:51 +0000 (19:55 +0200)]
Merge pull request #1734 from ceph/dependabot/pip/paramiko-2.10.1

build(deps): bump paramiko from 2.7.2 to 2.10.1

3 years agoopsys.py: RHEL8.5 is latest 1735/head
David Galloway [Fri, 1 Apr 2022 18:04:59 +0000 (14:04 -0400)]
opsys.py: RHEL8.5 is latest

Signed-off-by: David Galloway <dgallowa@redhat.com>
3 years agobuild(deps): bump paramiko from 2.7.2 to 2.10.1 1734/head
dependabot[bot] [Tue, 29 Mar 2022 22:04:48 +0000 (22:04 +0000)]
build(deps): bump paramiko from 2.7.2 to 2.10.1

Bumps [paramiko](https://github.com/paramiko/paramiko) from 2.7.2 to 2.10.1.
- [Release notes](https://github.com/paramiko/paramiko/releases)
- [Changelog](https://github.com/paramiko/paramiko/blob/main/NEWS)
- [Commits](https://github.com/paramiko/paramiko/compare/2.7.2...2.10.1)

---
updated-dependencies:
- dependency-name: paramiko
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
3 years agoMerge pull request #1726 from ceph/bs-mac-noauto
Zack Cerza [Tue, 29 Mar 2022 18:29:12 +0000 (12:29 -0600)]
Merge pull request #1726 from ceph/bs-mac-noauto

bootstrap: Don't auto-install on Mac

3 years agoMerge pull request #1727 from ceph/docker-compose
Zack Cerza [Tue, 29 Mar 2022 18:07:03 +0000 (12:07 -0600)]
Merge pull request #1727 from ceph/docker-compose

docker-compose: Use containerized testnodes to run the teuthology suite

3 years agodocker-compose: Update readme 1727/head
Zack Cerza [Thu, 24 Mar 2022 23:11:18 +0000 (17:11 -0600)]
docker-compose: Update readme

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Increase paddles' check time
Zack Cerza [Mon, 28 Mar 2022 21:11:25 +0000 (15:11 -0600)]
docker-compose: Increase paddles' check time

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Separate build contexts
Zack Cerza [Mon, 28 Mar 2022 21:05:37 +0000 (15:05 -0600)]
docker-compose: Separate build contexts

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Allow different custom config
Zack Cerza [Fri, 25 Mar 2022 21:41:33 +0000 (15:41 -0600)]
docker-compose: Allow different custom config

When using "real" testnodes, we should not use the custom config we've
been using for containerized nodes. When using "real" testnodes, default
 to not using one, but allow specifying a path in $CUSTOM_CONF.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoteuthology-update-inventory: Add machine type flag
Zack Cerza [Fri, 25 Mar 2022 20:25:02 +0000 (14:25 -0600)]
teuthology-update-inventory: Add machine type flag

With this change, the tool can be trivially used to add new nodes to
paddles.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoDockerfile: Write SSH key stubs later in build
Zack Cerza [Fri, 25 Mar 2022 19:24:52 +0000 (13:24 -0600)]
Dockerfile: Write SSH key stubs later in build

We'd rather duplicate this layer than the package-install layer if a
user is going to use both containerized testnodes and "real" ones.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Optionally use an inventory repo
Zack Cerza [Fri, 25 Mar 2022 17:11:38 +0000 (11:11 -0600)]
docker-compose: Optionally use an inventory repo

This is being added to support "real" testnodes without having to
manually copy inventory fragments over.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agostart.sh: Don't double-clone teuthology
Zack Cerza [Fri, 25 Mar 2022 16:26:24 +0000 (10:26 -0600)]
start.sh: Don't double-clone teuthology

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Optionally use an existing SSH key
Zack Cerza [Thu, 24 Mar 2022 23:10:33 +0000 (17:10 -0600)]
docker-compose: Optionally use an existing SSH key

This will only work with "real" testnodes; with containerized testnodes
there's no reason not to use a generated key.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Populate "real" testnodes
Zack Cerza [Thu, 24 Mar 2022 23:11:11 +0000 (17:11 -0600)]
docker-compose: Populate "real" testnodes

... if we're using them, that is.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoDockerfile: Fix old typo
Zack Cerza [Fri, 25 Mar 2022 17:14:13 +0000 (11:14 -0600)]
Dockerfile: Fix old typo

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agostart.sh: Copy config files more consistently
Zack Cerza [Thu, 24 Mar 2022 23:09:59 +0000 (17:09 -0600)]
start.sh: Copy config files more consistently

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Exit after jobs are done
Zack Cerza [Mon, 21 Mar 2022 19:39:57 +0000 (13:39 -0600)]
docker-compose: Exit after jobs are done

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodispatcher: Optionally exit when queue is empty
Zack Cerza [Tue, 22 Mar 2022 01:38:04 +0000 (19:38 -0600)]
dispatcher: Optionally exit when queue is empty

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agosupervisor: Return job's return code
Zack Cerza [Mon, 21 Mar 2022 23:44:34 +0000 (17:44 -0600)]
supervisor: Return job's return code

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoAdd 'integration' GitHub Action
Zack Cerza [Mon, 21 Mar 2022 16:20:57 +0000 (10:20 -0600)]
Add 'integration' GitHub Action

This will use our recent docker-compose work.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agostart.sh: Use current branch by default
Zack Cerza [Mon, 21 Mar 2022 16:47:12 +0000 (10:47 -0600)]
start.sh: Use current branch by default

Since the main use-case for this work at the moment is self-testing
teuthology, let's make it easy to test the same branch that's being
worked on.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoteuthology.sh: Use the teuthology:no-ceph suite
Zack Cerza [Wed, 26 Jan 2022 16:39:10 +0000 (09:39 -0700)]
teuthology.sh: Use the teuthology:no-ceph suite

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotestnode: Install apache2 and nfs
Zack Cerza [Mon, 14 Feb 2022 19:25:11 +0000 (12:25 -0700)]
testnode: Install apache2 and nfs

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose.yml: Force testnode arch
Zack Cerza [Fri, 4 Feb 2022 00:50:41 +0000 (17:50 -0700)]
docker-compose.yml: Force testnode arch

I initially worked on this on an M1 Mac, and that caused problems with
scheduling due to a lack of aarch64 packages. The M1 can run amd64
images, though.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotestnode: Add stop script
Zack Cerza [Fri, 4 Feb 2022 00:04:59 +0000 (17:04 -0700)]
testnode: Add stop script

So that each container marks itself down before stopping.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agotestnode.sh: Retry submitting to paddles
Zack Cerza [Fri, 4 Feb 2022 00:03:07 +0000 (17:03 -0700)]
testnode.sh: Retry submitting to paddles

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoDockerfile-testnode: Switch to Ubuntu
Zack Cerza [Fri, 4 Feb 2022 00:02:21 +0000 (17:02 -0700)]
Dockerfile-testnode: Switch to Ubuntu

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agonuke: In containers, simply kill sshd
Zack Cerza [Wed, 2 Feb 2022 02:07:53 +0000 (19:07 -0700)]
nuke: In containers, simply kill sshd

At least with the testnode containers I'm working on at the moment,
this appears to be the best way to shut them down from inside.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agostart.sh: Copy conf files into container
Zack Cerza [Wed, 26 Jan 2022 16:40:10 +0000 (09:40 -0700)]
start.sh: Copy conf files into container

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose.yml: Use three testnodes
Zack Cerza [Wed, 26 Jan 2022 16:38:50 +0000 (09:38 -0700)]
docker-compose.yml: Use three testnodes

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoDockerfile-testnode: Install Python packages
Zack Cerza [Tue, 25 Jan 2022 19:04:15 +0000 (12:04 -0700)]
Dockerfile-testnode: Install Python packages

These are needed by ansible

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoteuthology.sh: Use absolute paths
Zack Cerza [Tue, 25 Jan 2022 18:47:28 +0000 (11:47 -0700)]
teuthology.sh: Use absolute paths

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years ago.gitignore: Ignore more built docs
Zack Cerza [Tue, 25 Jan 2022 18:45:29 +0000 (11:45 -0700)]
.gitignore: Ignore more built docs

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Add .dockerignore
Zack Cerza [Tue, 25 Jan 2022 18:44:52 +0000 (11:44 -0700)]
docker-compose: Add .dockerignore

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years ago.teuthology.yaml: Use absolute paths
Zack Cerza [Tue, 25 Jan 2022 18:43:56 +0000 (11:43 -0700)]
.teuthology.yaml: Use absolute paths

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Add custom_conf.yaml
Zack Cerza [Thu, 20 Jan 2022 21:23:05 +0000 (14:23 -0700)]
docker-compose: Add custom_conf.yaml

This will be merged into generated job configs.

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agoDockerfile: Split out entrypoint to teuthology.sh
Zack Cerza [Thu, 20 Jan 2022 19:47:47 +0000 (12:47 -0700)]
Dockerfile: Split out entrypoint to teuthology.sh

Signed-off-by: Zack Cerza <zack@redhat.com>
3 years agodocker-compose: Add testnode_sudoers
Zack Cerza [Thu, 20 Jan 2022 19:05:17 +0000 (12:05 -0700)]
docker-compose: Add testnode_sudoers

Signed-off-by: Zack Cerza <zack@redhat.com>