Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Initial commit.

  • Loading branch information...
commit 9ddfc8c103c323bfc36c64aa5acc2a4232125063 0 parents
@emonty authored
12 .gitignore
@@ -0,0 +1,12 @@
+.coverage
+.venv
+.tox
+*,cover
+cover
+*.pyc
+.idea
+*.swp
+*~
+build
+dist
+rackspaceauth.egg-info
2  AUTHORS
@@ -0,0 +1,2 @@
+Chmouel Boudjnah <chmouel.boudjnah@rackspace.co.uk>
+Monty Taylor <mordred@inaugust.com>
396 CHANGES.txt
@@ -0,0 +1,396 @@
+=======
+CHANGES
+=======
+
+------
+0.6.27
+------
+
+* Support current snapshots of CPython 3.3.
+* Distribute now recognizes README.rst as a standard, default readme file.
+* Exclude 'encodings' modules when removing modules from sys.modules.
+ Workaround for #285.
+* Issue #231: Don't fiddle with system python when used with buildout
+ (bootstrap.py)
+
+------
+0.6.26
+------
+
+* Issue #183: Symlinked files are now extracted from source distributions.
+* Issue #227: Easy_install fetch parameters are now passed during the
+ installation of a source distribution; now fulfillment of setup_requires
+ dependencies will honor the parameters passed to easy_install.
+
+------
+0.6.25
+------
+
+* Issue #258: Workaround a cache issue
+* Issue #260: distribute_setup.py now accepts the --user parameter for
+ Python 2.6 and later.
+* Issue #262: package_index.open_with_auth no longer throws LookupError
+ on Python 3.
+* Issue #269: AttributeError when an exception occurs reading Manifest.in
+ on late releases of Python.
+* Issue #272: Prevent TypeError when namespace package names are unicode
+ and single-install-externally-managed is used. Also fixes PIP issue
+ 449.
+* Issue #273: Legacy script launchers now install with Python2/3 support.
+
+------
+0.6.24
+------
+
+* Issue #249: Added options to exclude 2to3 fixers
+
+------
+0.6.23
+------
+
+* Issue #244: Fixed a test
+* Issue #243: Fixed a test
+* Issue #239: Fixed a test
+* Issue #240: Fixed a test
+* Issue #241: Fixed a test
+* Issue #237: Fixed a test
+* Issue #238: easy_install now uses 64bit executable wrappers on 64bit Python
+* Issue #208: Fixed parsed_versions, it now honors post-releases as noted in the documentation
+* Issue #207: Windows cli and gui wrappers pass CTRL-C to child python process
+* Issue #227: easy_install now passes its arguments to setup.py bdist_egg
+* Issue #225: Fixed a NameError on Python 2.5, 2.4
+
+------
+0.6.21
+------
+
+* Issue #225: FIxed a regression on py2.4
+
+------
+0.6.20
+------
+
+* Issue #135: Include url in warning when processing URLs in package_index.
+* Issue #212: Fix issue where easy_instal fails on Python 3 on windows installer.
+* Issue #213: Fix typo in documentation.
+
+------
+0.6.19
+------
+
+* Issue 206: AttributeError: 'HTTPMessage' object has no attribute 'getheaders'
+
+------
+0.6.18
+------
+
+* Issue 210: Fixed a regression introduced by Issue 204 fix.
+
+------
+0.6.17
+------
+
+* Support 'DISTRIBUTE_DISABLE_VERSIONED_EASY_INSTALL_SCRIPT' environment
+ variable to allow to disable installation of easy_install-${version} script.
+* Support Python >=3.1.4 and >=3.2.1.
+* Issue 204: Don't try to import the parent of a namespace package in
+ declare_namespace
+* Issue 196: Tolerate responses with multiple Content-Length headers
+* Issue 205: Sandboxing doesn't preserve working_set. Leads to setup_requires
+ problems.
+
+------
+0.6.16
+------
+
+* Builds sdist gztar even on Windows (avoiding Issue 193).
+* Issue 192: Fixed metadata omitted on Windows when package_dir
+ specified with forward-slash.
+* Issue 195: Cython build support.
+* Issue 200: Issues with recognizing 64-bit packages on Windows.
+
+------
+0.6.15
+------
+
+* Fixed typo in bdist_egg
+* Several issues under Python 3 has been solved.
+* Issue 146: Fixed missing DLL files after easy_install of windows exe package.
+
+------
+0.6.14
+------
+
+* Issue 170: Fixed unittest failure. Thanks to Toshio.
+* Issue 171: Fixed race condition in unittests cause deadlocks in test suite.
+* Issue 143: Fixed a lookup issue with easy_install.
+ Thanks to David and Zooko.
+* Issue 174: Fixed the edit mode when its used with setuptools itself
+
+------
+0.6.13
+------
+
+* Issue 160: 2.7 gives ValueError("Invalid IPv6 URL")
+* Issue 150: Fixed using ~/.local even in a --no-site-packages virtualenv
+* Issue 163: scan index links before external links, and don't use the md5 when
+ comparing two distributions
+
+------
+0.6.12
+------
+
+* Issue 149: Fixed various failures on 2.3/2.4
+
+------
+0.6.11
+------
+
+* Found another case of SandboxViolation - fixed
+* Issue 15 and 48: Introduced a socket timeout of 15 seconds on url openings
+* Added indexsidebar.html into MANIFEST.in
+* Issue 108: Fixed TypeError with Python3.1
+* Issue 121: Fixed --help install command trying to actually install.
+* Issue 112: Added an os.makedirs so that Tarek's solution will work.
+* Issue 133: Added --no-find-links to easy_install
+* Added easy_install --user
+* Issue 100: Fixed develop --user not taking '.' in PYTHONPATH into account
+* Issue 134: removed spurious UserWarnings. Patch by VanLindberg
+* Issue 138: cant_write_to_target error when setup_requires is used.
+* Issue 147: respect the sys.dont_write_bytecode flag
+
+------
+0.6.10
+------
+
+* Reverted change made for the DistributionNotFound exception because
+ zc.buildout uses the exception message to get the name of the
+ distribution.
+
+-----
+0.6.9
+-----
+
+* Issue 90: unknown setuptools version can be added in the working set
+* Issue 87: setupt.py doesn't try to convert distribute_setup.py anymore
+ Initial Patch by arfrever.
+* Issue 89: added a side bar with a download link to the doc.
+* Issue 86: fixed missing sentence in pkg_resources doc.
+* Added a nicer error message when a DistributionNotFound is raised.
+* Issue 80: test_develop now works with Python 3.1
+* Issue 93: upload_docs now works if there is an empty sub-directory.
+* Issue 70: exec bit on non-exec files
+* Issue 99: now the standalone easy_install command doesn't uses a
+ "setup.cfg" if any exists in the working directory. It will use it
+ only if triggered by ``install_requires`` from a setup.py call
+ (install, develop, etc).
+* Issue 101: Allowing ``os.devnull`` in Sandbox
+* Issue 92: Fixed the "no eggs" found error with MacPort
+ (platform.mac_ver() fails)
+* Issue 103: test_get_script_header_jython_workaround not run
+ anymore under py3 with C or POSIX local. Contributed by Arfrever.
+* Issue 104: remvoved the assertion when the installation fails,
+ with a nicer message for the end user.
+* Issue 100: making sure there's no SandboxViolation when
+ the setup script patches setuptools.
+
+-----
+0.6.8
+-----
+
+* Added "check_packages" in dist. (added in Setuptools 0.6c11)
+* Fixed the DONT_PATCH_SETUPTOOLS state.
+
+-----
+0.6.7
+-----
+
+* Issue 58: Added --user support to the develop command
+* Issue 11: Generated scripts now wrap their call to the script entry point
+ in the standard "if name == 'main'"
+* Added the 'DONT_PATCH_SETUPTOOLS' environment variable, so virtualenv
+ can drive an installation that doesn't patch a global setuptools.
+* Reviewed unladen-swallow specific change from
+ http://code.google.com/p/unladen-swallow/source/detail?spec=svn875&r=719
+ and determined that it no longer applies. Distribute should work fine with
+ Unladen Swallow 2009Q3.
+* Issue 21: Allow PackageIndex.open_url to gracefully handle all cases of a
+ httplib.HTTPException instead of just InvalidURL and BadStatusLine.
+* Removed virtual-python.py from this distribution and updated documentation
+ to point to the actively maintained virtualenv instead.
+* Issue 64: use_setuptools no longer rebuilds the distribute egg every
+ time it is run
+* use_setuptools now properly respects the requested version
+* use_setuptools will no longer try to import a distribute egg for the
+ wrong Python version
+* Issue 74: no_fake should be True by default.
+* Issue 72: avoid a bootstrapping issue with easy_install -U
+
+-----
+0.6.6
+-----
+
+* Unified the bootstrap file so it works on both py2.x and py3k without 2to3
+ (patch by Holger Krekel)
+
+-----
+0.6.5
+-----
+
+* Issue 65: cli.exe and gui.exe are now generated at build time,
+ depending on the platform in use.
+
+* Issue 67: Fixed doc typo (PEP 381/382)
+
+* Distribute no longer shadows setuptools if we require a 0.7-series
+ setuptools. And an error is raised when installing a 0.7 setuptools with
+ distribute.
+
+* When run from within buildout, no attempt is made to modify an existing
+ setuptools egg, whether in a shared egg directory or a system setuptools.
+
+* Fixed a hole in sandboxing allowing builtin file to write outside of
+ the sandbox.
+
+-----
+0.6.4
+-----
+
+* Added the generation of `distribute_setup_3k.py` during the release.
+ This close http://bitbucket.org/tarek/distribute/issue/52.
+
+* Added an upload_docs command to easily upload project documentation to
+ PyPI's http://packages.python.org.
+ This close http://bitbucket.org/tarek/distribute/issue/56.
+
+* Fixed a bootstrap bug on the use_setuptools() API.
+
+-----
+0.6.3
+-----
+
+setuptools
+==========
+
+* Fixed a bunch of calls to file() that caused crashes on Python 3.
+
+bootstrapping
+=============
+
+* Fixed a bug in sorting that caused bootstrap to fail on Python 3.
+
+-----
+0.6.2
+-----
+
+setuptools
+==========
+
+* Added Python 3 support; see docs/python3.txt.
+ This closes http://bugs.python.org/setuptools/issue39.
+
+* Added option to run 2to3 automatically when installing on Python 3.
+ This closes http://bitbucket.org/tarek/distribute/issue/31.
+
+* Fixed invalid usage of requirement.parse, that broke develop -d.
+ This closes http://bugs.python.org/setuptools/issue44.
+
+* Fixed script launcher for 64-bit Windows.
+ This closes http://bugs.python.org/setuptools/issue2.
+
+* KeyError when compiling extensions.
+ This closes http://bugs.python.org/setuptools/issue41.
+
+bootstrapping
+=============
+
+* Fixed bootstrap not working on Windows.
+ This closes http://bitbucket.org/tarek/distribute/issue/49.
+
+* Fixed 2.6 dependencies.
+ This closes http://bitbucket.org/tarek/distribute/issue/50.
+
+* Make sure setuptools is patched when running through easy_install
+ This closes http://bugs.python.org/setuptools/issue40.
+
+-----
+0.6.1
+-----
+
+setuptools
+==========
+
+* package_index.urlopen now catches BadStatusLine and malformed url errors.
+ This closes http://bitbucket.org/tarek/distribute/issue/16 and
+ http://bitbucket.org/tarek/distribute/issue/18.
+
+* zip_ok is now False by default. This closes
+ http://bugs.python.org/setuptools/issue33.
+
+* Fixed invalid URL error catching. http://bugs.python.org/setuptools/issue20.
+
+* Fixed invalid bootstraping with easy_install installation
+ http://bitbucket.org/tarek/distribute/issue/40.
+ Thanks to Florian Schulze for the help.
+
+* Removed buildout/bootstrap.py. A new repository will create a specific
+ bootstrap.py script.
+
+
+bootstrapping
+=============
+
+* The boostrap process leave setuptools alone if detected in the system
+ and --root or --prefix is provided, but is not in the same location.
+ This closes http://bitbucket.org/tarek/distribute/issue/10.
+
+---
+0.6
+---
+
+setuptools
+==========
+
+* Packages required at build time where not fully present at install time.
+ This closes http://bitbucket.org/tarek/distribute/issue/12.
+
+* Protected against failures in tarfile extraction. This closes
+ http://bitbucket.org/tarek/distribute/issue/10.
+
+* Made Jython api_tests.txt doctest compatible. This closes
+ http://bitbucket.org/tarek/distribute/issue/7.
+
+* sandbox.py replaced builtin type file with builtin function open. This
+ closes http://bitbucket.org/tarek/distribute/issue/6.
+
+* Immediately close all file handles. This closes
+ http://bitbucket.org/tarek/distribute/issue/3.
+
+* Added compatibility with Subversion 1.6. This references
+ http://bitbucket.org/tarek/distribute/issue/1.
+
+pkg_resources
+=============
+
+* Avoid a call to /usr/bin/sw_vers on OSX and use the official platform API
+ instead. Based on a patch from ronaldoussoren. This closes
+ http://bitbucket.org/tarek/distribute/issue/5.
+
+* Fixed a SandboxViolation for mkdir that could occur in certain cases.
+ This closes http://bitbucket.org/tarek/distribute/issue/13.
+
+* Allow to find_on_path on systems with tight permissions to fail gracefully.
+ This closes http://bitbucket.org/tarek/distribute/issue/9.
+
+* Corrected inconsistency between documentation and code of add_entry.
+ This closes http://bitbucket.org/tarek/distribute/issue/8.
+
+* Immediately close all file handles. This closes
+ http://bitbucket.org/tarek/distribute/issue/3.
+
+easy_install
+============
+
+* Immediately close all file handles. This closes
+ http://bitbucket.org/tarek/distribute/issue/3.
+
208 LICENSE
@@ -0,0 +1,208 @@
+Copyright (c) 2012 Hewlett-Packard Development Company, L.P.
+Copyright (c) 2012 Rackspace
+All rights reserved.
+
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+--- License for python-novaclient versions prior to 2.1 ---
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+ 3. Neither the name of this project nor the names of its contributors may
+ be used to endorse or promote products derived from this software without
+ specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
3  MANIFEST.in
@@ -0,0 +1,3 @@
+include ChangeLog
+include AUTHORS
+include LICENSE
5 README.rst
@@ -0,0 +1,5 @@
+Rackspace Auth Plugin for OpenStack Clients
+===========================================
+
+This is a plugin for OpenStack Clients which provides client support for
+Rackspace authentication extensions to OpenStack.
14 rackspaceauth/__init__.py
@@ -0,0 +1,14 @@
+# Copyright 2012 Rackspace
+# Copyright 2012 Hewlett-Packard Development Company, L.P.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
25 rackspaceauth/plugin.py
@@ -0,0 +1,25 @@
+# Copyright 2012 Rackspace
+# Copyright 2012 Hewlett-Packard Development Company, L.P.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+
+def authenticate(cls,
+ auth_url="https://identity.api.rackspacecloud.com/v2.0/"):
+ """Authenticate against the Rackspace auth service."""
+ body = {"auth": {
+ "RAX-KSKEY:apiKeyCredentials": {
+ "username": cls.user,
+ "apiKey": cls.password,
+ "tenantName": cls.projectid}}}
+ return cls._authenticate(auth_url, body)
48 setup.py
@@ -0,0 +1,48 @@
+# Copyright 2011 OpenStack, LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import os
+import setuptools
+import sys
+
+
+def read_file(file_name):
+ return open(os.path.join(os.path.dirname(__file__), file_name)).read()
+
+
+setuptools.setup(
+ name="rackspace-auth-openstack",
+ version="1.0",
+ author="OpenStack",
+ author_email="openstack-dev@lists.openstack.org",
+ description="Rackspace Auth Plugin for OpenStack Clients.",
+ long_description=read_file("README.rst"),
+ license="Apache License, Version 2.0",
+ url="https://github.com/emonty/rackspace-auth-openstack",
+ packages=setuptools.find_packages(exclude=['tests', 'tests.*']),
+ classifiers=[
+ "Development Status :: 5 - Production/Stable",
+ "Environment :: Console",
+ "Intended Audience :: Developers",
+ "Intended Audience :: Information Technology",
+ "License :: OSI Approved :: Apache Software License",
+ "Operating System :: OS Independent",
+ "Programming Language :: Python"
+ ],
+ entry_points={
+ "openstack.client.authenticate": [
+ "rackspace = rackspaceauth.plugin:authenticate"
+ ]
+ }
+)
Please sign in to comment.
Something went wrong with that request. Please try again.