Commit Graph

71 Commits

Author SHA1 Message Date
Paul Belanger 720b0b1ca9 Uncap zuul_pip_version
All of our fixes have now landed.

Depends-On: https://review.opendev.org/c/windmill/windmill-config/+/797656/
Depends-On: https://review.opendev.org/c/windmill/windmill-config/+/797663
Change-Id: I7c83244fd32adb5ae25dd0e1feea2da4aa8b0a92
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2021-06-23 14:13:25 -04:00
Paul Belanger 354747ab5f Hack in database support
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>
2021-06-23 11:31:43 -04:00
Paul Belanger 1ee05e252a Uncap nodepool_pip_version
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>
2021-06-23 00:03:53 -04:00
Paul Belanger f3e4ecf406 Collect zookeeper logs
Change-Id: I3d8805a5ae6ef19fb3e56fe33a42e3ca8006086c
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2021-06-10 19:22:53 -04:00
Paul Belanger a23d36067c Pin nodepool / zuul until zookeeper TLS support works
Also make windmill-ubuntu-bionic voting again.

Depends-On: https://review.opendev.org/c/windmill/windmill-config/+/795898
Change-Id: I39b24cdd0d1ee2801e2a7b1e87be17ab65a15419
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2021-06-10 17:25:42 -04:00
Paul Belanger d38f969429 Add zuul-registry support
Depends-On: https://review.opendev.org/763101
Change-Id: I67c08418df38d31a01c2ecf114aa52daf8af185c
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2020-11-21 14:41:40 -05:00
Paul Belanger d21c7c01a6 Fix CI issues
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>
2020-11-21 14:41:39 -05:00
Paul Belanger b530bc4d60 Fix fallout from opendev migration
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>
2019-04-20 13:14:38 -04:00
OpenDev Sysadmins 0494180cf8 OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:52:08 +00:00
Paul Belanger bdc5925121 Add additional checks for nginx
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>
2019-03-31 15:41:05 -04:00
Paul Belanger c548ce678b Just disable hostkey checking everywhere
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>
2019-03-28 11:04:55 -04:00
Paul Belanger 0399fce301 Disable host_key_checking for testing
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>
2019-03-14 15:32:48 -04:00
Paul Belanger e467267dd2 Move files into windmill-config
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>
2019-03-04 23:35:05 -05:00
Paul Belanger 609e460994 Create ansible virtualenv on bastion
Change-Id: I7b925ae283d25d42b2079d9ee5789b9fef97aab6
Depends-On: https://review.openstack.org/638208
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-03-04 13:57:22 -05:00
Paul Belanger 6efea7a8c1 Use multiple run playbooks for windmill jobs
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>
2019-03-04 00:36:11 -05:00
Paul Belanger 88eacbed7a Add ansible.cfg to inventory folder
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>
2019-03-01 15:03:45 -05:00
Paul Belanger a09d86b5d0 Properly setup windmill-ops deployment
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>
2019-02-27 23:05:27 -05:00
Zuul 677bf183f8 Merge "Bootstrap nodes using windmill-ops" 2019-02-28 00:33:15 +00:00
Paul Belanger 7c173d9ea5 Move playbooks/bastion.yaml into tests folder
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>
2019-02-27 09:01:08 -05:00
Paul Belanger c77a8dee8f Bootstrap nodes using windmill-ops
Change-Id: I1078056dcf30529da8da86217417dae84428ee3b
Depends-On: https://review.openstack.org/639109
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-02-26 21:38:56 -05:00
Paul Belanger 38ebb1b650 Remove ensure-output-dirs role
This is now part of our base job.

Change-Id: If97d2a31f98630f0b3b57d865ee3e6849fb112e9
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-01-04 15:35:09 -05:00
Paul Belanger 272e87dc07 Enable verbose mode for ansible-playbook
This is helpful if we need to debug ansible.

