23 Commits

Author SHA1 Message Date
wangqi
a027f2c105 Follow the new PTI for document build
For compliance with the Project Testing Interface as described in:
https://governance.openstack.org/tc/reference/project-testing-interface.html
For more details information, please refer to:
http://lists.openstack.org/pipermail/openstack-dev/2017-December/125710.html
http://lists.openstack.org/pipermail/openstack-dev/2018-March/128594.html

Co-Authored-By: Nguyen Hai <nguyentrihai93@gmail.com>
Change-Id: I26dc41c7df57bf79db531c6e67e148e01c17e992
2018-03-26 12:53:37 +00:00
Van Hung Pham
bfb5759a53 Switch from oslosphinx to openstackdocstheme
As part of the docs migration work[0] for Pike we need to switch to use
the openstackdocstheme.

Fix one display problem with wrong section markup in the index file.

[0]https://review.openstack.org/#/c/472275/

Change-Id: Ide31218a7f37ba5d959de99cab48fc6513bf426f
2017-07-02 09:27:05 +02:00
Tim Burke
2ca303597e Make Sphinx treat warnings as errors
...and fix up the one warning that's crept in.

Change-Id: I3985d027f0ac2119ceaeb4daba5964f937de6cea
2017-03-06 23:55:40 +00:00
John Dickinson
e6dea4d699 adding reno sphinx tree
This should give the necessary tooling to set up the right
links in the right places so Swift has release notes listed
alongside other projects.

