82 Commits

Author SHA1 Message Date
Nish Patwa
178cf88759 [DOCS] Added release-name as a watermark to Docs.
Added a water mark to the role documentation
to make clear to deployers which release they're
working with.

Modified conf.py that adds watermark to the documentation according
to particular branch. If the current branch is master than
watermark is 'Pre-release' and if the current branch is
stable/<release-name> than watermark is <release-name>.

This is a combined implementation based on the following
patches:
- https://review.openstack.org/372565
- https://review.openstack.org/382637
- https://review.openstack.org/384140

Change-Id: I9996d6cb33fc87faf95af99e0db483c593bcf69b
2016-10-18 17:03:29 +00:00
Kevin Carter
4cd19d9ce8 Remove 'ignore_errors: true' in favor of 'failed_when: false'
This change removes the use of 'ignore_errors: true' because it causes deployers
to see red output and a stacktrace, which traditionally means something is broken,
even when the failure is known to have a fall back option or be intentional. This
conversion will provide a generally cleaner interface.

It should be noted that the 'failed' filter will still function normally. Tasks
with the 'failed_when: false' option will still be marked as 'failed' in any
registered variable. This change simply makes the output look cleaner.

Change-Id: I5986a6588788b09501935fcd0fc18b96531bdca2
Closes-Bug: #1633438
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-10-14 16:46:07 -05:00
Andreas Jaeger
16ac444076 Enable release notes translation
Releasenote translation publishing is being prepared. 'locale_dirs'
needs to be defined in conf.py to generate translated version of the
release notes.

Note that this repository might not get translated release notes - or
no translations at all - but we add the entry here nevertheless to
prepare for it.

Change-Id: I6f0e296c17ace3a1cbb4c11c46c1b25b4af5ade6
2016-10-06 20:37:56 +02:00
Jesse Pretorius
e795959568 Use centralised Ansible test scripts
This patch consumes the centralised Ansible test scripts
implemented in https://review.openstack.org/381853

Change-Id: Iefd28bcfc32e3f10d2721c5bd8db686a90c77b22
2016-10-05 18:25:34 +01:00
Deepak
927bcaf586 Update test-vars.yml for repositories
Renamed in os_rally role repo
Changed test-vars.yml to os_rally-overrides.yml
Removed test-vars.yml

Change-Id: I73c0a045496f7c36bd00748cb2096d20b5aa7b7b
Partial-Bug: #1629284
2016-10-05 22:01:48 +05:30
Jesse Pretorius
b0c43977a8 Remove install_test_packages variable
With https://review.openstack.org/381479 merged, setting this
variable in tox.ini via an extra var is unnecessary.

Change-Id: I98aeeb8f08ca2affc3db2042ec52a0317d4fb226
2016-10-04 11:42:36 +01:00
OpenStack Proposal Bot
caf85332cf Updated from global requirements
Change-Id: I3dd5461dcea5e481056d3daefa7d6e576f205653
2016-09-30 02:22:25 +00:00
Major Hayden
4118bcbf7c Update reno for stable/newton
Change-Id: Ic5114c0d507e0455620bcadf7cb18392db123ccd
2016-09-29 14:22:25 -05:00
Jesse Pretorius
0e3fe0b5fa Use centralised test scripts
This patch consumes the test scripts implemented by
https://review.openstack.org/375061 to ensure that
the tests and test preparation is consistent and
more maintainable.

Change-Id: Ib1ed37c6994688775f44ca11df36e8222b0ce05d
2016-09-28 11:34:10 +01:00
Jesse Pretorius
b652896a76 Revert dynamic includes for inventory-based conditionals
Forcing dynamic includes for inventory-based conditionals
results in incomplete execution.

Change-Id: Ic650edfd690849fe18769df78a2eea81da892485
14.0.0.0rc2
2016-09-26 19:53:15 +01:00
Jesse Pretorius
d721255ef3 Force Ansible to use dynamic includes
Ansible 2.1.1 introduces a regression in the way conditional
includes are handled which results in every task in the
included file being evaluated even if the condition for the
include is not met. This extends the run time significantly
for a deployment.

