This really needs to be a role, but don't have time to add it. For now,
just set it up manually.
Change-Id: If9a3378af1e5d94c068d27483f405aee30c8c691
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Now that zookeeper is configured for TLS, we can uncap nodepool to use
the latest version.
Change-Id: I96ddf1349dabb42d0f4e28951a91ff4d34c64d6a
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This is a catch all to get CI working again. In some cases, like
ansible-lint we will just ignore the warnings for now, and loop back to
clean them up.
Change-Id: I3e09f8c2b470062634d981f2667b913820c58f7f
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Clean up places where we expected git.o.o.
Depends-On: https://review.opendev.org/654021
Change-Id: Ic0c8f116c083ed6d4f930f787bef8b0299194e46
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Validate nginx service is running and also collect some logs.
Change-Id: I3d3daf0344d978cf72ea171e84e3f1439725d990
Depends-On: https://review.openstack.org/648850
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
For testing, don't both with hostkey checking. We know ansible does the
right thing is proper ssh host keys are installed.
Change-Id: Ic6dfa63247741f904516897e9d27a2b57a4c2d7e
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This is starting to become an issue, and since we are moving the
generation of ~/.ssh/known_hosts into windmill-ops, harder to deal with
SSH known hosts. A future patch may dynamically generate our inventory
file, especially if we move to more multinode testing.
Change-Id: Id94228b20379decc4145701d0cb8d57791d1190c
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This breaks out all configuration / inventory files into the
windmill-config repo.
Change-Id: I54233307afbe2b76e4456ab1d55073c79da718f5
Depends-On: https://review.openstack.org/640857
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This breaks out the specific things we need to do for testing, into
their own playbook runs.
Change-Id: I50964b393bc4c5977d7f59e9c4bac48c1ea405ac
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
We should provide a default ansible.cfg file that users can either use
or modify.
Change-Id: Id6258e7a5250428de85693184e51df41094f170c
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Seems we didn't propelry look at the logs of our jobs, otherwise we
would have seem this was completly missing.
Change-Id: Ied5116ebbcaf6db2d309cce0d7009b2c88521149
Depends-On: https://review.openstack.org/639907
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This really isn't needed for production deployments, it is more to make
sure our testing in the gate is happy.
Change-Id: Ic8e367892fbb54a57d9864e9cdb8579783a5d83f
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Default to the distro version of virtualenv, we don't want to get into
the process of managing this dependency.
Change-Id: Ic10ff74ff1bdf99a2d37475abe5434eba3214d4b
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Because we us a single VM for all-in-one testing, switch to forks to
ensure we only run 1 task at a time.
Change-Id: Ia933ec0efc6d04ac02300f3d82faf26cd583d1d1
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This adds and enabled strict yamllinting on our playbooks / roles.
Change-Id: Ie66ab53c7d6ed4dee1d18a30bdadd9c679549d47
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
It is possible users want to use their own ansible.cfg file. Now we
default to what ever ansible-playbook can find. Also update our pre.yaml
file to install ansible.cfg into the home directory of the zuul user.
Change-Id: I354078caed5bee8954a7c21ebef98c8a540f6778
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
We don't need to gather facts each time, lets cache them in a jsonfile.
Change-Id: Ica8a97d1126fe74dc971487f0531641917b7bd21
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This is a shared job we'll be using for testing windmill related ansible
roles.
Change-Id: If6fdf1a94cf3a73a46a75f8ec75f389157a43ebf
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Nodepool no longer depends on shade. It has been updated to use
openstacksdk.
Change-Id: I0b3b021eebd31e5fb176da95f6726ffbe2f5d625
Depends-On: https://review.openstack.org/588413
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Geard logging configuration is not enabled by default. This results in
geard floods /var/log/messages with debug info.
Change 568234 provides default geard logging configuration file. With
this change this configuration is being enabled.
Also collect additional logs for gear.
Depends-On: https://review.openstack.org/568234/
Change-Id: I0bfdb398dd806ec92f15eaff67ca5f8251ec193f
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Rather then being a 2 step process, just run install_bindep.sh when we
call tox -ebindep.
Change-Id: I07bf6f03df547afca11737407c288e96685fef04
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Because we want to use bindep to manage our build dependencies for
ansible, we need to first create a virtualenv with only bindep, so we
can add the missing packages needed to build wheels for ansible.
This also adds ssl development headers, which were missing.
Remove bindep from requirements.txt, tox.ini includes it for bindep
environment.
Change-Id: I0e15a1fd97b0585c37a11044c7ad22985526cadb
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Because we want users to support both pip / git install methods,
refactor testing to support the testing of that.
Change-Id: I633aafce865c7d5f3b2a28aa6c5b47dc449e00ea
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
Since we use tox to install dependencies for ansible, it would be
helpful to also collect them.
Change-Id: I28e907912e6b9a02377a9cbe5ebb0306c193d209
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
When we updated I235b4d7aa9f96aae0f75d8370a410b8fe0793d61 we didn't
change the order of our log collection.
We also add some error handling around tests/collect-logs.yaml to
ensure we always generate ara-reports and rsync what ever logs we
gather.
Change-Id: Ib2bbd95be19b2963dd7eac44827112c100fdfe0a
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
We recently update ansible-role-zuul to support main.yaml for zuul.
Add an example configuration for windmill.
Change-Id: Iab506f322732757918f96567f28d2a9a830eed3f
Depends-On: https://review.openstack.org/561473
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
We are in the process of removing this folder from ansible-role-zuul,
delete it so we can land the change.
Also 2 step the removal of /etc/zuul/config/layout.yaml from
zuul.conf.j2.
Change-Id: Ic8a8e316ea91cf7ee4ad22590f5ce59d8c5ee8a8
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
We actually want to ensure users are able to use our roles outside of
openstack-infra. Since those users won't have wheel mirrors, disable
our jobs from using them too.
Change-Id: I50d8d5173869c6b69088f6ebad1234fd70135cb8
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
It was suggested by mnaser to add these callback plugins to better
profile windmill. Add them to experiment with the results and if they
show any potential issues.
Change-Id: I806eade9bf4317e71ee6af4e05f6c017d7a83f14
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This is important when are doing cross project testing, since
zuul.project.src_dir is dynamic to the project running the jobs.
Change-Id: I8684fcaf7412bdfe70727922d2d6f289481bcf36
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
ARA is a helpful tool to visualize previous runs of ansible. By
enabling it and adding it into the logs/ara-report folder, we get to
see the results hosted on logs.o.o.
Change-Id: I8bda0b94228821dc23fe63bc0c9eedc7d4bd9a0e
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
By moving our group_vars next to our inventory files, we allow users
to start customizing them.
Change-Id: Ia5354bb0d730551debcd7da95dd9256eaf080099
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
It's becoming more difficult to support a deployment installer via
zuul-executor. There is some functionality that we want to use in
ansible, but doesn't yet exist from zuul-executors. This includes
groups of groups in inventory files, group_vars next to inventory
files, and newer versions of ansible.
While I'm confident zuul will be able to do this in the future, we can
switch to tox based jobs for now with the goal to migrate back.
Change-Id: Iaace91a631dfc9528a07024c680d51e6d5a3d52f
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This refactors the existing windmill-tox-deploy job. We are basically
removing a lot of the logic from tox -edeploy and just using the venv
environment from tox. It is very much possible we may remove the
dependency on tox in the future.
Change-Id: I29a1b06c4e02e3c5f588135042f77ccc4a031a7d
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
This starts building out support for statsd, which will be helpful for
users who want to start producing reports.
Currently both nodepool / zuul only support ipv4 for statsd. As a
results, limit enabling it on ipv4 hosts for now.
Change-Id: I029376330677e035a292bf95d9e7e63b57947985
Depends-On: https://review.openstack.org/554695
Depends-On: https://review.openstack.org/556209
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
When a user tries windmill, they have a multiple options to actually
run ansible. However, we can atleast provide a basic way to bootstrap
a host and validate our playbooks and roles are in working order.
This could also be a simple way to try newer version of ansible, under
zuul gains the ability to support that.
Change-Id: I4e97b0f10437adf7a153148cc7fa5ae45e81d4de
Signed-off-by: Paul Belanger <pabelanger@redhat.com>