Change-Id: I4e5f1ce1fcfbb2943036c821a24a0b4a3a2d9fc8
2016-11-10 21:34:14 +00:00
John Dickinson
396baf4139 Update test-requirements.txt
The testing requirements should not cause extra packaging
work for deployers (since these aren't required to deploy).
This patch brings it in line with the latest global requirements,
except for python-swiftclient itself (which I kept with no version
specifier). By being in line with global requirements, this is a
more accurate list with respect to how things are actually tested
in the gate.

Change-Id: Iddc92d9bb135144d38c3e5aec2e95df5787e9b5b
2016-09-30 15:45:02 -07:00
Travis McPeak
b587d1606c Updating Bandit config file
This commit updates the Swift Bandit file to the new style
introduced in Bandit 1.0.  In response to the struggle with
getting a Bandit config file working and kept up to date we
introduced a simplified version in Bandit 1.0.

This commit updates Swift's bandit.yaml to use the new version.

Change-Id: Ida5dd08f4ea72a377346f2159caeb2f3741d4980
2016-09-16 09:20:34 -07:00
Petr Kovar
cf8b93918c Add install-guide for swift
This adds swift-specific contents from the OpenStack Installation Guide
in the swift repo per [1]. A separate change will remove the swift contents
from the OpenStack Installation Guide for Newton per [2].

The swift install-guide structure is based on the Install Guide
Cookiecutter [3].

Also adds tox.ini environment for install-guide and adds
openstackdocs-theme to test-requirements.txt.

[1] http://specs.openstack.org/openstack/docs-specs/specs/newton/project-specific-installguides.html
[2] http://specs.openstack.org/openstack/docs-specs/specs/newton/installguide.html
[3] http://git.openstack.org/cgit/openstack/installguide-cookiecutter/

Change-Id: I59b92eebaf5acc657b97bcf10d9ff2cf2db05885
Partially-Implements: blueprint projectspecificinstallguides
Depends-On: Ifebc65b188c4f2ba35b61c0deae5ec24401df7f9
2016-07-07 08:00:21 +02:00
Cloud User
4b13879680 Adds migrated API reference files
This brings in RST plus YAML files, migrated from the source for [0].

The migration explanation is found on the openstack-dev mailing list [1].

Project instruction is in the OpenStack Documentation Contributor Guide [2].

A patch for publishing this source is in [3].

The conf.py and the tox environment are standard across other projects.

[0]http://developer.openstack.org/api-ref-objectstorage-v1.html
[1]http://lists.openstack.org/pipermail/openstack-dev/2016-May/093765.html
[2]http://docs.openstack.org/contributor-guide/api-guides.html
[3]https://review.openstack.org/#/c/313015/

Change-Id: Ifebc65b188c4f2ba35b61c0deae5ec24401df7f9
2016-06-21 19:14:22 +02:00
Andreas Jaeger
c0217a4845 Update Sphinx version
The api-ref document needs a newer sphinx version, allow a 1.2 Sphinx
version to be used - like it's used in global-requirements.txt.

Change-Id: I9183cc56753fbe7e41206c6a9081899df5c3919a
Needed-By: Ifebc65b188c4f2ba35b61c0deae5ec24401df7f9
2016-06-21 08:15:56 +02:00
Richard Hawkins
9d7f71d575 Modify functional tests to use ostestr/testr
Defcore uses Tempest, which uses Test Repository.
This change makes it easier for Defcore to pull functional
tests from Swift and run them.  Additionally, using testr
allows tests to be run in parallel.

Concurrency set to 1 for now, >1 causes failures for
reasons that are still TBD.

With switch to ostestr all the server logs are being sent to stdout
which makes it completely unreadable. Suppressing the logs by default
now with a flag to enable it if desired.

Co-Authored-By: John Dickinson <me@not.mn>
Co-Authored-By: Robert Collins <rbtcollins@hpe.com>
Co-Authored-By: Matthew Oliver <matt@oliver.net.au>
Co-Authored-By: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>

Change-Id: I53ef4a116996a772cf1f3abc2eb0ad60047322d5
Related-Bug: 1177924
2015-12-15 22:30:44 +00:00
Jenkins
a2c0e6f687 Merge "Adding bandit for security static analysis testing in swift" 2015-08-12 20:55:16 +00:00
janonymous
67513fc17c Adding bandit for security static analysis testing in swift
This change adds a basic bandit config for Swift. It can be invoked
by running the tox environment for bandit;
    tox -e bandit

This is an initial step for using bandit with Swift
and it should be revisited to improve the testing as more is learned
about the specific needs of the Swift code base.As per now some tests
are excluded as they were used on purpose.

https://wiki.openstack.org/wiki/Security/Projects/Bandit

Implements: blueprint swift-bandit

Change-Id: I621be9a68ae9311f3a6eadd1636b05e646260cf2
2015-07-31 07:37:33 +05:30
Victor Stinner
9cb7eb4a4b Update hacking to 0.10.0
Replace the whitelist of flake8 checks (select) with a blacklist
(ignore).  It makes possible to disable a single check, which was not
possible before. This new approach permits to enable new tests more
easily and see which checks are currently disabled.

Only new checks are disabled, this change doesn't run less checks than
before. Currently, many checks are disabled, but following changes will
fix these new warnings.

When the "select" option of flake8 is used in tox.ini, the "ignore"
option is ignored. It is not possible to use "select" and "ignore"
options at the same time. See the code in pep8 (flake8 is based on
pep8):

d48eef0710/pep8.py (L1808)

The purpose of flake8 is to enhance the coding style, but also to help
to detect common bugs. Blacklisting checks permits to detect new bugs
when upgrading the tools. For example, new checks were recently added to
help porting code to Python 3.

This change permits to use pbr 1.0 and newer which is required to
support Python 3. Previously, hacking 0.8.1 was used, but hacking 0.8 is
incompatible with pbr 1.0 and newer (hacking 0.8 requires pbr<1.0).

pbr 1.0 is required to use environment markers on requirements to
install dnspython on Python 2 and dnspython3 on Python 3.

Change-Id: I41d63b9467083d7606ad18aaa398ca7738b27fae
2015-07-30 09:33:41 +02:00
Christian Schwede
f1f4bb30cd Fix testing issues
When functional tests are run in tox and an exception is raised when connecting
to Swift (for example: Swift not running, missing python-keystoneclient package
used by python-swiftclient) 0 tests are executed, but tox returns a success.

An exception is raised during tests, caused by a missing python-keystoneclient
in python-swiftclient. Instead of adding python-keystoneclient as a dependency
in python-swiftclient the package is added to the test-requirements.txt in Swift
itself. Note that adding python-keystoneclient to the test-requirements in
python-swiftclient is not sufficient (it's already in there).

The exception in setup_package() is catched by the openstack.nose_plugin, thus
disabling this plugin for now as well.

Also fixing two test errors seen on the gate regarding the tempurl middleware.

There was also an update to tox, environment variables were no longer passed
with versions >= 2.0 (http://tox.readthedocs.org/en/latest/changelog.html).
Swift test environment variables have been added to the passenv to re-enable the
former behavior, as well as environment variables required to pass proxy
settings.

This also led to skipped tempauth tests, and together with the missing
python-keystoneclient no tests were executed.

Related-Bug: 1461440
Related-Bug: 1455102

Co-Authored-By: Alistair Coles <alistair.coles@hp.com>

Change-Id: Ideea071017d04912c60ed0bc76532adbb446c31d
2015-06-03 14:13:14 +01:00
Dolph Mathews
1a561e6779 warn against sorting requirements
Change-Id: I64ae9191863564e278a35d42ec9cd743a233028e
Closes-Bug: 1365061
2014-09-03 12:03:57 -05:00
Steve Martinelli
b7254b2d83 Update the swift documentation theme
Currently the theme used by the swift developer docs are out of
date, it should be using oslosphinx, to provide a similar look
and feel between all openstack related projects.

Change-Id: Id7c226cdc13c6c4f3b5082b1ef4dfe09966b21ec
2014-08-05 01:01:22 -04:00
Christian Schwede
51f6035f3b Fix test-requirements.txt
mock >= 1.0 changed the behavior for iterable sideeffects. Any
exceptions in an iterable side_effect will now be raised instead of
returned.

With mock < 1.0 tests are failing, because test for the
internal client (TestSimpleClient.test_get_with_retries) use an
iterable sideeffect that raise an URLError on the first request
and pass on the second request.

Change-Id: I568b68c33ff599d7a4f590e2a0eb8caeee4b4d4e
2014-04-17 16:55:14 +00:00
Clay Gerrard
3f857898a9 Update tox.ini so flake8 works even without hacking
The flake8 command (when run from the command line or via vim-flake8) seems to
bypass the the normal pep8 [W]arning and [E]rror as well as py[F]lake checks
if the project level tox.ini includes a select, but doesn't include them in
it's select option (tested on flake8 v2.0 and v2.1).  Somehow if hacking is
installed these checks always run even if they're not explicitly listed in the
select list - but adding them so flake8 works on our project even without
hacking doesn't seem to cause any problems.

Also The [flake8] section's "select" option in tox.ini doesn't seem to run all
checks when presented with the space-comma seperated list.  I had to pull out
the bare except check (H201), because our hacking fix for the "H201 # noqa"
hasn't been released to pypi yet (maybe hacking version 0.9.0?).

As far as I know the Swift core development team is fully onboard with pep8,
and the flake8 checks are mostly like "unused import" stuff - so I *think*
this change is more about making the tool test what we want it too and not
changing or adding any new requirements or expectations.

Change-Id: Ia911c63745100cce182d5c5eb67b77e31c1e9b18
2014-03-04 08:29:38 -08:00
Christian Schwede
1f3ae6d8da Remove swiftclient dependency
Removes the requirement for swiftclient in swift-dispersion-report
and swift-dispersion-populate. To prevent a dependency on
keystoneclient and to avoid reinventing the wheel with an internal
keystoneclient, authentication with keystone is only supported if
swiftclient is available. If not, only auth v1 is supported.

The dependency in swift/container/sync.py has also been removed.

Implements: blueprint remove-swiftclient-dependency

Change-Id: I6ec3b3c85a67b9ab6eb04b90ffc16daf1600e8a7
2014-02-06 09:44:58 +00:00
Dirk Mueller
9f11819f16 Remove dependencies on pep8, pyflakes and flake8
They should be determined by the hacking dependency
implicitely.

Change-Id: I8805f7b0ef9f2b1f59be342e9c6d032330707688
2014-01-17 11:28:02 +01:00
Morgan Fainberg
9a2bd79073 Sync global requirements to pin sphinx to sphinx>=1.1.2,<1.2
Sync the global requirements to pin sphinx.  This addresses an issue
where Sphinx 1.2 is not building documents correctly and causing
check/gate to fail.

We also had to adjust the pip command used.

Change-Id: I8894c0199db845e90e5086a7c0e6bb7c7a26b5a0
2013-12-10 17:31:21 -05:00
Dirk Mueller
8aba2d602e Start using Hacking
Instead of blacklisting Hacking globally,
only blacklist those that currently occur frequently
(for a later followup patch), and fix the rest. In
detail:

H101  Use TODO(NAME)
H201  no 'except:' at least use 'except Exception:'
H231  octal number 022 should be written as 0o22
H401  docstring should not start with a space
H701  Empty localization string

Change-Id: Ib3b3d56b68d1cf15d3b67ac9749fcbdb876dc52a
2013-07-15 11:41:58 +02:00
niu-zglinux
627d0ba52f Rename requires files to standard names.
Rename tools/pip-requires to requirements.txt and tools/test-requires
to test-requirements.txt. These are standard files, and tools in the
general world are growing intelligence about them.

Change-Id: Ib3e50a811868e2969923d978ee00c4f92682aa1c
Fixes: bug #1179008
2013-05-30 22:14:01 +00:00