Change-Id: I2298473cf9e7e17b2a16dcd4ef04ba6a4f0bf3a6
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-01-03 22:35:23 -05:00
Zuul c8fa5ce581 Merge "Switch virtualenv_install_method to package" 2018-12-22 16:53:32 +00:00
Paul Belanger 5887dc051b Switch virtualenv_install_method to package
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>
2018-12-22 10:56:40 -05:00
Paul Belanger a974997b47 Use -f1 (forks) over serial for gate testing
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>
2018-12-20 17:14:25 -05:00
Paul Belanger ec7a464e2a Add yamllint to tox -elinters
This adds and enabled strict yamllinting on our playbooks / roles.

Change-Id: Ie66ab53c7d6ed4dee1d18a30bdadd9c679549d47
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2018-12-12 20:59:38 -05:00
Paul Belanger acdfa8785c Remove hardcoded ansible.cfg in tox
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>
2018-12-10 15:12:49 -05:00
Paul Belanger a88fddea49 Enable fact_caching to speed up testing
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>
2018-12-05 21:36:30 -05:00
Zuul 8a7aea4cdb Merge "Add windmill-tox-molecule" 2018-08-23 20:40:14 +00:00
Paul Belanger b0cf668d71 Add windmill-tox-molecule
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>
2018-08-23 15:34:07 -04:00
Paul Belanger b6b5235734 Switch to new log collecting process
Change-Id: Iedce72d782484d478eebe6b7e3c7fd1fd7cb56c9
Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2018-08-20 22:27:06 -04:00
Paul Belanger 8a0415d871
Replace shade with openstacksdk
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>
2018-08-02 21:29:24 -04:00
Artem Goncharov 419e46ea0c
enable gear logging configuration
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>
2018-05-16 17:13:47 -04:00
Paul Belanger 2d1af77849
Simplify bindep envlist for tox
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>
2018-05-15 13:51:17 -04:00
Paul Belanger 714f03abf0
Use separate venv for bindep
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>
2018-05-11 20:12:16 -04:00
Paul Belanger e79264d4f1
Refactor jobs to support pip / git installation testing
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>
2018-04-19 20:38:48 -04:00
Paul Belanger 5090dae229
Collect tox logs
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>
2018-04-19 14:06:25 -04:00
Paul Belanger 8cbe384614
Update tests/collect-logs.yaml for new scheduler order
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>
2018-04-15 21:52:42 -04:00
Paul Belanger e8b400a6e2
Add support for zuul_file_main_yaml
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>
2018-04-15 16:51:20 -04:00
Paul Belanger 9d6fbc0626
Remove /etc/zuul/config from collect-logs
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>
2018-04-15 16:50:49 -04:00
Paul Belanger 4c698a9740
Stop using pre-compiled wheels
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>
2018-04-13 14:22:59 -04:00
Paul Belanger fc2550d942
Whitelist profile_tasks, timer for ansible
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>
2018-04-12 10:04:31 -04:00
Paul Belanger 04835bedaa
Hardcode windmill source directory for job playbooks
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>
2018-04-10 21:06:19 -04:00
Paul Belanger d83d4ff315
Add support for ARA
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>
2018-04-10 13:19:13 -04:00
Paul Belanger 9661ae9d40
Move group_vars next to our inventory file
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>
2018-04-10 11:13:15 -04:00
Paul Belanger 501f7eb97d
Replace native zuul jobs with tox based jobs
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>
2018-04-10 11:13:13 -04:00
Paul Belanger 0a1b5f5834
Add windmill-tox-ubuntu-xenial
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>
2018-04-10 10:56:46 -04:00
Paul Belanger a1a7f2cd32
Add statsd01 host
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>
2018-04-04 13:26:57 -04:00
Zuul 82ffd81e5e Merge "Add tox deploy job to validate bootstrap process" 2018-04-03 16:11:00 +00:00
Paul Belanger bd142ffa4b
Add tox deploy job to validate bootstrap process
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>
2018-04-03 11:08:35 -04:00