This patch forces all conditional includes to be dynamic.

Change-Id: I6029769c2fe0847a2d8fcbd62cdc41168fc89a60
Related-Bug: https://github.com/ansible/ansible/issues/17687
2016-09-22 15:36:42 +01:00
Jenkins
e1a0b49d8c Merge "delete python bytecode including pyo before every test run" 14.0.0.0rc1 2016-09-21 06:21:23 +00:00
Kevin Carter
4fb142762e Update testing bits for consistency
Change-Id: I6835cefb6ca2eabc6d4bfbb8f2cd66479d0247cb
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-09-17 16:55:27 -04:00
avnish
dda5f299f9 delete python bytecode including pyo before every test run
Change-Id: I1e51ba4f4aa4c8c3b535ba594cb7cb355ca49383
2016-09-16 09:38:34 +05:30
Jenkins
95356e8ac0 Merge "Remove duplicate container prep from role test" 2016-09-15 08:46:00 +00:00
Kevin Carter
9f93c1f166 Add role linking to tox tests
Change-Id: I559ce1784c6f4796a9f2de72b6ff778ffe2d065a
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-09-14 11:07:29 -05:00
Travis Truman
54555e0b06 Remove duplicate container prep from role test
test-setup-host already takes care of container prep
so the test playbook should not also include the container
prep play

Change-Id: Ic93eeca534486fc678a3960cde2eeea970c8326e
2016-09-14 11:15:30 -04:00
Jenkins
f3ee697053 Merge "Remove apt-get update from Vagrantfile" 2016-09-12 21:05:31 +00:00
Travis Truman
9f281faa84 Ansible 2.1.x role testing
Change-Id: I2c4ee100870f10b132d392ced5bb8783fd878863
2016-09-12 14:54:15 -04:00
Travis Truman
f8751bc191 Remove apt-get update from Vagrantfile
It is already performed in run_tests.sh

Change-Id: I453bc66d2c59511238ba4d2bd8054c54e6cdbd64
2016-09-12 14:40:59 -04:00
Jesse Pretorius
6c33995f3b Compress test execution logs
The volume of logs we collect in CI jobs are extensive. This
patch ensures that the logs collected are compressed to reduce
the space taken in CI systems.

PYTHONUNBUFFERED is also set to ensure that the console log
from the CI jobs is recorded in the exact order of execution.

Change-Id: I60842285cd915d3c61b54003328408a8fc3d68f2
Related-Bug: #1620849
2016-09-09 10:45:41 +01:00
Jesse Pretorius
bf15d504ef Rename package lists (and related vars) appropriately
In order to make it easier to differentiate between the lists of
python packages, distribution packages, downloaded packages,
package pins and other similar variables the variable names are
being changed to ensure that they have a more explicit suffix
that defines the purpose and makes the naming more consistent.

This is to facilitate a lookup plugin which will be able to look
up all the package lists and present them as a consolidated piece
of data which may be used for artifact preparation.

Change-Id: I85fe0d5f4235c5d71ff1e8fc4066a9d1e0932684
14.0.0.0b3
2016-08-30 19:58:46 +01:00
Kevin Carter
03e48682de Enable log collection after functional testing
This change enables log collection within the gate so that further analysis
on gate tasks can be performed post build. This is very useful when
debugging problems.

Change-Id: I8e95d9aa322ea1f1006dcbca169cc518c0e1361d
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-08-29 21:37:17 -05:00
Jenkins
d85a98f0df Merge "Remove rally_host_group variable" 2016-08-24 19:25:36 +00:00
Travis Truman
c0698d207b Remove rally_host_group variable
It was duplicating the meaning/purpose of the role
variable `rally_role_project_group`

Also ensure that additional tasks are limited to only
a single host in the host group.

Change-Id: I3d5cc822cc0d3c2b0b3ba7b05a9fe1b6b9e3a839
2016-08-23 14:45:16 -04:00
Travis Truman
3d6a643eac [DOCS] - Use new documentation tree structure
Changes the rally role doc tree to the new structure
we are adopting for each role.

