* Inspected each error and fixed / added nosec where appropriate.
* build-swift-ring.py which was throwing sec errors is no longer used so
removed it.
* Removed the dev/ directory from being checked.
Closes-Bug: #1617713
Change-Id: I25664cabca4137e5c9f499c1af3f5ce78b86fb56
This will test all rst files inside the doc directory for style issues with
doc8 (an opinionated style checker for rst styles of documentation).
This will fix all syntax issues identified by doc8 and will improve
the syntax.
Change-Id: Id1b9563e07e77e306aef5a0767c98c27f87c5c0e
Now that there is a passing gate job, we can claim support for
Python 3.5 in the classifier. This patch also adds the convenience
py35 venv.
Change-Id: Ia7b1fb88ac108e1e8fd6ed963967e731ae3ca5a4
Closes-Bug: #1603006
The Ubuntu Mitaka repo is release, and we have add it.
So it is time to add the Ubuntu binary gate.
Closes-Bug: #1560386
Change-Id: I29d01147595c4ebebfa00798d01d5fd7398123a6
A recent change related to sudo securepath broke how sudo -E
works. Now the PATH is reset by sudo as set by tox. As a result
we can no longer rely on sudo -E anywhere in our gating system
relating to path inheritence from the parent shell.
This patch uses a shell operation in the setup_nodes.yml code
to chmod the docker socket to 666 so docker containers can build
properly. Now docker operations don't return a permission denied
and we no longer require the sudo -E operation in any of our tox
scripts. This isn't a security vulnerability because our gate
scripts are only meant to be run in OpenStack infrastructure.
To make this more clear I recommend moving these shell scripts to
tests/gate.
Change-Id: I5b3d6e280e3c12a25defedb14b5589ba642043fa
Closes-Bug: #1562383
For proper release note generation on the releases.openstack.org
website, this change will need to be backported into mitaka and
liberty as well. Then a special one-file reno file will have to
be added for mitaka describing the features and the same story
for liberty.
See log of the discussion here:
http://eavesdrop.openstack.org/irclogs/%23openstack-release/%23openstack-release.2016-03-23.log.html#t2016-03-23T18:00:05
Change-Id: I3c298ae08ec4645f384ea5829cb0851fe82f4557
Partially-Implements: blueprint add-reno
Bandit is a job that parses and analyzes python code to detect
common insecure programming practices.
TrivialFix
Change-Id: Iea23a9bd23b25827043f02aa1a62fb0724f1d0ee
According to the PTI (=Python Test Interface,
http://governance.openstack.org/reference/cti/python_cti.html), pep8
is the interface for codestyle checks. Move all tests from linters to
pep8.
This change will be followed by a change to project-config to use pep8
for testing in the gate.
Change-Id: I1a48f4b1e0b0950640192bcfc55121619a844b50
The existing gate partitioned a disk for use with docker, depending
on the gate it would use the swap disk (RAX) or a spare disk (HP).
However, with the new gates (Bluebox + OVH) there is neither a spare
disk nor a swap disk. This leaves us with one choice: File based loop
device.
This patch creates a file at /swapfile to ensure we have swap. It
creates a file at /docker to ensure we have a loop device for Docker.
Right now the /docker file is 10GB and the /swapfile is 4GB due to
size limitations in the gate across all servers and types. This has
proven to be enough space for all our current tests.
Additionally, reduce the number of threads the gate uses to 4 to
prevent the lockup and hour timeout we have been seeing as more
recently in the gate.
The scripts that setup the gate are moved to the tools directory
rather than the tests directory to match the structure of the other
projects.
Partially-Implements: blueprint functional-testing-gate
Change-Id: I3e370f2382b6df36103d8b2ceda9b21d9b4229d5
In an effort to reduce the number of gates, we can combine
non-conflicting jobs as we have already done with pep8 and bashate
TrivialFix
Change-Id: I81c2e523c563f8c761b57c8f20ca807d59da5d68
To solve the problem of "db type could not
be determined" on py34 we have to run first
the py34 env to, then, run py27.
This patch puts py34 first on the tox.ini list
of envs to avoid this problem to happen.
Closes-Bug: #1489059
Change-Id: I4f791dfa620eacdd76cd46f193e190071ab64b6c
By ignoring the appropriate tests that pep8 does we can properly run
*most* of the pep8 tests on all of our modules allowing for a more
consistent coding style.
Closes-Bug: #1528431
Change-Id: I33f27a250d06d4f044267aa3ad189e092789b8df
Convert config creation from a playbook to an action_plugin. This
reduces the complexity and confusion while retaining the same augment
structure and flexibility.
This allows us to remove the 0-byte files as requirements. They will
still be used if they are present (this means we require additional
documentation around them).
DocImpact
Closes-Bug: #1528430
Change-Id: I2c789f6be9f195c7771ca093a6d59499564b4740
When a development environment is under a proxy, tox is failed even if
environment variables of the proxy are set.
This patch fixes this problem.
Change-Id: I685ddbc6bb6e0fe25c308c35a7581785eebe3629
To support multinode we must now distribute our setup to multiple
hosts. Instead of making special rules for this, we are going to
convert our existing setup to Ansible. This way both setup proceedures
take place in the exact same fashion.
Partially-Implements: blueprint multinode-gate
Change-Id: I43ece298bba994e9b5083403ef3cf6d4245cda6d
The gates have been renamed. We can remove these jobs now.
Change-Id: I4f140301d0b0a04ca4196a755625f32569fe4b32
Partially-Implements: blueprint multinode-gate
Due to the length of the job name and the tox target we run into an
uncommon limitation; the virtualenv that tox launches is nested in a
path that is too long. This leads to and error on our longest named
job which prevents tox from running at all.
This limitation is the limit for the line length of the first line
in a shell script. See `man execve` for more info. A quote from that
manpage: 'A maximum line length of 127 characters is allowed for the
first line in a #! executable shell script.'
Change-Id: I43fba2a5ff1890d699045496c9eaee5e849f3e75
Backport: Liberty
Partially-Implements: blueprint multinode-gate
So we can respect DRY and share as much code as possible I have broken
out the common code between the aio and multinode gate scripts.
Additionally, this lays the ground work for removing our policy on
root-everywhere by using sudo. Once we get the non-root stuff worked
out we can gate as non-root user.
Change-Id: I781c597ab10f2296b95f51ae27e0fa617ffe0a66
Partially-Implements: blueprint multinode-gate
The upstream gate patches have merged and these can be safely removed.
Change-Id: Icfad0ff161705239d75de2352bd61c5c9313e81c
Partially-Implements: blueprint functional-testing-gate
This runs the ansible playbooks to completion.
It does not validate that OpenStack is working yet, but it will ensure
Ansible did not break.
Additional gates will be needed for this and there is a patch in
project-config to handle that.
Change-Id: I7a24a704023cc8f19d42844636e9cb512060f693
backport: liberty
Partially-Implements: blueprint functional-testing-gate
As jenkins docs job use venv envrionment to work, we
need add such section to make it work.
Partially-Implements: blueprint kolla-tox-doc
Change-Id: I716219515f2bf1375fd094b3aeca866cbcf5c7c6
There is no longer a docker build system in the tree. Remove
the cruft that was missed in the original removal patches.
Partially-Implements: blueprint gate-source-builds
Change-Id: I4e6132502e8c0f812a0b3a767dd9c7f5c7b92fe3
The template option is deprecated and --template is now default.
Also rename the tox jobs test calls since we won't have Docker
build operations.
Change-Id: I99df9c337680003e042e7e56a19d6cae2a59ed74
Partially-Implements: blueprint gate-source-builds
Updated build.py to reflect this change.
Deprecate --template option and make it a noop.
Change-Id: I7cd98d1ee684a4c64984a49597159868152683b2
Partially-Implements: blueprint remove-docker-dir
Remove the docker directory (yay) and old build tools.
This will result in an f21 failing gate - however, I have a patch
submission to remove that gate from our project configuration.
Change-Id: I3c461cedb6906422c8076f60c470e773d6cdcf33
Partially-Implements: blueprint remove-docker-dir
Start off the removal of the docker directory by making the gate
only run against docker templates. The idea is we are going to
from this patch set forward completely abandon the functioning of
the docker directory and focus on making templates work properly.
In order to facilitate that, this patch set makes sure each change
gates properly for the changed service in the Templates build.
Note because git review and gerrit can't keep history on removal
followed by a git move operation, we first git rm the files affected
then git mv them to get the gate working again.
Every other patch in this patch set will fail the gate. That is
expected behavior.
Change-Id: I1be2e2638aef4ada038bfe5f3dd563f040542df2
Many tiers have been shed over this issue and frankly enough is enough
on this tiering thing, it's tiering us apart! Now we use threading a
bit better as well.
No more tiers! Puns very much intended.
Additionally, this refactors the function names to make inc0 happier
and be consistent.
We also modify the test_build.py to catch the new statuses introduced
by the regex patch. Then we remove the Ubuntu Source from the Docker
folder test as that will never ever be functional.
Also fixed regex to properly match true regex expressions.
Co-Authored-By: Michal Jastrzebski (inc0) <michal.jastrzebski@intel.com>
Change-Id: I650fd6af76eddb809756762222e66aefd6fc1dca
Partially-Implements: blueprint build-script
We will gate on all combos of:
/docker
/docker_templates
Centos
Ubuntu
Binary
Source
Except for Ubuntu + Binary because there is no delorean
style repository for Ubuntu.
Change-Id: Ic1ed8c22c2f86ff339299939da9ac492a7c7c5f5
Partially-Impelements: blueprint gate-source-builds
The tox targets were previously src and rdo when they should
have been source and binary.
The gate review has been changed to these as well.
Change-Id: Ib09980c77e5859fa28a54953fc1f3f123c1886d7