Commit Graph

40 Commits

Author SHA1 Message Date
DavHau 45a311fc62 Remove duplicate script entry leading to broken wheel build
The entry_point option already defines the /bin/swift script implicitly.
The definition of `scripts=bin/swift` ontop of that leads to a corrupt wheel build and can lead to a collision error during installation:
FileExistsError: File already exists: [...]/bin/swift

Closes-Bug: #1996959
Change-Id: I17d0c2b02555172eeedaa164aad956691ccb3b0a
2024-01-11 21:26:54 +00:00
Tim Burke 90f565009a Declare py311 support
Add a voting job, update trove classifiers.

Change-Id: I757b76e3af5f667a670cdf65687f23ef2b486666
2023-07-07 12:41:48 -07:00
Tim Burke d368644bc6 Metadata updates
Include project_urls so PyPI gets more sidebar links.

Include long_description_content_type to quiet a twine warning.

Change-Id: Id3b90927ba24fd47efdbeeb2107bdae9e86e93ba
2023-03-17 16:47:34 -07:00
Tim Burke 7a83087a52 Mark Python 3.10 testing as voting
Change-Id: I4743973e34ef1fcba9e5b64e32b2f1f458de75ba
2023-01-05 17:45:20 -08:00
Stephen Finucane 2636965f38 Drop support for Python 2
There's a lot of cleanup possible, but this is a start.

Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Change-Id: Ia1176b7fd5434d52070d482a37abfbb98800cdb3
2022-03-16 15:06:19 -07:00
yangyawei 2beddc2f30 setup.cfg: Replace dashes with underscores
Setuptools v54.1.0 introduces a warning that the use of dash-separated
options in 'setup.cfg' will not be supported in a future version [1].
Get ahead of the issue by replacing the dashes with underscores. Without
this, we see 'UserWarning' messages like the following on new enough
versions of setuptools:

  UserWarning: Usage of dash-separated 'description-file' will not be
  supported in future versions. Please use the underscore name
  'description_file' instead

[1] https://github.com/pypa/setuptools/commit/a2e9ae4cb

Change-Id: Ief2c7a217914dc5cacdffc6959ed0585fc6a1225
2021-05-03 10:51:40 +08:00
Tim Burke a5aebc3b9a Make py39 voting
Also, add trove classifier for py39.

Depends-On: https://review.opendev.org/#/c/758813/
Change-Id: I8d33b4dd6af990b09141acd52d36e44e9c871b3b
2020-10-19 11:08:23 -07:00
Tim Burke 77993f242b Add py38 classifier
Change-Id: I28bf4aeb12c1f3833d2c6501b49d184b54d36093
2020-04-20 10:10:46 -07:00
Andreas Jaeger bb3888e73e Update docs building
Update docs building:
* Switch to sphinx-build
* Update requirements for Sphinx and openstackdocstheme for
  python 3
* Remove unneeded doc and translation sections from setup.cfg
* Remove install_command, it's unneeded, the default is fine.

Change-Id: Ib9fe754b700bceb164ba0f596cbcc6d864ccbadc
2020-04-19 09:57:27 +02:00
Tim Burke 13970ac5fa packaging: Properly flag universal wheel
I'm not sure we've *ever* done this properly; see the PyPA docs:
https://packaging.python.org/guides/distributing-packages-using-setuptools/#universal-wheels

Change-Id: I8bb9e05f386076aa652b3955f0abf757d229afed
2020-01-20 21:20:22 -08:00
Corey Bryant efe3d084de Add Python 3 Train unit tests
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.

See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html

Change-Id: I764b9765484e1d8217d56796d984f910aa5f9c5a
Story: #2005924
Task: #34249
2019-07-05 16:22:32 -04:00
Tim Burke d32deaaddd Add py37 check/gate jobs; add py37 to default tox env list
Change-Id: Ifbc6dc731df20b4bba905a110e71ea5c9cc52c0f
2019-02-27 11:11:12 -08:00
sunjia 0e6c63dfd4 Change openstack-dev to openstack-discuss
Mailinglists have been updated. Openstack-discuss replaces openstack-dev.

Change-Id: I3193f2d12f75c36b59881a51b605d25274b335e0
2018-12-03 22:02:00 -05:00
qingszhao 8a42281468 Add Python 3.6 classifier to setup.cfg
Change-Id: If3b2cdcd009136286d68fe07b14e06261b3069a0
2018-11-30 07:32:03 +00:00
Zuul d80f24f2fd Merge "Back out some version bumps" 2018-07-24 23:12:51 +00:00
Zuul 531dc5be7b Merge "Drop py34 target in tox.ini" 2018-07-17 00:46:54 +00:00
Tim Burke da362a653e Back out some version bumps
I'm giving up on trying to back out all of the test-requirements
up-revs, but let's try to stay compatibile with old requests/six.

As part of that, only disable some requests warnings on new-enough requests.