Change-Id: I8776c6953b65753d9bf54b13f3f7a282f3ce8df0
2016-08-22 16:07:06 -05:00
Jenkins
0c26304c64 Merge "Cleanup/standardize usage of tags" 2016-08-22 15:29:42 +00:00
Jesse Pretorius
50188e880d Make all linting tests use upper-constraints
As per [1] all linting tests can now use upper-constraints. This patch
removes all instances of the install_command override relating to lint
testing which were needed to negate the use of upper-constraints.

[1] http://lists.openstack.org/pipermail/openstack-dev/2016-August/101474.html

Change-Id: Ib3576a0333dee510d3f08aca6f4a9bbb1eeda4e5
2016-08-20 16:06:36 +01:00
Travis Truman
7b26715562 Cleanup/standardize usage of tags
The numerous tags within the role have been condensed
to two tags: rally-install and rally-config

These tags have been chosen as they are namespaced
and cover the two major functions of the role.

Change-Id: I781eb1edc8ea1d8bb093a579b9bb88498ed2d534
2016-08-20 09:35:17 -04:00
Jenkins
58ababd57d Merge "Functional testing for os_rally role" 2016-08-20 13:23:48 +00:00
Jenkins
64eb42d6bb Merge "Add SNI support via OS packages for os_rally" 2016-08-19 20:13:28 +00:00
Travis Truman
75bff29613 Make os_rally inventory group configurable
The default value of "rally_all" remains, but this
allows deployers to target the role to multiple
groups now.

Change-Id: Id1bbda227032f66270fe5656250be7794a1dd4af
2016-08-18 18:21:38 -04:00
Qin Wang
8ae853d309 Add SNI support via OS packages for os_rally
Some Linux distributions, such as CentOS 7 and Xenial, have trouble
validating SSL certificates when using get_url with servers
that use Server Name Indication (SNI).

This patch adds those packages to the list of required packages and
uses bindep to install them in developer test environments the same
way that the gate tests install them.

Change-Id: Ic3bf4b4238c1c6260d3c8dc0e4800ff26691ae93
2016-08-18 18:47:18 +00:00
Travis Truman
da91e5b015 Functional testing for os_rally role
The role gate will now actually run simple
Rally scenario against Keystone to validate that
the install and configuration is correct.

Change-Id: Ie5d52636700e8c276b0e793e815ae513d25415bb
2016-08-18 11:21:32 -04:00
OpenStack Proposal Bot
a11e603896 Updated from global requirements
Change-Id: I1388c5928f593025023ae831772c0e23dea1211b
2016-08-18 05:31:03 +00:00
Jesse Pretorius
6cca392b2a Add python packages for SNI support in tests
This adds python packages required for SNI support to ensure that tox
installs the packages into the venv when running tests.

Change-Id: I320e63df935ffa9ad0b561f16d7e42c2f03c7aac
2016-08-16 13:35:32 +00:00
Andreas Jaeger
292d0b0155 Move other-requirements.txt to bindep.txt
The default filename for documenting binary dependencies has been
changed from "other-requirements.txt" to "bindep.txt" with the release
of bindep 2.1.0. While the previous name is still supported, it will
be deprecated.

Move the file around to follow this change.

Note that this change is self-testing, the OpenStack CI infrastructure
will use a "bindep.txt" file to setup nodes for testing.

For more information about bindep, see also:
http://docs.openstack.org/infra/manual/drivers.html#package-requirements
http://docs.openstack.org/infra/bindep/

As well as this announcement:
http://lists.openstack.org/pipermail/openstack-dev/2016-August/101590.html

Change-Id: Ice1ab5f159882e55bc1550cb1ccd27bf07058c98
2016-08-12 21:01:23 +02:00
Jean-Philippe Evrard
a431c39a67 Include ansible commands for ansible linting
The plugin repo needs to be cloned for ansible-lint to
understand ansible plugins. The commands currently
reside in tox.ini under the ansible section and are not
currently included. This commit fixes that error.

Change-Id: I7d209c68ec1bf6760f84048d1f9983476ff82e68
2016-08-11 18:10:06 +01:00
Kevin Carter
449becae64 Disable stderr logging
OSLO logging currently defaults the 'use_stderr' option to True
which results duplicate logs in service daemon logs for both
upstart and systemd. To correct this issue the use_stderr
option has been set to false.

Change-Id: I3799265a48c8f92f9cef77a10b3f02fa6aa66b7f
Closes-Bug: 1588051
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-08-04 17:45:04 +00:00
Jesse Pretorius
087acfb6e8 Add project group to role
This patch adds a var used by the repo_build process to determine
which host group to check for members of before building the pip
packages required by this role. This provides the ability to
optimise the repo build process to only building the packages
that are required for an environment.

Depends-On: Idda16b4f382eee57c7469af898859d6d81d4eb30
Change-Id: Iedb4c0c91daa291f881a9fc00c5b8c40bb312ce3
2016-08-04 05:18:13 +01:00
Jesse Pretorius
61b08b72b1 Add ability to change apt/yum package state
The current method of installing the distribution packages required is
set in the tasks and cannot be changed by a deployer.

Currently the apt task always installs the latest package. This results
in unexpected binary changes when a deployer may simply be trying to
execute a configuration change.

This patch adds the ability for a deployer to change the desired state
so that the results are predictable.

Change-Id: I1708ca8285ffa2bbd1a989b187ef3c6d9dd005c2
2016-08-02 15:03:37 +01:00
Jenkins
600e2be755 Merge "Implement Ubuntu 16.04 support" 2016-07-29 10:48:10 +00:00
Jesse Pretorius
254418abe8 Ensure that doc linting is included in the linters test
The 'docs' tox target executes the doc8 lint test which may result in
failures when testing documentation builds, but OpenStack-CI does not
execute that tox target.

In order to ensure that we catch all standard documentation syntax
errors and prevent them from merging, this patch includes the docs
target in the 'linters' chain of tests.

Fixes for any failures which result from executing this test are also
included in the patch.

Change-Id: Iacff67847b0708a5d41ab3e1accf59f40326497d
2016-07-26 07:38:59 +01:00
Travis Truman
a998779940 Implement Ubuntu 16.04 support
Just noting in the role metadata that the role supports Xenial

Change-Id: I70fba8cd35f13405a0261d3aafab4681f2ca3ebf
Implements: blueprint support-ubuntu-1604
2016-07-21 13:27:11 -04:00
Jimmy McCrory
f7968fee28 Remove openstack_hosts from test requirements
The openstack_hosts role is not used in any of the test playbooks
or required by dependent roles and can be removed from the test
role requirements.

Change-Id: Id9395e745249c723c5d8135ae4c9661dcb0f7221
2016-07-20 18:47:02 -07:00
Jesse Pretorius
8b068b08fe Optimise pip install tasks
Unlike the Ansible apt module, the Ansible pip module does not
recognise a with_items list and process all the items at once.

To optimise the pip install tasks, this patch replaces the use
of with_items with a join filter so that the pip install task
does an install with all the packages in a list, ensuring that
the execution is one action instead of many.

Change-Id: I403e36a67d2e06f5cd32fe28222b597a17ef42a1
2016-07-18 16:23:59 +01:00
Jesse Pretorius
32e3b2ad1f Use plugins repo version of the human_log callback plugin
With the implementation of https://review.openstack.org/321331 the
human_log callback plugin is now part of the plugins repo.

This patch removes the retrofitted version in tox in favor of using
the version from the plugins repo instead.

Change-Id: I173f065f004d3336f6249625c8c36a609742389e
2016-07-15 14:03:33 +01:00
Jenkins
857f19cf36 Merge "Updated from global requirements" 2016-07-15 10:30:38 +00:00
OpenStack Proposal Bot
3aca1307d4 Updated from global requirements
Change-Id: Ie80e071fd0600155086b4bafaa0f65a8ef27569c
2016-07-15 03:58:04 +00:00
Mike Carden
338cf7caf5 Remove duplicates from .gitignore
This patch removes the duplicated releasenotes/build
lines from .gitignore.

Change-Id: Ia69411f2a4fc7440c05a06efa96bd8b45fac4dbd
2016-07-15 12:07:22 +10:00