Note that we should now be compatible with distro packages back to
Ubuntu 16.04 and CentOS 6. Our six is still too new for Trusty, but
hey, there's less than a year left on that anyway, right?

Change-Id: Iccb23638393616f9ec3da660dd5e39ea4ea94220
Related-Change: I2a8f465c8b08370517cbec857933b08fca94ca38
2018-07-11 13:09:00 -07:00
Doug Hellmann b5ed14f90a add lower-constraints job
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.

Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.

Add openstack-tox-lower-constraints job to the zuul configuration.

Update the dependencies needed to make the unit tests pass while
constrained to the lower bounds.

See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.

Co-Authored-By: Nguyen Hai <nguyentrihai93@gmail.com>
Change-Id: I2a8f465c8b08370517cbec857933b08fca94ca38
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-04-25 09:33:54 -04:00
Hangdong Zhang 3db6ddd6e4 Update the documentation link for doc migration
Change-Id: I1a5a354675b3ca6a7dbb5ab2dc78bf60209fa2b5
2017-07-24 09:49:59 -07:00
lingyongxu b27127fd09 Drop py34 target in tox.ini
We support py35 now.so it is no need to keep
the supoort for py34.

Change-Id: Ie76e897bea3c184410e2b151fbe978d93bc21624
2017-06-09 17:43:52 +08:00
Tim Burke a38efb6031 Add v1password keystoneauth plugin
This lets us use Keystone sessions against endpoints like swauth and
tempauth with code like:

    import keystoneauth1.loading
    import keystoneauth1.session
    import swiftclient

    loader = keystoneauth1.loading.get_plugin_loader('v1password')
    auth_plugin = loader.load_from_options(
        auth_url='http://saio:8080/auth/v1.0',
        username='test:tester',
        password='testing')
    keystone_session = keystoneauth1.session.Session(auth_plugin)

    conn = swiftclient.Connection(session=keystone_session)

The plugin includes an optional project_name option, which may be used
to override the swift account from the storage url that was returned.
Additionally, it includes enough infrastructure to support some commands
in python-openstackclient>=3.0:

    export OS_AUTH_TYPE=v1password
    export OS_AUTH_URL=http://saio:8080/auth/v1.0
    export OS_PROJECT_NAME=AUTH_test2
    export OS_USERNAME=test:tester
    export OS_PASSWORD=testing

    openstack token issue
    openstack catalog list
    openstack catalog show object-store
    openstack object store account show
    openstack container list
    openstack container create <container>
    openstack container save <container>
    openstack container show <container>
    openstack container delete <container>
    openstack object list <container>
    openstack object create <container> <file>
    openstack object save <container> <object>
    opsentack object show <container> <object>
    openstack object delete <container> <object>

Change-Id: Ia963dc44415f72a6518227e86d9528a987e07491
2016-10-24 01:52:37 +02:00
venkatamahesh 659470e7d9 Update the home-page with developer documentation
Change-Id: I51734d7f8cabe02527c4f24305707dddf470d5f9
2016-05-17 14:32:47 +05:30
Tim Burke 52eab61e7e Move python-keystoneclient to "extras"
This should make it more clear to users that they may want to install
it.

Change-Id: I8bb4f3eba1fc6d2b7b23c3bd51663678e755a69e
2016-03-07 11:21:33 -08:00
shu-mutou f95de16875 Drop py33 support
"Python 3.3 support is being dropped since OpenStack Liberty."
written in following URL.
https://wiki.openstack.org/wiki/Python3

And already the infra team and the oslo team are dropping py33
support from their projects.

Since we rely on oslo for a lot of our work, and depend on infra
for our CI, we should drop py33 support too.

Change-Id: Ia8f2b26e446175b0d892a11952ef3dc11dcdc73c
Closes-Bug: #1526170
2016-02-23 00:19:56 +00:00
Jenkins 4d9b1e760d Merge "Remove py26 support" 2015-12-10 20:29:16 +00:00
John Dickinson bf07a69e0e fix release version
Change-Id: I0237adbcbd6249bab12ab1624b78b537511fc971
2015-12-07 14:55:30 -08:00
ricolin cffdc9d357 Remove py26 support
As of mitaka, the infra team won't have the resources available to
reasonably test py26, also the oslo team is dropping py26 support
from their libraries. sine we rely on oslo for a lot of our work,
and depend on infra for our CI, we should drop py26 support too.
Closes-Bug: 1519510
Depends-On: I37116731db11449d0c374a6a83a3a43789a19d5f

Change-Id: I776847ce77dfe82880f34d0b7804514e5aed3f8d
2015-12-02 15:09:44 +00:00
John Dickinson 9ef4c97de2 do hand-curated authors/changelog files
Change-Id: I1a264c9ce1d137b18a6dc62623a282e4a2fe839c
2015-09-04 18:29:30 +01:00
Alessandro Pilotti cb059f2f3e Adds console script entry point
A Swift client executable needs to be provided on Windows since Python scripts
cannot be executed directly.

This approach is also consistent with other OpenStack Python clients (e.g.
Nova, Neutron, Cinder, etc.).

Change-Id: I7f03b7c305dceed4fa6f4fe1c1281659820606e4
Closes-Bug: #1359360
2014-08-21 01:01:24 +03:00
Alex Gaynor 1b83af8141 Mark swiftclient as being a universal wheel
Change-Id: I9580ab0f5bc53b472d0b633858090f9e0708ed90
2014-05-16 10:00:23 -04:00
Alex Gaynor 8b71670f15 Declare that we support Python 3
Note that this should not land until we figure out why `tox -e py33` doesn't
actually run any tests.

Change-Id: Id4e080cfbfca45b3bf7ed81b03a31414495a1348
2014-05-08 06:51:46 -07:00
Christian Schwede 0a5a88b9e6 Make bin/swift testable part 2
Follow up for patch https://review.openstack.org/#/c/76487/

Change-Id: I6801b75cb78a3da0631ca8a60b7c2756b8930e72
2014-03-25 11:36:39 +00:00
Christian Schwede 100419c0b3 Make bin/swift testable part 1
To make bin/swift importable for testing it needs to be renamed/moved.
The final idea is to move it to swiftclient/shell.py and add only a stub
in bin/swift to import swiftclient/shell.py.

However, doing this in a single step makes reviewing very hard, because
now there are > 1400 lines deleted from bin/swift and added to
swiftclient/shell.py - Gerrit doesn't detect the moved file.

For example: https://review.openstack.org/#/c/73710/2/

This patch first moves the code to swiftclient/shell.py and uses
setup.py/cfg to create the stub file in bin/swift. A follow up
(https://review.openstack.org/#/c/76489/) will then add the stub itself
in bin/swift (and remove the entry in setup.py).

The change to tox.ini is related to bug 1290562 and can be removed in
the future.

Change-Id: Id86392ccaf09e1d80a5d808fb49827d6d18c2588
2014-03-25 11:32:51 +00:00
Christian Schwede 65d7a136f6 Install manpage in share/man/man1 instead of man/man1
According to FHS 2.3 the correct place to install the manpage for a
binary in /usr/local/bin/ would be /usr/local/man/.

However, on Debian/Ubuntu-based systems /usr/local/man/ is a link to
/usr/local/share/man/ and on other systems /usr/local/man/ might not
exist at all.

Even worse, if the client is installed in /usr/bin/ the manpage
should should be installed in /usr/share/man, but will be installed
in /usr/man/ which is completely wrong.

This patch fixes this and uses share/man/man1 as common prefix. Doing
this will install the manpage either in /usr/local/share/man/man1 or
/usr/share/man/man1.

Partial-Bug: 1269715
Change-Id: I590932f00476eacd434cdae012fd62010845581d
2014-01-20 11:24:16 +00:00
Christian Schwede 63c9917085 Install swiftclient manpage
Currently the existing manpage isn't copied to /usr/local/man/man1
when installing swiftclient from source. This patch fixes this.

Change-Id: Ib2ee091d5e1d4c37a4e5a00f50fa19df44bd3c41
Partial-Bug: 1269715
2014-01-16 10:26:06 +00:00
Monty Taylor 50f32bc803 Switch to pbr for setup.
Change-Id: Ifc2efa2bd7c2f030b51494ccb471f0c3e097c5ce
2013-05-01 12:23:12 -04:00
Monty Taylor bfeffb6366 Use testr instead of nose.
nose is invasive and can sometimes alter the outcome of a test run. testr,
on the other hand, keeps a distinction between running tests and displaying
results of the test runs. Additionally, it supports the stock python unittest
protocol.

Even better, testr supports parallel test running, which makes things faster,
and a command "testr run --failing" which will just re-run the latest failing
tests (often something one wants to do in iterative dev)

Part of blueprint grizzly-testtools

Change-Id: I0b3f1bcb5d4ff59c65eb3219b30a9e64f54d70bd
2013-01-18 16:13:27 -05:00
John Dickinson b4272711ed tell nose to explicity test the 'tests' directory
Change-Id: Ib6afa775defc521794da627952edbf69721b0874
2012-11-08 16:55:15 +01:00
Clark Boylan 12519ce026 Add build_sphinx options.
To better facilitate the building and publishing of sphinx
documentation by Jenkins we are moving all openstack projects with
sphinx documentation to a common doc tree structure. Documentation
goes in project/doc/source and build results go in project/doc/build.

Change-Id: Ibe6745cac73817ea06faca77367b4269d5137a24
2012-06-11 14:51:40 -07:00
Monty Taylor bee9ae5042 Added setup.cfg for verbose test output. 2012-05-21 09:09:13 -04:00