https://wiki.openstack.org/w/api.php?action=feedcontributions&user=Morgan+Fainberg&feedformat=atomOpenStack - User contributions [en]2024-03-19T11:06:28ZUser contributionsMediaWiki 1.28.2https://wiki.openstack.org/w/index.php?title=Meetings/TechnicalCommittee&diff=127094Meetings/TechnicalCommittee2016-06-21T20:51:36Z<p>Morgan Fainberg: /* Apologies for Absence */</p>
<hr />
<div>__NOTOC__<br />
<br />
The [[Governance/Foundation/TechnicalCommittee|OpenStack Technical Committee]] is one of the [[Governance|governing bodies]] of the OpenStack project. You can find more information about it, such as the list of its [http://governance.openstack.org current members] or its [http://governance.openstack.org/reference/charter.html governance charter], on the OpenStack governance website at http://governance.openstack.org . It meets weekly in an open meeting in the <code>#openstack-meeting</code> IRC channel on Freenode.<br />
<br />
<br />
=== Next Meeting ===<br />
<br />
* June 21st, 20:00 UTC<br />
* Chair: Thierry Carrez (ttx)<br />
<br />
<br />
==== Agenda ====<br />
<br />
* Add current house rules for reference [https://review.openstack.org/330442]<br />
* Update team tags for some projects [https://review.openstack.org/329327]<br />
* Remove Packaging-Deb project team [https://review.openstack.org/329430]<br />
* Add 'type:horizon-plugin' tag [https://review.openstack.org/329479]<br />
* Add 'level playing field' requirement [https://review.openstack.org/329448]<br />
* Open discussion<br />
** Skipping next week meeting ?<br />
<br />
<br />
==== Backlog ====<br />
These items have been proposed, but are not put on the agenda just yet. Could be that they have not been discussed on openstack-dev for the time mandated by our charter yet, or are blocked for some other reason, or are just delayed while we process the earlier requests backlog:<br />
<br />
* Adds a contributordocs: URL entry to projects.yaml [https://review.openstack.org/316396] (pending update)<br />
* Add Juju Charms for OpenStack [https://review.openstack.org/224797] (waiting for licensing change)<br />
* Trim tc-approved-release tag to just base IaaS projects [https://review.openstack.org/314691] (pending update)<br />
* type:packaging [https://review.openstack.org/295971] and type:deployment [https://review.openstack.org/295528] tags (pending iterations on the reviews)<br />
<br />
==== Apologies for Absence ====<br />
<br />
* Morgan Fainberg (notmorgan): Planned Absence for July 5th Meeting.<br />
<br />
=== Proposing discussion topics, motions or other governance changes before the TC ===<br />
<br />
Motions need to be presented before Friday 0800 UTC to be added to the next Tuesday meeting agenda for discussion. They should either be posted as a proposed change to the [http://git.openstack.org/cgit/openstack/governance/ governance] repository (on review.openstack.org) or as a "[tc]" thread to openstack-dev@lists.openstack.org, with a pointer to that thread should be posted to openstack-tc@lists.openstack.org to make sure it gets the required attention from TC members. Upon verification, the TC Chair will put the motion on the agenda for the next meeting.<br />
<br />
Before being finally voted on, motions will have to be presented as a [http://git.openstack.org/cgit/openstack/governance/ governance] change. As mandated by our charter, the vote on motions won't be closed until we spent a minimum of 4 business days of public discussions, to give a chance to our wider community to chime in on proposed changes.<br />
<br />
Additions of code repositories to existing project teams, as well as other instances of governance repository housekeeping, do not constitute a "motion". Those will be approved a week after being proposed, if they have the required approvals (PTLs in the case of a repository addition) and no TC member -1 vote. A -1 vote will result in the proposed change to be reviewed at the next TC meeting.<br />
<br />
<br />
=== Past meetings logs ===<br />
<br />
Logs of past TC meetings can be accessed at: http://eavesdrop.openstack.org/meetings/tc<br />
<br />
[[Category: meetings]]</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=125821Meetings/KeystoneMeeting2016-05-24T23:23:52Z<p>Morgan Fainberg: </p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda in the etherpad with your name and we'll cover them.<br />
<br />
== Agenda for next meeting ==<br />
The Main Agenda can be found at https://etherpad.openstack.org/p/keystone-weekly-meeting</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/InfraTeamMeeting&diff=125744Meetings/InfraTeamMeeting2016-05-23T21:34:49Z<p>Morgan Fainberg: /* Agenda for next meeting */</p>
<hr />
<div><br />
<!-- ## page was renamed from Meetings/CITeamMeeting --><br />
{{:Header}}<br />
<br />
= Weekly Project Infrastructure team meeting =<br />
<br />
The OpenStack Project Infrastructure Team holds public weekly meetings in <code><nowiki>#openstack-meeting</nowiki></code>, Tuesdays at 1900 UTC. Everyone interested in infrastructure and process surrounding automated testing and deployment is encouraged to attend.<br />
<br />
Please feel free to add agenda items (and your IRC nick in parenthesis).<br />
<br />
== Agenda for next meeting ==<br />
<br />
* Announcements<br />
* Actions from last meeting<br />
* Specs approval<br />
* Priority Efforts<br />
** [http://specs.openstack.org/openstack-infra/infra-specs/specs/ansible_puppet_apply.html Ansible Puppet Apply]<br />
** [http://specs.openstack.org/openstack-infra/infra-specs/specs/dib-nodepool.html Use Diskimage Builder in Nodepool]<br />
** [http://specs.openstack.org/openstack-infra/infra-specs/specs/infra-cloud.html Infra-cloud]<br />
** [http://specs.openstack.org/openstack-infra/infra-specs/specs/logs-in-swift.html Store Build Logs in Swift]<br />
** [http://specs.openstack.org/openstack-infra/infra-specs/specs/maniphest.html maniphest migration]<br />
** [http://specs.openstack.org/openstack-infra/infra-specs/specs/openstackci.html Common OpenStack CI Solution]<br />
** [http://specs.openstack.org/openstack-infra/infra-specs/specs/zuulv3.html Zuul v3]<br />
* OpenStackID replacement (timeline etc). [notmorgan]<br />
** This came up in an internal meeting at Red Hat and there is a general interest in what the timelines are and where resources can be contributed.<br />
* Open discussion<br />
** [https://specs.openstack.org/openstack-infra/infra-specs/specs/jenkins-job-builder_2.0.0-api-changes.html Jenkins Job Builder v2 API] has been rebased on to JJB master branch and is ready for review. Next steps:<br />
*** Delete the feature/2.0.0 branch from the jenkins-job-builder repo since it is now targeting master branch.<br />
*** I (Wayne Warren) am still working to flesh out the API docstrings and write unit tests for the API (where possible) but there are currently 25 commits that are ready to be reviewed.<br />
*** Is it okay to begin merging earlier commits in this series if I am still working on documentation and unit tests?<br />
<br />
== Upcoming Project Renames ==<br />
(any additions should mention original->new full names and link to the corresponding change in Gerrit)<br />
<br />
openstack/openstack-ansible-ironic -> openstack/openstack-ansible-os_ironic https://review.openstack.org/299192<br />
<br />
openstack-infra/ansible-puppet -> openstack-infra/ansible-role-puppet<br />
<br />
== Previous meetings ==<br />
Previous meetings, with their notes and logs, can be found at http://eavesdrop.openstack.org/meetings/infra/ and earlier at http://eavesdrop.openstack.org/meetings/ci/</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Python3&diff=125675Python32016-05-22T20:49:44Z<p>Morgan Fainberg: /* Dependencies status */</p>
<hr />
<div>This page tracks the progress of Python 3 effort porting for OpenStack.<br />
<br />
== IRC: #openstack-python3 ==<br />
<br />
Join the #openstack-python3 IRC channel on the Freenode network to discuss Python 3.<br />
<br />
== Python 3 ==<br />
<br />
[http://techs.enovance.com/6521/openstack_python3 Why should OpenStack move to Python 3 right now?]<br />
:''Python 3 is usually seen as the new Python version which breaks compatibility and raises new Unicode issues. Python 3 is much more than that. It’s a new clean language which has a more consistent syntax. It has many new features, not less than 15 new modules. Python 3 is already well supported by major Linux distributions, whereas Python 2.7 reached its end-of-life. Slowly, some bugs cannot be fixed in Python 2.7 anymore and are only fixed in the latest Python 3 release. Python 3 is now 5 years old and considered as a mature programming language.''<br />
<br />
== Python 2: Python 2.6 support dropped, Python 2.7 only ==<br />
<br />
OpenStack Liberty targets Python 2.7 and 3.4.<br />
<br />
Python 2.6 support is being dropped in OpenStack since OpenStack Juno for servers. Python 2.6 support is currently kept in Oslo libraries and clients. See [https://etherpad.openstack.org/p/juno-cross-project-future-of-python juno-cross-project-future-of-python] etherpad.<br />
<br />
Python 3.3 support is being dropped since OpenStack Liberty.<br />
<br />
Python 2.6 is slowly being dropped in the whole OpenStack project, ex: [https://review.openstack.org/#/c/201295/ Remove p26 job from DIB].<br />
<br />
Python 2.6 support will be removed in Oslo and Clients clients for OpenStack Mitaka: [http://markmail.org/message/oe6wewgvbvvyts73 Oslo libraries dropping python 2.6 compatability].<br />
<br />
== Port Python 2 code to Python 3 ==<br />
<br />
OpenStack project chose to use the same code base for Python 2 and Python 3. The [http://pythonhosted.org/six/ Six: Python 2 and 3 Compatibility Library] helps to write code working on both versions. OpenStack supported Python 2.6 for RHEL up to Juno, but not Python 2.5 and older. As we are targeting Python 3.4 and up, there is no need to avoid u'unicode' syntax. Do not use six.u('unicode').<br />
<br />
=== Before you begin ===<br />
<br />
If you're doing development with Ubuntu/Debian (and not using devstack with the USE_PYTHON flag set), then you'll need the following packages installed to run the py34 tox unit test targets in the projects:<br />
<br />
sudo apt-get install python3.4 python3.4-dev<br />
<br />
=== sixer tool ===<br />
<br />
The [https://pypi.python.org/pypi/sixer sixer] tool helps to replace most basic patterns to add Python 3 compatibility and it respects OpenStack coding style.<br />
<br />
=== Common patterns ===<br />
<br />
* Replace "for key in dict.iterkeys()" with "for key in dict"<br />
* Replace dict.iteritems() with dict.items()<br />
* Replace dict.itervalues() with dict.values()<br />
<br />
Note: Replacing dict.iteritems()/.itervalues() with six.iteritems(dict)/six.itervalues(dict) was preferred in the past, but there was [http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html a discussion suggesting to avoid six for this]. The overhead of creating a temporary list on Python 2 is negligible.<br />
<br />
* Replace iterator.next() with next(iterator)<br />
* Replace basestring with six.string_types<br />
* Replace unicode with six.text_type<br />
* Replace (str, unicode) with six.string_types<br />
* Replace (int, long) with six.integer_types<br />
* Replace func.func_name with func.__name__<br />
* Replace exceptions.OSError with OSError and remove "import exceptions"<br />
* map() and filter() if a list is needed on Python 3:<br />
** Replace map(func, data) with [func(item) for item in data]<br />
** Replace filter(lambda obj: test(obj), data) with [obj for obj in data if test(obj)]<br />
** Note: Usually, tests fail because map() or filter() objects have no length<br />
<br />
=== Serialization: base64, JSON, etc. ===<br />
<br />
* [with oslo.serialization 1.10 or newer] Get the [http://docs.openstack.org/developer/oslo.serialization/api.html#module-oslo_serialization.base64 base64 module] from oslo_serialization (from oslo_serialization import base64) to get functions:<br />
** oslo_serialization.base64.decode_as_bytes(encoded)<br />
** oslo_serialization.base64.decode_as_text(encoded, encoding='utf-8')<br />
** oslo_serialization.base64.encode_as_bytes(s, encoding='utf-8')<br />
** oslo_serialization.base64.encode_as_text(s, encoding='utf-8')<br />
* Replace text.encode('base64') and base64.b64encode(text) with:<br />
** base64.b64encode(text): only accept bytes and returns bytes,<br />
** or: oslo_serialization.base64.encode_as_bytes(text): accept bytes or Unicode and returns bytes<br />
** or: oslo_serialization.base64.encode_as_text(text): accept bytes and Unicode and returns Unicode<br />
** '''Warning:''' base64.encodestring(raw) adds a newline ("\n"), whereas encode_as_bytes() and encode_as_text() don't.<br />
* Replace raw.decode('base64') with:<br />
** base64.b64decode(raw): return bytes<br />
** oslo_serialization.base64.decode_as_bytes(encoded): accept bytes and Unicode, returns bytes<br />
** oslo_serialization.base64.decode_as_text(encoded): accept bytes and Unicode, returns Unicode<br />
<br />
Hexadecimal:<br />
<br />
* Replace raw.decode('hex') with binascii.unhexlify(raw)<br />
* Replace bytes.encode('hex') with binascii.hexlify(bytes)<br />
<br />
JSON:<br />
<br />
* [with oslo.serialization 1.10 or newer] Replace json.dumps(obj) with [http://docs.openstack.org/developer/oslo.serialization/api.html#oslo_serialization.jsonutils.dump_as_bytes oslo_serialization.jsoutils.dump_as_bytes(obj)]<br />
* Replace json.loads(obj) with oslo_serialization.jsoutils.loads(obj): it accepts bytes and Unicode, bytes is decoded from UTF-8. It avoids "if isinstance(obj, bytes): obj = obj.decode('utf-8')" which may require a second temporary variable.<br />
<br />
=== contextlib.nested ===<br />
<br />
To replaced contextlib.nested is to use [https://docs.python.org/3/library/contextlib.html#contextlib.ExitStack contextlib.ExitStack]. It's available on Python 2 using [https://contextlib2.readthedocs.org/en/latest/#contextlib2.ExitStack contextlib2.ExitStack]. For contextlib.nested, nova/test.py defines:<br />
<br />
if six.PY3:<br />
@contextlib.contextmanager<br />
def nested(*contexts):<br />
with contextlib.ExitStack() as stack:<br />
yield [stack.enter_context(c) for c in contexts]<br />
else:<br />
nested = contextlib.nested<br />
<br />
Another option to replaced contextlib.nested is to use the @mock.patch decorator. Example with nested function:<br />
<br />
def test_thing(self):<br />
@mock.patch(...)<br />
@mock.patch(...)<br />
@mock.patch(...)<br />
def do_test(...):<br />
...<br />
<br />
do_test()<br />
<br />
More options:<br />
* Mock provides a context that patches multiple things so that no nesting is needed: [https://docs.python.org/dev/library/unittest.mock.html#patch-multiple mock.patch.multiple()]<br />
* oslotest provides fixtures for mock, so you don't need a context: [http://docs.openstack.org/developer/oslotest/api.html#module-oslotest.mockpatch oslotest.mockpatch].<br />
<br />
=== oslo_utils.encodeutils.to_utf8 ===<br />
<br />
oslo.utils 3.5 has an oslo_utils.encodeutils.to_utf8() function to encode Unicode to UTF-8 and return bytes unchanged.<br />
<br />
=== bytes.decode and unicode.encode ===<br />
<br />
Python has a notion of "default encoding": sys.getdefaultencoding(). On Python 2, the default encoding is ASCII, whereas it is UTF-8 on Python 3.<br />
<br />
Don't write <code>data.decode()</code> or <code>text.encode()</code> without parameter, because you will use a different encoding on Python 2 and Python 3.<br />
<br />
Use an explicit encoding instead. Example: <code>data.decode('utf-8')</code> or <code>text.encode('utf-8')</code>. The right encoding depends on the use case, but UTF-8 is usually a good candidate (it is a superset of ASCII).<br />
<br />
=== safe_decode ===<br />
<br />
Olso Incubator has a function '''safe_decode()''' which can be used to decode a bytes string and pass text strings unchanged.<br />
<br />
The default encoding is <code>sys.stdin.encoding or sys.getdefaultencoding()</code>:<br />
* Python 3: the locale encoding, or UTF-8 if sys.stdin is "mocked" (io.StringIO instance)<br />
* Python 2: the locale encoding, or ASCII if stdin is not a TTY or if sys.stdin is "mocked" (StringIO.StringIO instance)<br />
<br />
It's safer to explicit the encoding to not rely on the locale encoding and have the same behaviour even if sys.stdin is "mocked".<br />
<br />
Safe usage:<br />
* <code>safe_decode(data, 'utf-8')</code>: decode bytes from UTF-8 or returns data unchanged if it's already a text string<br />
<br />
Unsafe usage:<br />
* <code>safe_decode(data)</code><br />
<br />
By default, the decoder is strict. You can specify a different error handler using the optional <code>errors</code> parameter. Example: safe_decode(b'[\xff]', 'ascii', 'ignore') returns '[]'.<br />
<br />
=== safe_encode ===<br />
<br />
Olso Incubator has a function '''safe_encode()''' which can be used to encode a string. Its usage is tricky and you should understand how it works and which encodings are used.<br />
* <code>safe_encode(text)</code> encodes text to the output encoding<br />
* <code>safe_encode(bytes)</code> may decode the string and then reencode to a different encoding if input and output encodings are different<br />
<br />
The default input encoding (<code>incomding</code> parameter) is <code>sys.stdin.encoding or sys.getdefaultencoding()</code>:<br />
* Python 3: the locale encoding, or UTF-8 if sys.stdin is "mocked" (io.StringIO instance)<br />
* Python 2: the locale encoding, or ASCII if stdin is not a TTY or if sys.stdin is "mocked" (StringIO.StringIO instance)<br />
<br />
The default output encoding (<code>encoding</code> parameter) is UTF-8.<br />
<br />
It's safer to explicit the input encoding to not rely on the locale encoding and have the same behaviour even if sys.stdin is "mocked".<br />
<br />
Safe usage:<br />
* <code>safe_encode(data, incoming='utf-8')</code>: encode text to UTF-8 or returns data unchanged if it's already a bytes string (since the input and output encoding are UTF-8)<br />
<br />
Unsafe usage:<br />
* <code>safe_encode(data)</code><br />
<br />
Example:<br />
* <code>safe_encode(b'\xe9', incoming='latin-1')</code> returns <code>b'\xc3\xa9'</code>.<br />
<br />
By default, the encoder and the decoder are strict. You can specify a different error handler using the optional <code>errors</code> parameter. Example: <code>safe_encode(b'[\xff]', incoming='ascii', errors='ignore')</code> returns <code>b'[]'</code>.<br />
<br />
=== logging module and format exceptions ===<br />
<br />
The <code>exception_to_unicode(exc)</code> function of oslo_utils.encodeutils is the recommanded way to format an exception to Unicode. This function works on Python 2 and Python 3 and it should avoid mojibake is most cases.<br />
<br />
On Python 2, the logging module accepts bytes and text strings. On Python 3, it only accepts text strings. For example, logging.error(b'hello') logs <code>b'hello'</code> instead of <code>'hello'</code>.<br />
<br />
There is no clear rule for format exceptions yet. There are different choices depending on the project:<br />
<br />
* <code>str(exc)</code>: native string, so use bytes on Python 2<br />
* <code>six.text_type(exc)</code>: always use Unicode. It may raise unicode error depending on the exception, be careful. Example of such error in python 2: <code>unicode(Exception("nonascii:\xe9"))</code>.<br />
* <code>six.u(str(exc))</code>: unsafe on Python 2 if str(exc) contains non-ASCII bytes, ex: <code>unicode(str(Exception("\xff")))</code><br />
* <code>LOG.exception(_LE("... %(exc)s ..."), {"exc": exc, ...})</code><br />
<br />
Since logging functions expect text strings on Python 3, logged exceptions should be formatted using <code>str(exc)</code>. Example: <code>LOG.debug(str(exc))</code>.<br />
<br />
=== HTTP ===<br />
<br />
The HTTP protocol is based on '''bytes''':<br />
<br />
* HTTP body contains '''bytes'''. For example, use io.BytesIO for a stream storing an HTTP body.<br />
* HTTPConnection.getresponse().read() returns '''bytes''' (in Python 3, '''str''' which is bytes in Python 2)<br />
* On Python 3, the http.client accepts text for HTTP headers: keys are encoded to ASCII and values to ISO 8859-1 (which is only a small subset of the Unicode charset)<br />
* It looks like Swift encodes internally HTTP headers to UTF-8 (directly using the UTF-8 encoding, not using a MIME encoding like =?UTF-8?Q?...?=. See the HTTP [RFC 2047 http://www.ietf.org/rfc/rfc2047.txt] and [http://stackoverflow.com/questions/4400678/http-header-should-use-what-character-encoding HTTP header should use what character encoding?]<br />
<br />
=== References to port Python 2 code to Python 3 ===<br />
* [http://python3porting.com/ Porting to Python 3 Book] by Lennart Regebro, especially the [http://python3porting.com/differences.html Language differences and workarounds].<br />
* [http://docs.python.org/dev/howto/pyporting.html HOWTO: Porting Python 2 Code to Python 3] by Brett Cannon<br />
* [https://wiki.python.org/moin/PortingPythonToPy3k Porting Python Code to 3.x]<br />
* [http://code.google.com/p/python-incompatibility/ python-incompatibility]: Demonstrates incompatibilities between Python versions.<br />
<br />
=== Common pitfalls ===<br />
<br />
==== What is a string ? ====<br />
You should definitely not talk about "strings" in your commit logs/reviews. In Python 2, a 'string' is bytes; in Python 3, it's a Unicode text string. The following code snippet may help in understanding the difference:<br />
<br />
Python 2:<br />
>>> type('foo')<br />
<type 'str'><br />
>>> type(u'foo')<br />
<type 'unicode'><br />
>>> type(b'foo')<br />
<type 'str'><br />
>>> isinstance('foo', six.text_type)<br />
False<br />
>>> isinstance(u'foo', six.text_type)<br />
True<br />
>>> bytes is str<br />
True<br />
>>> b'foo'[0]<br />
'f'<br />
<br />
Python 3:<br />
>>> type('foo')<br />
<class 'str'><br />
>>> type(u'foo')<br />
<class 'str'><br />
>>> type(b'foo')<br />
<class 'bytes'><br />
>>> isinstance('foo', six.text_type)<br />
True<br />
>>> isinstance(b'foo', six.text_type)<br />
False<br />
>>> bytes is str<br />
False<br />
>>> b'foo'[0]<br />
102<br />
<br />
==== tox/testr error: db type could not be determined ====<br />
<br />
The "db type could not be determined" error comes from .testrepository/times.dbm used by testr.<br />
<br />
Workaround: "rm -rf .testrepository/" and then run "tox -e py34" before running "tox -e py27". You only have to do this once. The problem only occurs with "tox -e py34" when .testrepository/ was created by Python 2.<br />
<br />
== Python 3 Status of OpenStack projects ==<br />
<br />
=== Common Libraries (Oslo Projects) ===<br />
<br />
See [http://git.openstack.org/cgit/openstack/governance/tree/reference/programs.yaml programs.yaml] for the list of Common Libraries.<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! Comment<br />
|-<br />
| [https://pypi.python.org/pypi/cliff cliff] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.concurrency oslo.concurrency] || style="background-color: lightgreen;" | Yes ||<br />
|-/<br />
| oslo-incubator || style="background-color: lightgreen;" | Yes || py34 gate is voting<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.config oslo.config] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.context oslo.context] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.db oslo.db] || style="background-color: lightgreen;" | Yes ||<br />
PyMySQL driver is now used by default for MySQL. setup.cfg contains the Python 3 classifier.<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.i18n oslo.i18n] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.log oslo.log] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.messaging oslo.messaging] || style="background-color: lightgreen;" | Yes ||<br />
oslo.messaging is now fully compatible with Python 3. The old (and now removed) Qpid transport was not compatible, the AMQP driver was ported recently.<br />
<br />
The py34 check job is not more voting because of [//bugs.launchpad.net/ubuntu/+source/python3.4/+bug/1367907 ubuntu still uses Python 3.4.0 which has a severe bug].<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.middleware oslo.middleware] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.rootwrap oslo.rootwrap] || style="background-color: lightgreen;" | Yes ||<br />
oslo.rootwrap 2.4 works on Python 3, but eventlet tests hangs on Python 3. It's now fixed in the development version. oslo.rootwrap has a non-voting python34 check job.<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.serialization oslo.serialization] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslosphinx oslosphinx] || ? || The project only contains two short .py files, it looks to be Python 3 compatible. Is Sphinx Python 3 compatible?<br />
|-<br />
| [https://pypi.python.org/pypi/oslotest oslotest] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.versionedobjects oslo.versionedobjects] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.vmware oslo.vmware] || style="background-color: lightgreen;" | Yes || Supports Python 3 since oslo.vmware 0.13.0<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.utils oslo.utils] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| pylockfile || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/stevedore stevedore] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/taskflow taskflow] || style="background-color: lightgreen;" | Yes ||<br />
|}<br />
<br />
=== Development tools ===<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! Comment<br />
|-<br />
| [https://pypi.python.org/pypi/cookiecutter cookiecutter] || style="background-color: lightgreen;" | yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/hacking hacking] || style="background-color: lightgreen;" | yes || py33 gate is not voting<br />
|-<br />
| [https://pypi.python.org/pypi/pbr pbr] || style="background-color: lightgreen;" | yes ||<br />
|-<br />
| stackforge/python-jenkins || style="background-color: lightgreen;" | yes || py33 gate is voting<br />
|-<br />
| openstack-infra/jenkins-job-builder || style="background-color: orange;" | partial || https://review.openstack.org/172238<br />
|}<br />
<br />
=== OpenStack clients ===<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! CI tests running? !! Python 3 classifiers ? !! Blocked by !! Comment<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/keystonemiddleware keystonemiddleware] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || python-memcached || keystonemiddleware 1.6.1 supports Python 3.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-barbicanclient python-barbicanclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color:lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
<br />
| [https://pypi.python.org/pypi/python-ceilometerclient python-ceilometerclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color:lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-cinderclient python-cinderclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-fuelclient python-fuelclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-glanceclient python-glanceclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen" | Voting || style="background-color:lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-heatclient python-heatclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-ironicclient python-ironicclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-keystoneclient python-keystoneclient] || style="background-color: lightgreen;" | Yes || style="background-color:lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-manilaclient python-manilaclient] || style="background-color: lightgreen;" | Yes || style="background-color:lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-marconiclient python-marconiclient]|| style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-novaclient python-novaclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPII || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-neutronclient python-neutronclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-openstackclient python-openstackclient] || style="background-color: lightgreen" | Yes || style="background-color: lightgreen" | Voting || style="background-color: lightgreen" | On PyPI || || As of 0.9<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-saharaclient python-saharaclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-swiftclient python-swiftclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-tuskarclient python-tuskarclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-troveclient python-troveclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-watcherclient python-watcherclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-designateclient python-designateclient] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | Voting || style="background-color: red;" | No || ||<br />
<br />
|}<br />
<br />
=== OpenStack Libraries ===<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! CI tests running? !! Python 3 classifiers ? !! Comment<br />
|-<br />
| [https://pypi.python.org/pypi/django_openstack_auth django_openstack_auth] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes ||<br />
django_openstack_auth 2.0 is fully compatible with Python 3.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/glance_store glance_store] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes || glance_store 0.7.0 added the Python 3 support.<br />
|-<br />
<br />
| neutron-lib || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
<br />
<br />
| [https://pypi.python.org/pypi/os-brick os-brick] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes || os-brick 0.3.2 added Python 3 support.<br />
<br />
|-<br />
| [https://pypi.python.org/pypi/sqlalchemy-migrate sqlalchemy-migrate] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color:lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/taskflow taskflow] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
|}<br />
<br />
=== Dependencies ===<br />
<br />
There are two ways to express dependencies that should differ between Python 2.x and 3.x. We currently support using multiple requirements files, and will shortly be supporting and recommending the use of environment markers. Recent releases of all the tools in our ecosystem are needed for environment markers.<br />
<br />
==== requirements-py3.txt ====<br />
<br />
This approach generates a different requirements list depending on what Python version is running when the egg info is created (which goes into wheels and sdists). As a consequence this can't work with tox, publishing sdists to PyPI, or wheels. It is however useful for anything installing from git. To use it, create two requirements files:<br />
<br />
* requirements-py2.txt: all dependencies for Python 2 (not only dependencies specific to Python 2)<br />
* requirements-py3.txt: all dependencies for Python 3 (not only dependencies specific to Python 3)<br />
* (same for test-requirements.txt)<br />
<br />
You have to edit tox.ini to specify the right requirements file. Extract of a tox.ini file:<br />
<br />
<pre><br />
...<br />
[testenv:py33]<br />
deps = -r{toxinidir}/requirements-py3.txt<br />
-r{toxinidir}/test-requirements-py3.txt<br />
...<br />
</pre><br />
<br />
==== Environment markers ====<br />
<br />
Environment markers provide a mini-language to express when a dependency is relevant. We hope the next release of pbr will support them. Recent pip, setuptools and wheel versions do support them, but until pbr exports the requirements metadata with them intact and structured correctly for setuptools, we can't use them anywhere.<br />
<br />
* PEP 0345 -- Metadata for Python Software Packages 1.2 (accepted): [https://www.python.org/dev/peps/pep-0345/#environment-markers Environment markers]<br />
* PEP 0426 -- Metadata for Python Software Packages 2.0 (draft): [https://www.python.org/dev/peps/pep-0426/#environment-markers Environment markers]<br />
<br />
When placed in a requirements.txt file, the markers are interpreted directly by pip in `pip install -r requirements.txt`, and indirectly via setuptools when installing an sdist or wheel (including `pip install .`. For instance:<br />
<pre><br />
six<br />
futures; python_version < '3.2'<br />
</pre><br />
<br />
See also:<br />
* [https://review.openstack.org/#/c/184328/ oslo.db: Refactor deps to use extras and env markers] (require pip 7, not released yet)<br />
* pip: [https://github.com/pypa/pip/pull/1472 Fix issue #1433: parse requirements in markers #1472]<br />
* setuptools: pkg_resources doesn't understand environment markers: [https://bitbucket.org/pypa/wheel/issue/139/wheel-should-support-pep-426-environment pkg_resources.parse_requirements() raises ValueError]<br />
* pbr: [https://review.openstack.org/#/c/181795/ Teach pbr to read extras and env markers], [https://review.openstack.org/#/c/165015/ Handle PEP426 markers] (abandoned)<br />
* wheel: [https://bitbucket.org/pypa/wheel/issue/139/wheel-should-support-pep-426-environment wheel should support PEP 426 environment markers] (closed), wheel supports environment markers in extra requirements<br />
* tox: [https://bitbucket.org/hpk42/tox/issue/236/tox-must-create-the-source-distribution tox must create the source distribution with the Python of the virtual environment], [https://bitbucket.org/hpk42/tox/pull-request/142/issue-236-subcommand_test-rebuilds-sdist/ Issue #236: subcommand_test() rebuilds sdist with venv python] (declined)<br />
<br />
Oslo Messaging issue:<br />
* futures is not needed on Python 3, since concurrent.futures is now part of the Pyhon stdlib since Python 3.2<br />
* [https://review.openstack.org/#/c/172135/ futures was added to requirements-py3.txt] because tox creates the source tarball using Python 2 which reads requirements.txt<br />
* The correct fix would be to use environment markers on futures<br />
<br />
==== Dependencies status ====<br />
<br />
[https://caniusepython3.com/check/4fd5dda2-b1f1-4db4-a636-67cd3276cb6a Porting status] for [https://github.com/openstack/requirements/blob/master/global-requirements.txt global-requirement.txt].<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! CI tests running? !! Python 3 classifiers ? !! Blocked by !! Comment<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/boto boto] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || || See https://github.com/boto/boto3 (experimental) <- This seems dead, and https://github.com/boto/boto works with Python 3.x (since 2.32).<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/django-compressor django-compressor] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || || Requirements upgraded: https://review.openstack.org/94357<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/dnspython dnspython] || style="background-color:lightgreen;" | Yes || N/A|| style="background-color: lightgreen;" | Yes || || Must use the [https://pypi.python.org/pypi/dnspython3/ Python 3 version], see https://github.com/rthalley/dnspython/issues/60<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/ecdsa ecdsa] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || ||Py3 support merge before the 0.10 release (see https://github.com/warner/python-ecdsa/commits/master)<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/eventlet eventlet] || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || || eventlet 0.17.3 now fully support Python 3<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/jsonrpclib jsonrpclib] || style="background-color:red;" | No || N/A || style="background-color: red;" | No || || The project seems dead :(<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/libvirt-python libvirt-python] || style="background-color: lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/mysql-python MySQL-Python] || style="background-color:orange;" | No, but mysqlclient or PyMySQL are compatible || N/A || style="background-color: orange;" | No || ||<br />
Patches:<br />
* [https://review.openstack.org/#/c/179745/ Add mysqlclient dependency]<br />
<br />
MySQL-Python: [https://github.com/farcepest/MySQLdb1/pulls 2 pending pull requests for Python 3].<br />
<br />
INADA Naoki, the maintainer of PyMySQL, wrote [https://pypi.python.org/pypi/mysqlclient mysqlclient]: fork of MySQL-Python using libmysqlclient.so which is Python 3 compatible. He recommends to use mysqlclient instead of MySQL-python even on Python 2. mysqlclient fixes some bugs, build issues and it support Python 3. For example: support MariaDB's libmysqlclient.so, support microsecond in TIME column.<br />
<br />
PyMySQL is compatible with Python 3: see [https://wiki.openstack.org/wiki/PyMySQL_evaluation PyMySQL evaluation] discussion to eventually replace mysql-python with PyMySQL in OpenStack.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/netifaces netifaces] || style="background-color:lightgreen;" | Yes || N/A|| style="background-color: lightgreen;" | Yes || || Patch sent by Victor Stinner (in private): [https://bitbucket.org/haypo/misc/src/tip/openstack/netifaces_python3.patch netifaces_python3.patch], Debian has patches too. Python 3 support as of 0.10.4. Pushed to requirements: https://review.openstack.org/94358 .<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/nose-exclude nose-exclude] || style="background-color: lightgreen;" | Yes || N/A || style="background-color: red;" | No || || Python 3 is supported since nose-exclude 0.4.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/nosehtmloutput nosehtmloutput] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No ||<br />
* nose-exclude (tests only)<br />
* openstack.nose-plugin<br />
||<br />
* https://bugs.launchpad.net/ubuntu/+source/python-nosehtmloutput/+bug/1287247<br />
* https://review.openstack.org/#/c/80956/<br />
|-<br />
| [https://pypi.python.org/pypi/nosexcover nosexcover] || style="background-color:lightgreen;" | No || N/A || style="background-color: lightgreen;" | On PyPI || || Python 3 support since 1.0.9<br />
|-<br />
| [https://pypi.python.org/pypi/openstack.nose-plugin openstack.nose-plugin] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/pam pam] || style="background-color:orange;" | No for pam, Yes for simplepam || NA || style="background-color: red;" | No || || The fork [https://pypi.python.org/pypi/simplepam simplepam] works on Python 2 and 3<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/paramiko paramiko] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | On PyPI || || Requirements upgraded: https://review.openstack.org/#/c/81132/<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/paste paste] || style="background-color:lightgreen;" | Yes || style="background-color: lightgrey;" | N/A || style="background-color: lightgreen;" | Yes || || Compatible with Python 3 since Paste 2.0<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/pycadf pycadf] || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | Yes || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/pyldap pyldap] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || || Compatible with Python 3 (drop in replacement for python-ldap).<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-ldap python-ldap] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || || python-ldap has been dropped in favour of [htps://pypi.python.org/pypi/pyldap pyldap]. No longer part of global-requirements as of Newton.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-memcached python-memcached] || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | N/A || style="background-color:lightgreen;" | Yes || ||<br />
python-memcached 1.56 is compatible with Python 3, but there are still some bugs: [https://github.com/linsomniac/python-memcached/pull/73 More Python 3 fixes] (not part of python-memcached 1.57). These bugs impact running keystonemiddleware tests when the memcached server is not running. It can also impact a setup with multiple memcached servers.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/qpid-python qpid-python] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || || Required if using oslo.messaging's qpid backend. That is the old pure python amqp 0-10 client library. That only speaks 0-10 and works with qpidd broker. It is used by the impl_qpid.py driver in oslo.messaging. That client is legacy - it isn't being ported to use AMQP 1.0.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/pyngus pyngus] || style="background-color: lightgreen;" | Yes || style="background-color: lightgray;" | N/A || style="background-color: red;" | No || ||<br />
pyngus 2.0 supports Python 3.<br />
<br />
pyngus is required if using oslo.messaging's AMQP 1.0 driver. pyngus is a wrapper for proton and proton has not been ported to python 3 yet: see [https://issues.apache.org/jira/browse/PROTON-490 Proton issue #490].<br />
<br />
[https://pypi.python.org/pypi/python-qpid-proton Proton] is a C library with various bindings in other languages. The language bindings are auto generated via the SWIG tool, plus a the python wrapper bits. All the python stuff is found under proton-c/bindings/python in the [https://git-wip-us.apache.org/repos/asf/qpid-proton.git git tree]. The first bit of work is to refactor the SWIG file cproton.i to work for both Python 2 and 3.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/rtslib-fb rtslib-fb] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/Routes Routes] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || || Routes 2.2 works Python 2 and 3 using a single code base.<br />
|-<br />
| [https://pypi.python.org/pypi/sphinxcontrib-docbookrestapi sphinxcontrib-docbookrestapi] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || style="background-color: orange;" | In the Git repo, not on PyPI || ||<br />
|-<br />
| [https://pypi.python.org/pypi/sphinxcontrib-httpdomain sphinxcontrib-httpdomain] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/sphinxcontrib-pecanwsme sphinxcontrib-pecanwsme] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/thrift thrift] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/websockify websockify] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | N/A || style="background-color: lightgreen;" | Yes || || python3 works with the 0.7.0 version released on Jul 23, 2015<br />
|-<br />
<br />
|}<br />
<br />
=== OpenStack applications (tc-approved) ===<br />
<br />
OpenStack applications [http://governance.openstack.org/reference/tags/tc-approved-release.html approved by the OpenStack Technical Committee].<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Project !! Unit tests pass on Python 3 !! py34 gate !! Comments<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/ceilometer ceilometer] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/cinder cinder] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
[https://blueprints.launchpad.net/cinder/+spec/cinder-python3 cinder-python3] blueprint (written by Victor Stinner) has been accepted for Liberty. Patches: [https://review.openstack.org/#/q/project:openstack/cinder+topic:bp/cinder-python3,n,z bp/cinder-python3 topic]. Note: Commit message must use "Partial-Implements: blueprint cinder-python3" to be linked to the blueprint. Kendall Nelson, Ivan Kolodyazhny (core) and Eric Harney (core) prefer this syntax: see [https://review.openstack.org/#/c/229991/2//COMMIT_MSG COMMIT_MSG].<br />
|-<br />
<br />
<br />
| [https://pypi.python.org/pypi/glance glance] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Victor Stinner is working on porting Glance to Python3. Patches: [https://review.openstack.org/#/q/status:open+project:openstack/glance+branch:master+topic:py3,n,z Patches for glance (topic: py3)].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/ironic ironic] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
[http://lists.openstack.org/pipermail/openstack-dev/2015-May/064049.html Python 3.4 unit tests are now being run for openstack/ironic. The unit tests are a voting job.]<br />
Thanks to Victor Sergeyev for all of his work to update the Ironic code to make it pass the unit tests using Python 3.4: [https://review.openstack.org/#/c/156192/ Run tests in py34 environment]<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/heat heat] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Sirushti Murugesan wrote and implemented the spec [http://specs.openstack.org/openstack/heat-specs/specs/liberty/heat-python34-support.html Python34 Support] (which was accepted for Liberty). Mitaka version will fully support Python 3. Great job Sirushti Murugesan who did almost all the work!<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/horizon horizon] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
George Peristerakis wrote [https://blueprints.launchpad.net/horizon/+spec/porting-python3 Make Horizon python3.4 compatible] in May 2015, the blueprint was approved. Patches: [https://review.openstack.org/#/q/topic:bp/porting-python3+project:openstack/horizon,n,z bp/porting-python3 topic].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/neutron neutron] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
[https://review.openstack.org/#/c/172962/ Porting to Python 3] spec (by Cyril Roelandt) accepted for Liberty, port in progress. [https://review.openstack.org/#/q/project:openstack/neutron+branch:master+topic:bp/neutron-python3,n,z Patches of the blueprint neutron-python3]<br />
|-<br />
<br />
| neutron-lbaas || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Patches: [https://review.openstack.org/#/q/topic:bp/neutron-python3 topic:bp/neutron-python3].<br />
|-<br />
<br />
| neutron-fwaas || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| neutron-vpnaas || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org//pypi/sahara sahara] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/keystone keystone] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
The move to pyldap and new ldappool were major hurdles solved in Newton. Great work by the Keystone team to get the last things through the gate in Newton.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/nova nova] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
[http://specs.openstack.org/openstack/nova-specs/specs/liberty/approved/adding-python34-support-to-nova.html Adding Python 3.4 support to Nova] spec (by Victor Stinner) accepted for Liberty. Port in progress.<br />
<br />
Patches:<br />
* [https://review.openstack.org/#/q/project:openstack/nova+branch:master+topic:bp/nova-python3,n,z master (bp/nova-python3)].<br />
* dims: [https://review.openstack.org/#/c/261045/ python3: byte/string conversions and enable more tests] (abandonned after 100 revisions)<br />
* dims: [https://review.openstack.org/#/c/262083/ python3: Port more code to python3] (abandonned after 45 revisions)<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/trove trove] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
Update 2016-05-02: 115 tests/398.<br />
<br />
Victor Stinner proposed the [https://blueprints.launchpad.net/trove/+spec/trove-python3 trove-python3 blueprint] for Mitaka.<br />
<br />
From Victor (3/17/2016): "I propose to discuss Python 3 before the summit. For example, prepare a concrete plan to port Trove to Python 3, list technical issues like MySQL-Python, etc."<br />
<br />
Patches: [https://review.openstack.org/#/q/topic:bp/trove-python3,n,z search for the bp/trove-python3 topic].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/swift swift] || style="background-color: red;" | blocked || style="background-color: lightgreen;" | voting ||<br />
BLOCKED: Swift developers are not reviewing Python 3 patches.<br />
<br />
[http://lists.openstack.org/pipermail/openstack-dev/2015-October/078058.html Plan to add Python 3 support to Swift]. Patches: [https://review.openstack.org/#/q/project:openstack/swift+branch:master+topic:py3,n,z Patches with the topic py3]<br />
<br />
Python 3 unit tests require liberasurecode >= 1.0.9 and PyEClib >= 1.0.9. To install liberasurecode (in /usr):<br />
<br />
git clone https://bitbucket.org/tsg-/liberasurecode/<br />
cd liberasurecode<br />
/autogen.sh && /configure --prefix=/usr && make && sudo make install<br />
<br />
liberasurecode >= 1.0.9 is available in Ubuntu Precise, Ubuntu Trusty, Fedora 22, Fedora 23 and CentoOS 7.<br />
|-<br />
<br />
|}<br />
<br />
=== Other OpenStack Applications and Projects ===<br />
<br />
List of all OpenStack projects: [http://git.openstack.org/cgit/openstack/governance/tree/reference/projects.yaml projects.yaml].<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Project !! Unit tests pass on Python 3 !! py34 gate !! Comments<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/aodh aodh] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/cue cue] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Patches: [https://review.openstack.org/#/q/status:open+project:openstack/cue+branch:master+topic:py3,n,z search for topic py3].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/congress congress] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Random Stacker wrote a [https://blueprints.launchpad.net/congress/+spec/support-python3 support-python3 blueprint]. Patches: [https://review.openstack.org/#/q/project:openstack/congress+branch:master+topic:bp/support-python3,n,z search for the topic bp/support-python3].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/designate designate] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Pradeep Kumar Singh proposed the [https://blueprints.launchpad.net/designate/+spec/designate-py3 blueprint designate-py3] which was accepted for Liberty. Patches: [https://review.openstack.org/#/q/status:open+project:openstack/designate+branch:master+topic:bp/designate-py3,n,z topic:bp/designate-py3].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/gnocchi gnocchi] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/magnum magnum] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://github.com/openstack/manila manila] || style="background-color: lightgreen;" | Yes but... || style="background-color: lightgreen;" | voting ||<br />
Valeriy Ponomaryov wrote the [https://blueprints.launchpad.net/manila/+spec/py3-compatibility py3-compatibility blueprint].<br />
<br />
SSL tests are skipped because of the bug [https://bugs.launchpad.net/manila/+bug/1482633 requests to SSL wrapped sockets hang while reading using py3].<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Octavia octavia] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/rally rally] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || A big thank to Andrey Kurilin for a lot of work in this direction<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Searchlight searchlight] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Solum solum] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Victor Stinner proposed the [https://blueprints.launchpad.net/solum/+spec/solum-python3 blueprint solum-python3] which was approved. Patches: [https://review.openstack.org/#/q/status:open+topic:bp/solum-python3,n,z search for bp/solum-python3 topic] (open reviews).<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Zaqar zaqar] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Watcher watcher] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/barbican barbican] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting || Pradeep Kumar Singh proposed the blueprint [https://blueprints.launchpad.net/barbican/+spec/barbican-py3 barbican-py3] for Liberty.<br />
<br />
Patches: [https://review.openstack.org/#/q/status:open+project:openstack/barbican+branch:master+topic:bp/barbican-py3,n,z search for the bp/barbican-py3 topic].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/mistral mistral] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
Update 2015-10-05: Renat Akhmerov wrote "Currently, we have 70-80 tests that fail on Python 3 which is the way better than it was a few weeks ago (it used to be ~500). (...) we're actively working on fixing all the tests for Python 3".<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/murano murano] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
Blueprint: [https://blueprints.launchpad.net/murano/+spec/murano-python-3-support murano-python-3-support].<br />
<br />
python-muranoclient and murano-dashboard fully support Python 3 and have jobs voting. murano and murano-agent are a work in progress, and have their jobs non-voting.<br />
<br />
Patches: [https://review.openstack.org/#/q/project:openstack/murano+topic:py3 topic:py3].<br />
<br />
Many unit tests fail with the same error in YAQL, see YAQL bug: [https://bugs.launchpad.net/yaql/+bug/1570930 Need a new release to get full Python 3 support].<br />
|-<br />
<br />
|-<br />
|}<br />
<br />
Unsorted projects:<br />
* [https://wiki.openstack.org/wiki/App-Catalog App Catalog]<br />
* Chef OpenStack (Ruby)<br />
* [https://github.com/openstack/kolla/ Kolla]: ~2100 lines of Python, but not "tox -e py27" target<br />
* OpenStack Ansible (Python): Ansible playbooks and roles for deployment<br />
* Puppet OpenStack (Ruby)<br />
* TripleO<br />
<br />
=== Enable Python 3 in DevStack ===<br />
<br />
* Fedora::<br />
<br />
sudo dnf install python3-devel<br />
sudo python3 -m pip install python-memcached # needed by keystonemiddleware<br />
<br />
* localrc: add the following lines<br />
<br />
USE_PYTHON3=True<br />
PYTHON3_VERSION=3.4<br />
<br />
=== Functional and Integration Tests ===<br />
<br />
Doug Hellmann wrote a cross-project specification to run integration tests on Python 3: [http://specs.openstack.org/openstack/openstack-specs/specs/enable-python-3-int-func-tests.html Enabling Python 3 for Application Integration Tests] (spec approved for Liberty).<br />
<br />
Patch for DevStack: [https://review.openstack.org/#/c/181165/ Enable optional Python 3 support].<br />
<br />
Projects wanting to run their existing functional test suite against their services on Python 3 should:-<br />
* Add the Python3.4 trove classifier to the setup.cfg configuration file of the respective service.<br />
* set USE_PYTHON3=True in Devstack's localrc config file before running stack.sh after [https://review.openstack.org/#/c/181165/ the DevStack change] is merged or cherry-pick until then.<br />
* set basepython = python3.4 in tox for the necessary functional/integration tests environment.<br />
<br />
Then run tox -e<your functional test suite name>. Example:- tox -efunctional to run the functional the tests of a certain project.<br />
<br />
Once the functional test suite is reliably passing against the service in a python 3.4 env, the trove classifiers must be updated along with a new gate job being added to the project.<br />
<br />
== Status of Python 3 in Linux distributions ==<br />
<br />
* ArchLinux already [https://www.archlinux.org/news/python-is-now-python-3 switched to Python 3 by default] in 2011<br />
* Ubuntu wants to remove Python 2 from the default installation for Ubuntu 16.04 LTS: see [https://wiki.ubuntu.com/Python (Python) Plans for 16.04].<br />
* Fedora schedules the switch in Fedora 23 (october 2015): [https://fedoraproject.org/wiki/Changes/Python_3_as_Default Python 3 as the Default Implementation]<br />
* RHEL: [https://www.softwarecollections.org/en/scls/rhscl/python33/ Python 3.3] and [https://www.softwarecollections.org/en/scls/rhscl/rh-python34/ Python 3.4] are available on RHEL6 and RHEL7 using SCL.<br />
* CentOS: [https://www.softwarecollections.org/en/scls/rhscl/python33/ Python 3.3] and [https://www.softwarecollections.org/en/scls/rhscl/rh-python34/ Python 3.4] are available on CentOS 6 and 7 using SCL (no Red Hat subscription needed, CentOS has its own flavor of SCL)<br />
* In Debian, the plan is to deprecate Python 2 in Stretch (aka: Debian 9, the next Stable Debian after Jessie) and to completely remove Python 2 for the Buster release of Debian (aka: Debian 10, to be release in approximatively 2019).<br />
<br />
== Reports at OpenStack Summits ==<br />
<br />
* Mitaka Summit<br />
** Cross-project session: Python 3 was proposed, https://etherpad.openstack.org/p/mitaka-cross-project-session-planning<br />
* Liberty Summit<br />
** Cross-project session on enabling app integration testing: https://etherpad.openstack.org/p/liberty-cross-project-python3<br />
* Kilo Summit<br />
** Doug Hellmann: "Moving our applications to Python 3" cross-project session<br />
** Victor Stinner: "Port nova to Python 3", https://etherpad.openstack.org/p/liberty-nova-summit-ideas<br />
* Juno summit notes: https://etherpad.openstack.org/p/juno-cross-project-future-of-python (Oslo) and https://etherpad.openstack.org/p/juno_swift_python3 (Swift)<br />
* Icehouse summit notes: https://etherpad.openstack.org/p/IcehousePypyPy3<br />
* Havana summit notes: https://etherpad.openstack.org/p/havana-python3<br />
<br />
== Articles ==<br />
<br />
* [http://blogs.rdoproject.org/7894/status-of-python-3-in-openstack-mitaka Status of Python 3 in OpenStack Mitaka] (Victor Stinner, March 2016)<br />
* [http://techs.enovance.com/7807/python-3-status-openstack-liberty Python 3 Status in OpenStack Liberty] (Cyril Roelandt and Victor Stinner, September 2015)<br />
* [http://techs.enovance.com/6722/status-of-the-openstack-port-to-python-3-2 Status of the OpenStack port to Python 3] (Cyril Roelandt, February 2014)<br />
* [http://techs.enovance.com/6521/openstack_python3 Why should OpenStack move to Python 3 right now?] (Victor Stinner, December 2013)<br />
<br />
== Pycon Montreal 2014: Sprint Port OpenStack to Python 3 ==<br />
<br />
Enovance organized a sprint to Port OpenStack to Python 3 during 4 days: between April, 14 (Monday) and April, 17 (Thursday) 2014. See the page [[Python3/SprintPycon2014]].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Python3&diff=125674Python32016-05-22T20:46:06Z<p>Morgan Fainberg: /* OpenStack applications (tc-approved) */</p>
<hr />
<div>This page tracks the progress of Python 3 effort porting for OpenStack.<br />
<br />
== IRC: #openstack-python3 ==<br />
<br />
Join the #openstack-python3 IRC channel on the Freenode network to discuss Python 3.<br />
<br />
== Python 3 ==<br />
<br />
[http://techs.enovance.com/6521/openstack_python3 Why should OpenStack move to Python 3 right now?]<br />
:''Python 3 is usually seen as the new Python version which breaks compatibility and raises new Unicode issues. Python 3 is much more than that. It’s a new clean language which has a more consistent syntax. It has many new features, not less than 15 new modules. Python 3 is already well supported by major Linux distributions, whereas Python 2.7 reached its end-of-life. Slowly, some bugs cannot be fixed in Python 2.7 anymore and are only fixed in the latest Python 3 release. Python 3 is now 5 years old and considered as a mature programming language.''<br />
<br />
== Python 2: Python 2.6 support dropped, Python 2.7 only ==<br />
<br />
OpenStack Liberty targets Python 2.7 and 3.4.<br />
<br />
Python 2.6 support is being dropped in OpenStack since OpenStack Juno for servers. Python 2.6 support is currently kept in Oslo libraries and clients. See [https://etherpad.openstack.org/p/juno-cross-project-future-of-python juno-cross-project-future-of-python] etherpad.<br />
<br />
Python 3.3 support is being dropped since OpenStack Liberty.<br />
<br />
Python 2.6 is slowly being dropped in the whole OpenStack project, ex: [https://review.openstack.org/#/c/201295/ Remove p26 job from DIB].<br />
<br />
Python 2.6 support will be removed in Oslo and Clients clients for OpenStack Mitaka: [http://markmail.org/message/oe6wewgvbvvyts73 Oslo libraries dropping python 2.6 compatability].<br />
<br />
== Port Python 2 code to Python 3 ==<br />
<br />
OpenStack project chose to use the same code base for Python 2 and Python 3. The [http://pythonhosted.org/six/ Six: Python 2 and 3 Compatibility Library] helps to write code working on both versions. OpenStack supported Python 2.6 for RHEL up to Juno, but not Python 2.5 and older. As we are targeting Python 3.4 and up, there is no need to avoid u'unicode' syntax. Do not use six.u('unicode').<br />
<br />
=== Before you begin ===<br />
<br />
If you're doing development with Ubuntu/Debian (and not using devstack with the USE_PYTHON flag set), then you'll need the following packages installed to run the py34 tox unit test targets in the projects:<br />
<br />
sudo apt-get install python3.4 python3.4-dev<br />
<br />
=== sixer tool ===<br />
<br />
The [https://pypi.python.org/pypi/sixer sixer] tool helps to replace most basic patterns to add Python 3 compatibility and it respects OpenStack coding style.<br />
<br />
=== Common patterns ===<br />
<br />
* Replace "for key in dict.iterkeys()" with "for key in dict"<br />
* Replace dict.iteritems() with dict.items()<br />
* Replace dict.itervalues() with dict.values()<br />
<br />
Note: Replacing dict.iteritems()/.itervalues() with six.iteritems(dict)/six.itervalues(dict) was preferred in the past, but there was [http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html a discussion suggesting to avoid six for this]. The overhead of creating a temporary list on Python 2 is negligible.<br />
<br />
* Replace iterator.next() with next(iterator)<br />
* Replace basestring with six.string_types<br />
* Replace unicode with six.text_type<br />
* Replace (str, unicode) with six.string_types<br />
* Replace (int, long) with six.integer_types<br />
* Replace func.func_name with func.__name__<br />
* Replace exceptions.OSError with OSError and remove "import exceptions"<br />
* map() and filter() if a list is needed on Python 3:<br />
** Replace map(func, data) with [func(item) for item in data]<br />
** Replace filter(lambda obj: test(obj), data) with [obj for obj in data if test(obj)]<br />
** Note: Usually, tests fail because map() or filter() objects have no length<br />
<br />
=== Serialization: base64, JSON, etc. ===<br />
<br />
* [with oslo.serialization 1.10 or newer] Get the [http://docs.openstack.org/developer/oslo.serialization/api.html#module-oslo_serialization.base64 base64 module] from oslo_serialization (from oslo_serialization import base64) to get functions:<br />
** oslo_serialization.base64.decode_as_bytes(encoded)<br />
** oslo_serialization.base64.decode_as_text(encoded, encoding='utf-8')<br />
** oslo_serialization.base64.encode_as_bytes(s, encoding='utf-8')<br />
** oslo_serialization.base64.encode_as_text(s, encoding='utf-8')<br />
* Replace text.encode('base64') and base64.b64encode(text) with:<br />
** base64.b64encode(text): only accept bytes and returns bytes,<br />
** or: oslo_serialization.base64.encode_as_bytes(text): accept bytes or Unicode and returns bytes<br />
** or: oslo_serialization.base64.encode_as_text(text): accept bytes and Unicode and returns Unicode<br />
** '''Warning:''' base64.encodestring(raw) adds a newline ("\n"), whereas encode_as_bytes() and encode_as_text() don't.<br />
* Replace raw.decode('base64') with:<br />
** base64.b64decode(raw): return bytes<br />
** oslo_serialization.base64.decode_as_bytes(encoded): accept bytes and Unicode, returns bytes<br />
** oslo_serialization.base64.decode_as_text(encoded): accept bytes and Unicode, returns Unicode<br />
<br />
Hexadecimal:<br />
<br />
* Replace raw.decode('hex') with binascii.unhexlify(raw)<br />
* Replace bytes.encode('hex') with binascii.hexlify(bytes)<br />
<br />
JSON:<br />
<br />
* [with oslo.serialization 1.10 or newer] Replace json.dumps(obj) with [http://docs.openstack.org/developer/oslo.serialization/api.html#oslo_serialization.jsonutils.dump_as_bytes oslo_serialization.jsoutils.dump_as_bytes(obj)]<br />
* Replace json.loads(obj) with oslo_serialization.jsoutils.loads(obj): it accepts bytes and Unicode, bytes is decoded from UTF-8. It avoids "if isinstance(obj, bytes): obj = obj.decode('utf-8')" which may require a second temporary variable.<br />
<br />
=== contextlib.nested ===<br />
<br />
To replaced contextlib.nested is to use [https://docs.python.org/3/library/contextlib.html#contextlib.ExitStack contextlib.ExitStack]. It's available on Python 2 using [https://contextlib2.readthedocs.org/en/latest/#contextlib2.ExitStack contextlib2.ExitStack]. For contextlib.nested, nova/test.py defines:<br />
<br />
if six.PY3:<br />
@contextlib.contextmanager<br />
def nested(*contexts):<br />
with contextlib.ExitStack() as stack:<br />
yield [stack.enter_context(c) for c in contexts]<br />
else:<br />
nested = contextlib.nested<br />
<br />
Another option to replaced contextlib.nested is to use the @mock.patch decorator. Example with nested function:<br />
<br />
def test_thing(self):<br />
@mock.patch(...)<br />
@mock.patch(...)<br />
@mock.patch(...)<br />
def do_test(...):<br />
...<br />
<br />
do_test()<br />
<br />
More options:<br />
* Mock provides a context that patches multiple things so that no nesting is needed: [https://docs.python.org/dev/library/unittest.mock.html#patch-multiple mock.patch.multiple()]<br />
* oslotest provides fixtures for mock, so you don't need a context: [http://docs.openstack.org/developer/oslotest/api.html#module-oslotest.mockpatch oslotest.mockpatch].<br />
<br />
=== oslo_utils.encodeutils.to_utf8 ===<br />
<br />
oslo.utils 3.5 has an oslo_utils.encodeutils.to_utf8() function to encode Unicode to UTF-8 and return bytes unchanged.<br />
<br />
=== bytes.decode and unicode.encode ===<br />
<br />
Python has a notion of "default encoding": sys.getdefaultencoding(). On Python 2, the default encoding is ASCII, whereas it is UTF-8 on Python 3.<br />
<br />
Don't write <code>data.decode()</code> or <code>text.encode()</code> without parameter, because you will use a different encoding on Python 2 and Python 3.<br />
<br />
Use an explicit encoding instead. Example: <code>data.decode('utf-8')</code> or <code>text.encode('utf-8')</code>. The right encoding depends on the use case, but UTF-8 is usually a good candidate (it is a superset of ASCII).<br />
<br />
=== safe_decode ===<br />
<br />
Olso Incubator has a function '''safe_decode()''' which can be used to decode a bytes string and pass text strings unchanged.<br />
<br />
The default encoding is <code>sys.stdin.encoding or sys.getdefaultencoding()</code>:<br />
* Python 3: the locale encoding, or UTF-8 if sys.stdin is "mocked" (io.StringIO instance)<br />
* Python 2: the locale encoding, or ASCII if stdin is not a TTY or if sys.stdin is "mocked" (StringIO.StringIO instance)<br />
<br />
It's safer to explicit the encoding to not rely on the locale encoding and have the same behaviour even if sys.stdin is "mocked".<br />
<br />
Safe usage:<br />
* <code>safe_decode(data, 'utf-8')</code>: decode bytes from UTF-8 or returns data unchanged if it's already a text string<br />
<br />
Unsafe usage:<br />
* <code>safe_decode(data)</code><br />
<br />
By default, the decoder is strict. You can specify a different error handler using the optional <code>errors</code> parameter. Example: safe_decode(b'[\xff]', 'ascii', 'ignore') returns '[]'.<br />
<br />
=== safe_encode ===<br />
<br />
Olso Incubator has a function '''safe_encode()''' which can be used to encode a string. Its usage is tricky and you should understand how it works and which encodings are used.<br />
* <code>safe_encode(text)</code> encodes text to the output encoding<br />
* <code>safe_encode(bytes)</code> may decode the string and then reencode to a different encoding if input and output encodings are different<br />
<br />
The default input encoding (<code>incomding</code> parameter) is <code>sys.stdin.encoding or sys.getdefaultencoding()</code>:<br />
* Python 3: the locale encoding, or UTF-8 if sys.stdin is "mocked" (io.StringIO instance)<br />
* Python 2: the locale encoding, or ASCII if stdin is not a TTY or if sys.stdin is "mocked" (StringIO.StringIO instance)<br />
<br />
The default output encoding (<code>encoding</code> parameter) is UTF-8.<br />
<br />
It's safer to explicit the input encoding to not rely on the locale encoding and have the same behaviour even if sys.stdin is "mocked".<br />
<br />
Safe usage:<br />
* <code>safe_encode(data, incoming='utf-8')</code>: encode text to UTF-8 or returns data unchanged if it's already a bytes string (since the input and output encoding are UTF-8)<br />
<br />
Unsafe usage:<br />
* <code>safe_encode(data)</code><br />
<br />
Example:<br />
* <code>safe_encode(b'\xe9', incoming='latin-1')</code> returns <code>b'\xc3\xa9'</code>.<br />
<br />
By default, the encoder and the decoder are strict. You can specify a different error handler using the optional <code>errors</code> parameter. Example: <code>safe_encode(b'[\xff]', incoming='ascii', errors='ignore')</code> returns <code>b'[]'</code>.<br />
<br />
=== logging module and format exceptions ===<br />
<br />
The <code>exception_to_unicode(exc)</code> function of oslo_utils.encodeutils is the recommanded way to format an exception to Unicode. This function works on Python 2 and Python 3 and it should avoid mojibake is most cases.<br />
<br />
On Python 2, the logging module accepts bytes and text strings. On Python 3, it only accepts text strings. For example, logging.error(b'hello') logs <code>b'hello'</code> instead of <code>'hello'</code>.<br />
<br />
There is no clear rule for format exceptions yet. There are different choices depending on the project:<br />
<br />
* <code>str(exc)</code>: native string, so use bytes on Python 2<br />
* <code>six.text_type(exc)</code>: always use Unicode. It may raise unicode error depending on the exception, be careful. Example of such error in python 2: <code>unicode(Exception("nonascii:\xe9"))</code>.<br />
* <code>six.u(str(exc))</code>: unsafe on Python 2 if str(exc) contains non-ASCII bytes, ex: <code>unicode(str(Exception("\xff")))</code><br />
* <code>LOG.exception(_LE("... %(exc)s ..."), {"exc": exc, ...})</code><br />
<br />
Since logging functions expect text strings on Python 3, logged exceptions should be formatted using <code>str(exc)</code>. Example: <code>LOG.debug(str(exc))</code>.<br />
<br />
=== HTTP ===<br />
<br />
The HTTP protocol is based on '''bytes''':<br />
<br />
* HTTP body contains '''bytes'''. For example, use io.BytesIO for a stream storing an HTTP body.<br />
* HTTPConnection.getresponse().read() returns '''bytes''' (in Python 3, '''str''' which is bytes in Python 2)<br />
* On Python 3, the http.client accepts text for HTTP headers: keys are encoded to ASCII and values to ISO 8859-1 (which is only a small subset of the Unicode charset)<br />
* It looks like Swift encodes internally HTTP headers to UTF-8 (directly using the UTF-8 encoding, not using a MIME encoding like =?UTF-8?Q?...?=. See the HTTP [RFC 2047 http://www.ietf.org/rfc/rfc2047.txt] and [http://stackoverflow.com/questions/4400678/http-header-should-use-what-character-encoding HTTP header should use what character encoding?]<br />
<br />
=== References to port Python 2 code to Python 3 ===<br />
* [http://python3porting.com/ Porting to Python 3 Book] by Lennart Regebro, especially the [http://python3porting.com/differences.html Language differences and workarounds].<br />
* [http://docs.python.org/dev/howto/pyporting.html HOWTO: Porting Python 2 Code to Python 3] by Brett Cannon<br />
* [https://wiki.python.org/moin/PortingPythonToPy3k Porting Python Code to 3.x]<br />
* [http://code.google.com/p/python-incompatibility/ python-incompatibility]: Demonstrates incompatibilities between Python versions.<br />
<br />
=== Common pitfalls ===<br />
<br />
==== What is a string ? ====<br />
You should definitely not talk about "strings" in your commit logs/reviews. In Python 2, a 'string' is bytes; in Python 3, it's a Unicode text string. The following code snippet may help in understanding the difference:<br />
<br />
Python 2:<br />
>>> type('foo')<br />
<type 'str'><br />
>>> type(u'foo')<br />
<type 'unicode'><br />
>>> type(b'foo')<br />
<type 'str'><br />
>>> isinstance('foo', six.text_type)<br />
False<br />
>>> isinstance(u'foo', six.text_type)<br />
True<br />
>>> bytes is str<br />
True<br />
>>> b'foo'[0]<br />
'f'<br />
<br />
Python 3:<br />
>>> type('foo')<br />
<class 'str'><br />
>>> type(u'foo')<br />
<class 'str'><br />
>>> type(b'foo')<br />
<class 'bytes'><br />
>>> isinstance('foo', six.text_type)<br />
True<br />
>>> isinstance(b'foo', six.text_type)<br />
False<br />
>>> bytes is str<br />
False<br />
>>> b'foo'[0]<br />
102<br />
<br />
==== tox/testr error: db type could not be determined ====<br />
<br />
The "db type could not be determined" error comes from .testrepository/times.dbm used by testr.<br />
<br />
Workaround: "rm -rf .testrepository/" and then run "tox -e py34" before running "tox -e py27". You only have to do this once. The problem only occurs with "tox -e py34" when .testrepository/ was created by Python 2.<br />
<br />
== Python 3 Status of OpenStack projects ==<br />
<br />
=== Common Libraries (Oslo Projects) ===<br />
<br />
See [http://git.openstack.org/cgit/openstack/governance/tree/reference/programs.yaml programs.yaml] for the list of Common Libraries.<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! Comment<br />
|-<br />
| [https://pypi.python.org/pypi/cliff cliff] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.concurrency oslo.concurrency] || style="background-color: lightgreen;" | Yes ||<br />
|-/<br />
| oslo-incubator || style="background-color: lightgreen;" | Yes || py34 gate is voting<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.config oslo.config] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.context oslo.context] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.db oslo.db] || style="background-color: lightgreen;" | Yes ||<br />
PyMySQL driver is now used by default for MySQL. setup.cfg contains the Python 3 classifier.<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.i18n oslo.i18n] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.log oslo.log] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.messaging oslo.messaging] || style="background-color: lightgreen;" | Yes ||<br />
oslo.messaging is now fully compatible with Python 3. The old (and now removed) Qpid transport was not compatible, the AMQP driver was ported recently.<br />
<br />
The py34 check job is not more voting because of [//bugs.launchpad.net/ubuntu/+source/python3.4/+bug/1367907 ubuntu still uses Python 3.4.0 which has a severe bug].<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.middleware oslo.middleware] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.rootwrap oslo.rootwrap] || style="background-color: lightgreen;" | Yes ||<br />
oslo.rootwrap 2.4 works on Python 3, but eventlet tests hangs on Python 3. It's now fixed in the development version. oslo.rootwrap has a non-voting python34 check job.<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.serialization oslo.serialization] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslosphinx oslosphinx] || ? || The project only contains two short .py files, it looks to be Python 3 compatible. Is Sphinx Python 3 compatible?<br />
|-<br />
| [https://pypi.python.org/pypi/oslotest oslotest] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.versionedobjects oslo.versionedobjects] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.vmware oslo.vmware] || style="background-color: lightgreen;" | Yes || Supports Python 3 since oslo.vmware 0.13.0<br />
|-<br />
| [https://pypi.python.org/pypi/oslo.utils oslo.utils] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| pylockfile || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/stevedore stevedore] || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/taskflow taskflow] || style="background-color: lightgreen;" | Yes ||<br />
|}<br />
<br />
=== Development tools ===<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! Comment<br />
|-<br />
| [https://pypi.python.org/pypi/cookiecutter cookiecutter] || style="background-color: lightgreen;" | yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/hacking hacking] || style="background-color: lightgreen;" | yes || py33 gate is not voting<br />
|-<br />
| [https://pypi.python.org/pypi/pbr pbr] || style="background-color: lightgreen;" | yes ||<br />
|-<br />
| stackforge/python-jenkins || style="background-color: lightgreen;" | yes || py33 gate is voting<br />
|-<br />
| openstack-infra/jenkins-job-builder || style="background-color: orange;" | partial || https://review.openstack.org/172238<br />
|}<br />
<br />
=== OpenStack clients ===<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! CI tests running? !! Python 3 classifiers ? !! Blocked by !! Comment<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/keystonemiddleware keystonemiddleware] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || python-memcached || keystonemiddleware 1.6.1 supports Python 3.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-barbicanclient python-barbicanclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color:lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
<br />
| [https://pypi.python.org/pypi/python-ceilometerclient python-ceilometerclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color:lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-cinderclient python-cinderclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-fuelclient python-fuelclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-glanceclient python-glanceclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen" | Voting || style="background-color:lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-heatclient python-heatclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-ironicclient python-ironicclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-keystoneclient python-keystoneclient] || style="background-color: lightgreen;" | Yes || style="background-color:lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-manilaclient python-manilaclient] || style="background-color: lightgreen;" | Yes || style="background-color:lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-marconiclient python-marconiclient]|| style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-novaclient python-novaclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPII || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-neutronclient python-neutronclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-openstackclient python-openstackclient] || style="background-color: lightgreen" | Yes || style="background-color: lightgreen" | Voting || style="background-color: lightgreen" | On PyPI || || As of 0.9<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-saharaclient python-saharaclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-swiftclient python-swiftclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-tuskarclient python-tuskarclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen;" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-troveclient python-troveclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-watcherclient python-watcherclient] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Voting || style="background-color: lightgreen" | On PyPI || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-designateclient python-designateclient] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | Voting || style="background-color: red;" | No || ||<br />
<br />
|}<br />
<br />
=== OpenStack Libraries ===<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! CI tests running? !! Python 3 classifiers ? !! Comment<br />
|-<br />
| [https://pypi.python.org/pypi/django_openstack_auth django_openstack_auth] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes ||<br />
django_openstack_auth 2.0 is fully compatible with Python 3.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/glance_store glance_store] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes || glance_store 0.7.0 added the Python 3 support.<br />
|-<br />
<br />
| neutron-lib || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
<br />
<br />
| [https://pypi.python.org/pypi/os-brick os-brick] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes || os-brick 0.3.2 added Python 3 support.<br />
<br />
|-<br />
| [https://pypi.python.org/pypi/sqlalchemy-migrate sqlalchemy-migrate] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color:lightgreen;" | Yes ||<br />
|-<br />
| [https://pypi.python.org/pypi/taskflow taskflow] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | voting || style="background-color: lightgreen;" | Yes ||<br />
|-<br />
|}<br />
<br />
=== Dependencies ===<br />
<br />
There are two ways to express dependencies that should differ between Python 2.x and 3.x. We currently support using multiple requirements files, and will shortly be supporting and recommending the use of environment markers. Recent releases of all the tools in our ecosystem are needed for environment markers.<br />
<br />
==== requirements-py3.txt ====<br />
<br />
This approach generates a different requirements list depending on what Python version is running when the egg info is created (which goes into wheels and sdists). As a consequence this can't work with tox, publishing sdists to PyPI, or wheels. It is however useful for anything installing from git. To use it, create two requirements files:<br />
<br />
* requirements-py2.txt: all dependencies for Python 2 (not only dependencies specific to Python 2)<br />
* requirements-py3.txt: all dependencies for Python 3 (not only dependencies specific to Python 3)<br />
* (same for test-requirements.txt)<br />
<br />
You have to edit tox.ini to specify the right requirements file. Extract of a tox.ini file:<br />
<br />
<pre><br />
...<br />
[testenv:py33]<br />
deps = -r{toxinidir}/requirements-py3.txt<br />
-r{toxinidir}/test-requirements-py3.txt<br />
...<br />
</pre><br />
<br />
==== Environment markers ====<br />
<br />
Environment markers provide a mini-language to express when a dependency is relevant. We hope the next release of pbr will support them. Recent pip, setuptools and wheel versions do support them, but until pbr exports the requirements metadata with them intact and structured correctly for setuptools, we can't use them anywhere.<br />
<br />
* PEP 0345 -- Metadata for Python Software Packages 1.2 (accepted): [https://www.python.org/dev/peps/pep-0345/#environment-markers Environment markers]<br />
* PEP 0426 -- Metadata for Python Software Packages 2.0 (draft): [https://www.python.org/dev/peps/pep-0426/#environment-markers Environment markers]<br />
<br />
When placed in a requirements.txt file, the markers are interpreted directly by pip in `pip install -r requirements.txt`, and indirectly via setuptools when installing an sdist or wheel (including `pip install .`. For instance:<br />
<pre><br />
six<br />
futures; python_version < '3.2'<br />
</pre><br />
<br />
See also:<br />
* [https://review.openstack.org/#/c/184328/ oslo.db: Refactor deps to use extras and env markers] (require pip 7, not released yet)<br />
* pip: [https://github.com/pypa/pip/pull/1472 Fix issue #1433: parse requirements in markers #1472]<br />
* setuptools: pkg_resources doesn't understand environment markers: [https://bitbucket.org/pypa/wheel/issue/139/wheel-should-support-pep-426-environment pkg_resources.parse_requirements() raises ValueError]<br />
* pbr: [https://review.openstack.org/#/c/181795/ Teach pbr to read extras and env markers], [https://review.openstack.org/#/c/165015/ Handle PEP426 markers] (abandoned)<br />
* wheel: [https://bitbucket.org/pypa/wheel/issue/139/wheel-should-support-pep-426-environment wheel should support PEP 426 environment markers] (closed), wheel supports environment markers in extra requirements<br />
* tox: [https://bitbucket.org/hpk42/tox/issue/236/tox-must-create-the-source-distribution tox must create the source distribution with the Python of the virtual environment], [https://bitbucket.org/hpk42/tox/pull-request/142/issue-236-subcommand_test-rebuilds-sdist/ Issue #236: subcommand_test() rebuilds sdist with venv python] (declined)<br />
<br />
Oslo Messaging issue:<br />
* futures is not needed on Python 3, since concurrent.futures is now part of the Pyhon stdlib since Python 3.2<br />
* [https://review.openstack.org/#/c/172135/ futures was added to requirements-py3.txt] because tox creates the source tarball using Python 2 which reads requirements.txt<br />
* The correct fix would be to use environment markers on futures<br />
<br />
==== Dependencies status ====<br />
<br />
[https://caniusepython3.com/check/4fd5dda2-b1f1-4db4-a636-67cd3276cb6a Porting status] for [https://github.com/openstack/requirements/blob/master/global-requirements.txt global-requirement.txt].<br />
<br />
{|class="wikitable sortable"<br />
|-<br />
! Project !! Python 3 compatibility !! CI tests running? !! Python 3 classifiers ? !! Blocked by !! Comment<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/boto boto] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || || See https://github.com/boto/boto3 (experimental) <- This seems dead, and https://github.com/boto/boto works with Python 3.x (since 2.32).<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/django-compressor django-compressor] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || || Requirements upgraded: https://review.openstack.org/94357<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/dnspython dnspython] || style="background-color:lightgreen;" | Yes || N/A|| style="background-color: lightgreen;" | Yes || || Must use the [https://pypi.python.org/pypi/dnspython3/ Python 3 version], see https://github.com/rthalley/dnspython/issues/60<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/ecdsa ecdsa] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || ||Py3 support merge before the 0.10 release (see https://github.com/warner/python-ecdsa/commits/master)<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/eventlet eventlet] || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || || eventlet 0.17.3 now fully support Python 3<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/jsonrpclib jsonrpclib] || style="background-color:red;" | No || N/A || style="background-color: red;" | No || || The project seems dead :(<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/libvirt-python libvirt-python] || style="background-color: lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | Yes || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/mysql-python MySQL-Python] || style="background-color:orange;" | No, but mysqlclient or PyMySQL are compatible || N/A || style="background-color: orange;" | No || ||<br />
Patches:<br />
* [https://review.openstack.org/#/c/179745/ Add mysqlclient dependency]<br />
<br />
MySQL-Python: [https://github.com/farcepest/MySQLdb1/pulls 2 pending pull requests for Python 3].<br />
<br />
INADA Naoki, the maintainer of PyMySQL, wrote [https://pypi.python.org/pypi/mysqlclient mysqlclient]: fork of MySQL-Python using libmysqlclient.so which is Python 3 compatible. He recommends to use mysqlclient instead of MySQL-python even on Python 2. mysqlclient fixes some bugs, build issues and it support Python 3. For example: support MariaDB's libmysqlclient.so, support microsecond in TIME column.<br />
<br />
PyMySQL is compatible with Python 3: see [https://wiki.openstack.org/wiki/PyMySQL_evaluation PyMySQL evaluation] discussion to eventually replace mysql-python with PyMySQL in OpenStack.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/netifaces netifaces] || style="background-color:lightgreen;" | Yes || N/A|| style="background-color: lightgreen;" | Yes || || Patch sent by Victor Stinner (in private): [https://bitbucket.org/haypo/misc/src/tip/openstack/netifaces_python3.patch netifaces_python3.patch], Debian has patches too. Python 3 support as of 0.10.4. Pushed to requirements: https://review.openstack.org/94358 .<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/nose-exclude nose-exclude] || style="background-color: lightgreen;" | Yes || N/A || style="background-color: red;" | No || || Python 3 is supported since nose-exclude 0.4.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/nosehtmloutput nosehtmloutput] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No ||<br />
* nose-exclude (tests only)<br />
* openstack.nose-plugin<br />
||<br />
* https://bugs.launchpad.net/ubuntu/+source/python-nosehtmloutput/+bug/1287247<br />
* https://review.openstack.org/#/c/80956/<br />
|-<br />
| [https://pypi.python.org/pypi/nosexcover nosexcover] || style="background-color:lightgreen;" | No || N/A || style="background-color: lightgreen;" | On PyPI || || Python 3 support since 1.0.9<br />
|-<br />
| [https://pypi.python.org/pypi/openstack.nose-plugin openstack.nose-plugin] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/pam pam] || style="background-color:orange;" | No for pam, Yes for simplepam || NA || style="background-color: red;" | No || || The fork [https://pypi.python.org/pypi/simplepam simplepam] works on Python 2 and 3<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/paramiko paramiko] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: lightgreen;" | On PyPI || || Requirements upgraded: https://review.openstack.org/#/c/81132/<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/paste paste] || style="background-color:lightgreen;" | Yes || style="background-color: lightgrey;" | N/A || style="background-color: lightgreen;" | Yes || || Compatible with Python 3 since Paste 2.0<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/pycadf pycadf] || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | Yes || ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-ldap python-ldap] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || || The project seems dead. See [https://pypi.python.org/pypi/ldap3 ldap3] which is Python 3 compatible (license: LGPL, one of the optional deps is BSD-4-Clause).<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/python-memcached python-memcached] || style="background-color:lightgreen;" | Yes || style="background-color:lightgreen;" | N/A || style="background-color:lightgreen;" | Yes || ||<br />
python-memcached 1.56 is compatible with Python 3, but there are still some bugs: [https://github.com/linsomniac/python-memcached/pull/73 More Python 3 fixes] (not part of python-memcached 1.57). These bugs impact running keystonemiddleware tests when the memcached server is not running. It can also impact a setup with multiple memcached servers.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/qpid-python qpid-python] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || || Required if using oslo.messaging's qpid backend. That is the old pure python amqp 0-10 client library. That only speaks 0-10 and works with qpidd broker. It is used by the impl_qpid.py driver in oslo.messaging. That client is legacy - it isn't being ported to use AMQP 1.0.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/pyngus pyngus] || style="background-color: lightgreen;" | Yes || style="background-color: lightgray;" | N/A || style="background-color: red;" | No || ||<br />
pyngus 2.0 supports Python 3.<br />
<br />
pyngus is required if using oslo.messaging's AMQP 1.0 driver. pyngus is a wrapper for proton and proton has not been ported to python 3 yet: see [https://issues.apache.org/jira/browse/PROTON-490 Proton issue #490].<br />
<br />
[https://pypi.python.org/pypi/python-qpid-proton Proton] is a C library with various bindings in other languages. The language bindings are auto generated via the SWIG tool, plus a the python wrapper bits. All the python stuff is found under proton-c/bindings/python in the [https://git-wip-us.apache.org/repos/asf/qpid-proton.git git tree]. The first bit of work is to refactor the SWIG file cproton.i to work for both Python 2 and 3.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/rtslib-fb rtslib-fb] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/Routes Routes] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || || Routes 2.2 works Python 2 and 3 using a single code base.<br />
|-<br />
| [https://pypi.python.org/pypi/sphinxcontrib-docbookrestapi sphinxcontrib-docbookrestapi] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | Yes || style="background-color: orange;" | In the Git repo, not on PyPI || ||<br />
|-<br />
| [https://pypi.python.org/pypi/sphinxcontrib-httpdomain sphinxcontrib-httpdomain] || style="background-color:lightgreen;" | Yes || N/A || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/sphinxcontrib-pecanwsme sphinxcontrib-pecanwsme] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/thrift thrift] || style="background-color:red;" | No || style="background-color: red;" | No || style="background-color: red;" | No || ||<br />
|-<br />
| [https://pypi.python.org/pypi/websockify websockify] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | N/A || style="background-color: lightgreen;" | Yes || || python3 works with the 0.7.0 version released on Jul 23, 2015<br />
|-<br />
<br />
|}<br />
<br />
=== OpenStack applications (tc-approved) ===<br />
<br />
OpenStack applications [http://governance.openstack.org/reference/tags/tc-approved-release.html approved by the OpenStack Technical Committee].<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Project !! Unit tests pass on Python 3 !! py34 gate !! Comments<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/ceilometer ceilometer] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/cinder cinder] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
[https://blueprints.launchpad.net/cinder/+spec/cinder-python3 cinder-python3] blueprint (written by Victor Stinner) has been accepted for Liberty. Patches: [https://review.openstack.org/#/q/project:openstack/cinder+topic:bp/cinder-python3,n,z bp/cinder-python3 topic]. Note: Commit message must use "Partial-Implements: blueprint cinder-python3" to be linked to the blueprint. Kendall Nelson, Ivan Kolodyazhny (core) and Eric Harney (core) prefer this syntax: see [https://review.openstack.org/#/c/229991/2//COMMIT_MSG COMMIT_MSG].<br />
|-<br />
<br />
<br />
| [https://pypi.python.org/pypi/glance glance] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Victor Stinner is working on porting Glance to Python3. Patches: [https://review.openstack.org/#/q/status:open+project:openstack/glance+branch:master+topic:py3,n,z Patches for glance (topic: py3)].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/ironic ironic] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
[http://lists.openstack.org/pipermail/openstack-dev/2015-May/064049.html Python 3.4 unit tests are now being run for openstack/ironic. The unit tests are a voting job.]<br />
Thanks to Victor Sergeyev for all of his work to update the Ironic code to make it pass the unit tests using Python 3.4: [https://review.openstack.org/#/c/156192/ Run tests in py34 environment]<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/heat heat] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Sirushti Murugesan wrote and implemented the spec [http://specs.openstack.org/openstack/heat-specs/specs/liberty/heat-python34-support.html Python34 Support] (which was accepted for Liberty). Mitaka version will fully support Python 3. Great job Sirushti Murugesan who did almost all the work!<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/horizon horizon] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
George Peristerakis wrote [https://blueprints.launchpad.net/horizon/+spec/porting-python3 Make Horizon python3.4 compatible] in May 2015, the blueprint was approved. Patches: [https://review.openstack.org/#/q/topic:bp/porting-python3+project:openstack/horizon,n,z bp/porting-python3 topic].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/neutron neutron] || style="background-color:lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
[https://review.openstack.org/#/c/172962/ Porting to Python 3] spec (by Cyril Roelandt) accepted for Liberty, port in progress. [https://review.openstack.org/#/q/project:openstack/neutron+branch:master+topic:bp/neutron-python3,n,z Patches of the blueprint neutron-python3]<br />
|-<br />
<br />
| neutron-lbaas || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Patches: [https://review.openstack.org/#/q/topic:bp/neutron-python3 topic:bp/neutron-python3].<br />
|-<br />
<br />
| neutron-fwaas || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| neutron-vpnaas || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org//pypi/sahara sahara] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/keystone keystone] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
The move to pyldap and new ldappool were major hurdles solved in Newton. Great work by the Keystone team to get the last things through the gate in Newton.<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/nova nova] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
[http://specs.openstack.org/openstack/nova-specs/specs/liberty/approved/adding-python34-support-to-nova.html Adding Python 3.4 support to Nova] spec (by Victor Stinner) accepted for Liberty. Port in progress.<br />
<br />
Patches:<br />
* [https://review.openstack.org/#/q/project:openstack/nova+branch:master+topic:bp/nova-python3,n,z master (bp/nova-python3)].<br />
* dims: [https://review.openstack.org/#/c/261045/ python3: byte/string conversions and enable more tests] (abandonned after 100 revisions)<br />
* dims: [https://review.openstack.org/#/c/262083/ python3: Port more code to python3] (abandonned after 45 revisions)<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/trove trove] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
Update 2016-05-02: 115 tests/398.<br />
<br />
Victor Stinner proposed the [https://blueprints.launchpad.net/trove/+spec/trove-python3 trove-python3 blueprint] for Mitaka.<br />
<br />
From Victor (3/17/2016): "I propose to discuss Python 3 before the summit. For example, prepare a concrete plan to port Trove to Python 3, list technical issues like MySQL-Python, etc."<br />
<br />
Patches: [https://review.openstack.org/#/q/topic:bp/trove-python3,n,z search for the bp/trove-python3 topic].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/swift swift] || style="background-color: red;" | blocked || style="background-color: lightgreen;" | voting ||<br />
BLOCKED: Swift developers are not reviewing Python 3 patches.<br />
<br />
[http://lists.openstack.org/pipermail/openstack-dev/2015-October/078058.html Plan to add Python 3 support to Swift]. Patches: [https://review.openstack.org/#/q/project:openstack/swift+branch:master+topic:py3,n,z Patches with the topic py3]<br />
<br />
Python 3 unit tests require liberasurecode >= 1.0.9 and PyEClib >= 1.0.9. To install liberasurecode (in /usr):<br />
<br />
git clone https://bitbucket.org/tsg-/liberasurecode/<br />
cd liberasurecode<br />
/autogen.sh && /configure --prefix=/usr && make && sudo make install<br />
<br />
liberasurecode >= 1.0.9 is available in Ubuntu Precise, Ubuntu Trusty, Fedora 22, Fedora 23 and CentoOS 7.<br />
|-<br />
<br />
|}<br />
<br />
=== Other OpenStack Applications and Projects ===<br />
<br />
List of all OpenStack projects: [http://git.openstack.org/cgit/openstack/governance/tree/reference/projects.yaml projects.yaml].<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Project !! Unit tests pass on Python 3 !! py34 gate !! Comments<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/aodh aodh] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/cue cue] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Patches: [https://review.openstack.org/#/q/status:open+project:openstack/cue+branch:master+topic:py3,n,z search for topic py3].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/congress congress] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Random Stacker wrote a [https://blueprints.launchpad.net/congress/+spec/support-python3 support-python3 blueprint]. Patches: [https://review.openstack.org/#/q/project:openstack/congress+branch:master+topic:bp/support-python3,n,z search for the topic bp/support-python3].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/designate designate] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Pradeep Kumar Singh proposed the [https://blueprints.launchpad.net/designate/+spec/designate-py3 blueprint designate-py3] which was accepted for Liberty. Patches: [https://review.openstack.org/#/q/status:open+project:openstack/designate+branch:master+topic:bp/designate-py3,n,z topic:bp/designate-py3].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/gnocchi gnocchi] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/magnum magnum] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://github.com/openstack/manila manila] || style="background-color: lightgreen;" | Yes but... || style="background-color: lightgreen;" | voting ||<br />
Valeriy Ponomaryov wrote the [https://blueprints.launchpad.net/manila/+spec/py3-compatibility py3-compatibility blueprint].<br />
<br />
SSL tests are skipped because of the bug [https://bugs.launchpad.net/manila/+bug/1482633 requests to SSL wrapped sockets hang while reading using py3].<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Octavia octavia] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/rally rally] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting || A big thank to Andrey Kurilin for a lot of work in this direction<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Searchlight searchlight] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Solum solum] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
Victor Stinner proposed the [https://blueprints.launchpad.net/solum/+spec/solum-python3 blueprint solum-python3] which was approved. Patches: [https://review.openstack.org/#/q/status:open+topic:bp/solum-python3,n,z search for bp/solum-python3 topic] (open reviews).<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Zaqar zaqar] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://wiki.openstack.org/wiki/Watcher watcher] || style="background-color: lightgreen;" | Yes || style="background-color: lightgreen;" | voting ||<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/barbican barbican] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting || Pradeep Kumar Singh proposed the blueprint [https://blueprints.launchpad.net/barbican/+spec/barbican-py3 barbican-py3] for Liberty.<br />
<br />
Patches: [https://review.openstack.org/#/q/status:open+project:openstack/barbican+branch:master+topic:bp/barbican-py3,n,z search for the bp/barbican-py3 topic].<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/mistral mistral] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
Update 2015-10-05: Renat Akhmerov wrote "Currently, we have 70-80 tests that fail on Python 3 which is the way better than it was a few weeks ago (it used to be ~500). (...) we're actively working on fixing all the tests for Python 3".<br />
|-<br />
<br />
| [https://pypi.python.org/pypi/murano murano] || style="background-color: orange;" | work in progress || style="background-color: lightgreen;" | voting ||<br />
Blueprint: [https://blueprints.launchpad.net/murano/+spec/murano-python-3-support murano-python-3-support].<br />
<br />
python-muranoclient and murano-dashboard fully support Python 3 and have jobs voting. murano and murano-agent are a work in progress, and have their jobs non-voting.<br />
<br />
Patches: [https://review.openstack.org/#/q/project:openstack/murano+topic:py3 topic:py3].<br />
<br />
Many unit tests fail with the same error in YAQL, see YAQL bug: [https://bugs.launchpad.net/yaql/+bug/1570930 Need a new release to get full Python 3 support].<br />
|-<br />
<br />
|-<br />
|}<br />
<br />
Unsorted projects:<br />
* [https://wiki.openstack.org/wiki/App-Catalog App Catalog]<br />
* Chef OpenStack (Ruby)<br />
* [https://github.com/openstack/kolla/ Kolla]: ~2100 lines of Python, but not "tox -e py27" target<br />
* OpenStack Ansible (Python): Ansible playbooks and roles for deployment<br />
* Puppet OpenStack (Ruby)<br />
* TripleO<br />
<br />
=== Enable Python 3 in DevStack ===<br />
<br />
* Fedora::<br />
<br />
sudo dnf install python3-devel<br />
sudo python3 -m pip install python-memcached # needed by keystonemiddleware<br />
<br />
* localrc: add the following lines<br />
<br />
USE_PYTHON3=True<br />
PYTHON3_VERSION=3.4<br />
<br />
=== Functional and Integration Tests ===<br />
<br />
Doug Hellmann wrote a cross-project specification to run integration tests on Python 3: [http://specs.openstack.org/openstack/openstack-specs/specs/enable-python-3-int-func-tests.html Enabling Python 3 for Application Integration Tests] (spec approved for Liberty).<br />
<br />
Patch for DevStack: [https://review.openstack.org/#/c/181165/ Enable optional Python 3 support].<br />
<br />
Projects wanting to run their existing functional test suite against their services on Python 3 should:-<br />
* Add the Python3.4 trove classifier to the setup.cfg configuration file of the respective service.<br />
* set USE_PYTHON3=True in Devstack's localrc config file before running stack.sh after [https://review.openstack.org/#/c/181165/ the DevStack change] is merged or cherry-pick until then.<br />
* set basepython = python3.4 in tox for the necessary functional/integration tests environment.<br />
<br />
Then run tox -e<your functional test suite name>. Example:- tox -efunctional to run the functional the tests of a certain project.<br />
<br />
Once the functional test suite is reliably passing against the service in a python 3.4 env, the trove classifiers must be updated along with a new gate job being added to the project.<br />
<br />
== Status of Python 3 in Linux distributions ==<br />
<br />
* ArchLinux already [https://www.archlinux.org/news/python-is-now-python-3 switched to Python 3 by default] in 2011<br />
* Ubuntu wants to remove Python 2 from the default installation for Ubuntu 16.04 LTS: see [https://wiki.ubuntu.com/Python (Python) Plans for 16.04].<br />
* Fedora schedules the switch in Fedora 23 (october 2015): [https://fedoraproject.org/wiki/Changes/Python_3_as_Default Python 3 as the Default Implementation]<br />
* RHEL: [https://www.softwarecollections.org/en/scls/rhscl/python33/ Python 3.3] and [https://www.softwarecollections.org/en/scls/rhscl/rh-python34/ Python 3.4] are available on RHEL6 and RHEL7 using SCL.<br />
* CentOS: [https://www.softwarecollections.org/en/scls/rhscl/python33/ Python 3.3] and [https://www.softwarecollections.org/en/scls/rhscl/rh-python34/ Python 3.4] are available on CentOS 6 and 7 using SCL (no Red Hat subscription needed, CentOS has its own flavor of SCL)<br />
* In Debian, the plan is to deprecate Python 2 in Stretch (aka: Debian 9, the next Stable Debian after Jessie) and to completely remove Python 2 for the Buster release of Debian (aka: Debian 10, to be release in approximatively 2019).<br />
<br />
== Reports at OpenStack Summits ==<br />
<br />
* Mitaka Summit<br />
** Cross-project session: Python 3 was proposed, https://etherpad.openstack.org/p/mitaka-cross-project-session-planning<br />
* Liberty Summit<br />
** Cross-project session on enabling app integration testing: https://etherpad.openstack.org/p/liberty-cross-project-python3<br />
* Kilo Summit<br />
** Doug Hellmann: "Moving our applications to Python 3" cross-project session<br />
** Victor Stinner: "Port nova to Python 3", https://etherpad.openstack.org/p/liberty-nova-summit-ideas<br />
* Juno summit notes: https://etherpad.openstack.org/p/juno-cross-project-future-of-python (Oslo) and https://etherpad.openstack.org/p/juno_swift_python3 (Swift)<br />
* Icehouse summit notes: https://etherpad.openstack.org/p/IcehousePypyPy3<br />
* Havana summit notes: https://etherpad.openstack.org/p/havana-python3<br />
<br />
== Articles ==<br />
<br />
* [http://blogs.rdoproject.org/7894/status-of-python-3-in-openstack-mitaka Status of Python 3 in OpenStack Mitaka] (Victor Stinner, March 2016)<br />
* [http://techs.enovance.com/7807/python-3-status-openstack-liberty Python 3 Status in OpenStack Liberty] (Cyril Roelandt and Victor Stinner, September 2015)<br />
* [http://techs.enovance.com/6722/status-of-the-openstack-port-to-python-3-2 Status of the OpenStack port to Python 3] (Cyril Roelandt, February 2014)<br />
* [http://techs.enovance.com/6521/openstack_python3 Why should OpenStack move to Python 3 right now?] (Victor Stinner, December 2013)<br />
<br />
== Pycon Montreal 2014: Sprint Port OpenStack to Python 3 ==<br />
<br />
Enovance organized a sprint to Port OpenStack to Python 3 during 4 days: between April, 14 (Monday) and April, 17 (Thursday) 2014. See the page [[Python3/SprintPycon2014]].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=125672Meetings/KeystoneMeeting2016-05-22T04:06:05Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, crinkle, claudiub, davechen, david8hu, dolphm, dstanek, edmondsw, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, jorge_munoz, knikolla, lbragstad, lhcheng, marekd, MaxPC, morgan, nkinder, notmorgan, raildo, rodrigods, rderose, roxanaghe, samleon, samueldmq, shaleh, stevemar, tjcocozz, tsymanczyk, topol, vivekd, wanghong, xek<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b>2016-05-25</b><br />
* Meeting Agenda Moving to Etherpad? <code>notmorgan</code><br />
** https://etherpad.openstack.org/p/keystone-weekly-meeting<br />
* Keystone Core Sec updates <code>notmorgan</code><br />
** Who is active and participating. This should be a team of no more than ~5<br />
* Reviews! <code>notmorgan</code><br />
** We need more reviews ESPECIALLY from cores.<br />
* Creating new versions of keystone component drivers (e.g. V8, V9 etc.) <code>henry-nash</code><br />
** Do we carry on as we have before?<br />
** Question has been raised as to whether taking a copy of the sql driver is necessary?<br />
** See the example: https://review.openstack.org/#/c/305315/<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
* Mark domain config options via API as stable <code>henry-nash</code><br />
** https://blueprints.launchpad.net/keystone/+spec/domain-config-as-stable<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://openstack-weekly-reports.lbragstad.com/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=125641Meetings/KeystoneMeeting2016-05-20T22:16:45Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, crinkle, claudiub, davechen, david8hu, dolphm, dstanek, edmondsw, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, jorge_munoz, knikolla, lbragstad, lhcheng, marekd, MaxPC, morgan, nkinder, notmorgan, raildo, rodrigods, rderose, roxanaghe, samleon, samueldmq, shaleh, stevemar, tjcocozz, tsymanczyk, topol, vivekd, wanghong, xek<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b>2016-05-25</b><br />
* Keystone Core Sec updates <code>notmorgan</code><br />
** Who is active and participating. This should be a team of no more than ~5<br />
* Reviews! <code>notmorgan</code><br />
** We need more reviews ESPECIALLY from cores.<br />
* Creating new versions of keystone component drivers (e.g. V8, V9 etc.) <code>henry-nash</code><br />
** Do we carry on as we have before?<br />
** Question has been raised as to whether taking a copy of the sql driver is necessary?<br />
** See the example: https://review.openstack.org/#/c/305315/<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
* Mark domain config options via API as stable <code>henry-nash</code><br />
** https://blueprints.launchpad.net/keystone/+spec/domain-config-as-stable<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://openstack-weekly-reports.lbragstad.com/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneNewtonSprint&diff=125427Sprints/KeystoneNewtonSprint2016-05-17T18:18:24Z<p>Morgan Fainberg: </p>
<hr />
<div>The Keystone team is having their Newton mid-cycle meetup in San Jose, CA, USA.<br />
<br />
* Where: Cisco Campus, San Jose, CA (TBD on specific address and building)<br />
* When: July 20-22 2016<br />
<br />
== Event Details ==<br />
* [https://docs.google.com/forms/d/1To2qx90Am4hcYdgaqTkRosfNOzxr26M0GiahhiWgAJU/viewform RSVP Form]<br />
* Etherpad: https://etherpad.openstack.org/p/keystone-newton-midcycle<br />
* Location<br />
** Cisco Campus, 170 W Tasman Dr, San Jose, CA 95134<br />
*** Specific Rooms/Building TBD<br />
** [https://www.google.com/maps/place/Cisco+Bldg+D,+170+W+Tasman+Dr,+San+Jose,+CA+95134/@37.4083511,-121.956273,17z/data=!3m1!4b1!4m5!3m4!1s0x808fc9af235bc7f5:0x502c319534361879!8m2!3d37.4083511!4d-121.954079 Google Maps]<br />
<br />
== Who Is Coming ==<br />
<br />
* [https://docs.google.com/spreadsheets/d/1qTupqEyYwXnNnO-sW0kRhh-I9hvpPHA7QAuewXnw6AA/edit?usp=sharing RSVP Form Results]<br />
<br />
== Travel ==<br />
<br />
* Options are typically flying into SFO, OAK, or SJC and then travelling to the office.<br />
<br />
== Hotels ==<br />
<br />
[https://www.google.com/maps/place/Courtyard+San+Jose+North%2FSilicon+Valley/@37.4106295,-121.9668618,15z/data=!4m15!1m9!2m8!1sHotels!3m6!1sHotels!2sCisco+Building+H,+250+W+Tasman+Dr,+San+Jose,+CA+95134!3s0x808fc9adfcd07613:0xaa3aaad96c1bbdfe!4m2!1d-121.958107!2d37.4106086!3m4!1s0x0:0xeb16e32f4d1b1028!8m2!3d37.4189041!4d-121.9540747 Hotels] near the Cisco Campus.<br />
<br />
== General Help and Visas ==<br />
<br />
* TBD</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=125422Meetings/KeystoneMeeting2016-05-17T18:07:21Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, crinkle, claudiub, davechen, david8hu, dolphm, dstanek, edmondsw, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, jorge_munoz, knikolla, lbragstad, lhcheng, marekd, MaxPC, morgan, nkinder, notmorgan, raildo, rodrigods, rderose, roxanaghe, samleon, samueldmq, shaleh, stevemar, tjcocozz, tsymanczyk, topol, vivekd, wanghong, xek<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b>2016-05-17</b><br />
* release update <code>stevemar</code><br />
** Current week: R20. We should be preparing for milestone 1<br />
** Next deadline: R18 == Newton-1 milestone and spec proposal freeze<br />
* midcycle update <code>notmorgan</code><br />
** details have been confirmed<br />
** [https://docs.google.com/forms/d/1To2qx90Am4hcYdgaqTkRosfNOzxr26M0GiahhiWgAJU/viewform?c=0&w=1 RSVP FORM]<br />
* Specify ID for Project or domain creation <code>amakarov</code>, <code>agrebennikov</code><br />
** Abandoned change: https://review.openstack.org/#/c/203852/<br />
* Service Token provides user permissions spec <br />
** Please read - https://review.openstack.org/#/c/317266/<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
* Mark domain config options via API as stable <code>henry-nash</code><br />
** https://blueprints.launchpad.net/keystone/+spec/domain-config-as-stable<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://openstack-weekly-reports.lbragstad.com/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=125420Meetings/KeystoneMeeting2016-05-17T18:01:57Z<p>Morgan Fainberg: /* Regular attendees */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, crinkle, claudiub, davechen, david8hu, dolphm, dstanek, edmondsw, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, jorge_munoz, knikolla, lbragstad, lhcheng, marekd, MaxPC, morgan, nkinder, notmorgan, raildo, rodrigods, rderose, roxanaghe, samleon, samueldmq, shaleh, stevemar, tjcocozz, tsymanczyk, topol, vivekd, wanghong, xek<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b>2016-05-17</b><br />
* release update <code>stevemar</code><br />
** Current week: R20. We should be preparing for milestone 1<br />
** Next deadline: R18 == Newton-1 milestone and spec proposal freeze<br />
* midcycle update <code>notmorgan</code><br />
** details have been confirmed<br />
* Specify ID for Project or domain creation <code>amakarov</code>, <code>agrebennikov</code><br />
** Abandoned change: https://review.openstack.org/#/c/203852/<br />
* Service Token provides user permissions spec <br />
** Please read - https://review.openstack.org/#/c/317266/<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
* Mark domain config options via API as stable <code>henry-nash</code><br />
** https://blueprints.launchpad.net/keystone/+spec/domain-config-as-stable<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://openstack-weekly-reports.lbragstad.com/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneNewtonSprint&diff=125411Sprints/KeystoneNewtonSprint2016-05-17T16:26:16Z<p>Morgan Fainberg: /* Event Details */</p>
<hr />
<div>The Keystone team is having their Newton mid-cycle meetup in San Jose, CA, USA.<br />
<br />
* Where: Cisco Campus, San Jose, CA (TBD on specific address and building)<br />
* When: July 20-22 2016<br />
<br />
== Event Details ==<br />
* [https://docs.google.com/forms/d/1To2qx90Am4hcYdgaqTkRosfNOzxr26M0GiahhiWgAJU/viewform RSVP Form]<br />
* Etherpad: https://etherpad.openstack.org/p/keystone-newton-midcycle<br />
* Location<br />
** Cisco Campus, 170 W Tasman Dr, San Jose, CA 95134<br />
*** Specific Rooms/Building TBD<br />
** [https://www.google.com/maps/place/Cisco+Bldg+D,+170+W+Tasman+Dr,+San+Jose,+CA+95134/@37.4083511,-121.956273,17z/data=!3m1!4b1!4m5!3m4!1s0x808fc9af235bc7f5:0x502c319534361879!8m2!3d37.4083511!4d-121.954079 Google Maps]<br />
<br />
== Travel ==<br />
<br />
* Options are typically flying into SFO, OAK, or SJC and then travelling to the office.<br />
<br />
== Hotels ==<br />
<br />
* TBD<br />
<br />
== General Help and Visas ==<br />
<br />
* TBD</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneNewtonSprint&diff=125410Sprints/KeystoneNewtonSprint2016-05-17T16:25:29Z<p>Morgan Fainberg: Created page with "The Keystone team is having their Newton mid-cycle meetup in San Jose, CA, USA. * Where: Cisco Campus, San Jose, CA (TBD on specific address and building) * When: July 20-22..."</p>
<hr />
<div>The Keystone team is having their Newton mid-cycle meetup in San Jose, CA, USA.<br />
<br />
* Where: Cisco Campus, San Jose, CA (TBD on specific address and building)<br />
* When: July 20-22 2016<br />
<br />
== Event Details ==<br />
* Etherpad: https://etherpad.openstack.org/p/keystone-newton-midcycle<br />
* Location<br />
** Cisco Campus, 170 W Tasman Dr, San Jose, CA 95134<br />
*** Specific Rooms/Building TBD<br />
** [https://www.google.com/maps/place/Cisco+Bldg+D,+170+W+Tasman+Dr,+San+Jose,+CA+95134/@37.4083511,-121.956273,17z/data=!3m1!4b1!4m5!3m4!1s0x808fc9af235bc7f5:0x502c319534361879!8m2!3d37.4083511!4d-121.954079 Google Maps]<br />
<br />
== Travel ==<br />
<br />
* Options are typically flying into SFO, OAK, or SJC and then travelling to the office.<br />
<br />
== Hotels ==<br />
<br />
* TBD<br />
<br />
== General Help and Visas ==<br />
<br />
* TBD</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints&diff=125409Sprints2016-05-17T16:18:09Z<p>Morgan Fainberg: /* Future sprints for Newton */</p>
<hr />
<div>For the list of virtual sprints, please visit the [https://wiki.openstack.org/wiki/VirtualSprints Virtual Sprints] page.<br />
<br />
=== Newton sprints ===<br />
==== Future sprints for Newton ====<br />
Here is a chronological list of future sprints. Please keep the list ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| 16th May, 2016<br />
| Manchester, UK<br />
| StoryBoard Sprint<br />
| [https://etherpad.openstack.org/p/StoryBoard_Newton_sprint StoryBoard Newton Sprint]<br />
|-<br />
| 15-17 June, 2016<br />
| Cambridge, MA, USA<br />
| Glance mid-cycle meetup<br />
| [https://etherpad.openstack.org/p/newton-glance-midcycle-meetup Live Wiki]<br />
|-<br />
| 12-14 July, 2016<br />
| Cisco, San Jose, CA, USA<br />
| Horizon mid-cycle meetup<br />
| [[Sprints/HorizonNewtonSprint]]<br />
|-<br />
| 19-22 July, 2016<br />
| Fort Collins, CO, USA<br />
| Cinder midcycle meetup<br />
| [https://etherpad.openstack.org/p/newton-cinder-midcycle Cinder Midcycle Etherpad]<br />
|-<br />
| 19-21 July 2016<br />
| Intel - Hillsboro, OR, USA<br />
| Nova Midcycle Meetup<br />
| [[Sprints/NovaNewtonSprint]]<br />
|-<br />
| 20-22 July 2016<br />
| Cisco - San Jose, CA, USA<br />
| Keystone Midcycle Meetup<br />
| [[Sprints/KeystoneNewtonSprint]]<br />
|}<br />
<br />
==== Here is a list of the previous sprints for Newton ====<br />
Here is a chronological list of past sprints.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
|}<br />
<br />
=== Mitaka sprints ===<br />
==== Here is a list of the previous sprints for Mitaka (2015/2016) ====<br />
Here is a chronological list of past sprints.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| January 11-12, 2016<br />
| Beijing, China<br />
| Senlin Midcycle Sprint<br />
| https://etherpad.openstack.org/p/senlin-mitaka-midcycle<br />
|-<br />
| January 11-13, 2016<br />
| San Antonio, TX<br />
| Barbican Midcycle Sprint<br />
| [[Sprints/BarbicanMitakaSprint]]<br />
|-<br />
| January 13-14, 2016<br />
| RTP, NC<br />
| Manila Midcycle Sprint<br />
| [[Sprints/ManilaMitakaSprint]]<br />
|-<br />
| January 12-15, 2016<br />
| San Antonio, TX [Co-located with Barbican]<br />
| Security Midcycle Sprint<br />
| [[Sprints/SecurityMitakaSprint]]<br />
|-<br />
| January 12-15, 2016<br />
| San Antonio, TX<br />
| LBaaS/FWaaS Midcycle Sprint<br />
| https://etherpad.openstack.org/p/lbaas-mitaka-midcycle<br />
|-<br />
| January 20-22, 2016<br />
| Seattle, WA<br />
| Kosmos Midcycle Sprint<br />
| [[Sprints/KosmosMitakaSprint]]<br />
|-<br />
| January 26-28, 2016<br />
| Bristol, UK<br />
| Nova Midcycle Sprint<br />
| [[Sprints/NovaMitakaSprint]]<br />
|-<br />
| January 26-28, 2016<br />
| San Jose, CA<br />
| Congress Midcycle Sprint<br />
| [[Sprints/CongressMitakaSprint]]<br />
|-<br />
| January 26-29, 2016<br />
| RTP, NC<br />
| Cinder Midcycle Sprint<br />
| [[Sprints/CinderMitakaSprint]]<br />
|-<br />
| January 27-29, 2016<br />
| Austin, TX<br />
| Keystone Midcycle Sprint<br />
| [[Sprints/KeystoneMitakaSprint]]<br />
|-<br />
| February 08-10, 2016<br />
| Galway, Ireland<br />
| Designate Midcycle Sprint<br />
| [[Sprints/DesignateMitakaSprint]]<br />
|-<br />
| February 09-11, 2016<br />
| Raleigh, NC<br />
| Trove Midcycle Sprint<br />
| [[Sprints/TroveMitakaSprint]]<br />
|-<br />
| February 09-10, 2016<br />
| Greenville, SC<br />
| Kolla Midcycle Sprint<br />
| [[Sprints/KollaMitakaSprint]]<br />
|-<br />
| February 15-16, 2016<br />
| Manchester, UK<br />
| Ops mid-cycle meetup<br />
| [[Operations/Meetups]]<br />
|-<br />
| February 17, 2016<br />
| Manchester, UK<br />
| Storyboard Midcycle Sprint/Meetup<br />
| https://etherpad.openstack.org/p/StoryBoard_Mitaka_Midcycle<br />
|-<br />
| February 17-18, 2016<br />
| Hayes, UK<br />
| Product WG Midcycle Sprint<br />
| [[Sprints/ProductMitakaSprint]]<br />
|-<br />
| February 18-19, 2016<br />
| Sunnyvale HPE<br />
| Magnum Midcycle Sprint<br />
| [[]]<br />
|-<br />
| February 22-25, 2016<br />
| Fort Collins, CO<br />
| Infra Midcycle Sprint<br />
| [[Sprints/InfraMitakaSprint]]<br />
|-<br />
| February 22-24, 2016<br />
| Cambridge, MA <br />
| QA Midcycle Code Sprint<br />
| [[QA/CodeSprintMitakaBoston]]<br />
|-<br />
| February 23-25, 2016<br />
| Hillsboro, OR<br />
| Horizon Midcycle Sprint<br />
| [[Sprints/HorizonMitakaSprint]]<br />
|-<br />
| February 23-26, 2016<br />
| Rochester, MN<br />
| Neutron Midcycle Sprint<br />
| https://etherpad.openstack.org/p/neutron-mitaka-midcycle<br />
|-<br />
| March 8-9, 2016<br />
| Austin, TX<br />
| DefCore Midcycle Sprint<br />
| [https://etherpad.openstack.org/p/DefCoreSpring2016MidCycle Etherpad]<br />
|-<br />
| March 14-16, 2016<br />
| Brno, Czech Republic<br />
| Neutron Upgrades Code Sprint<br />
| [https://etherpad.openstack.org/p/code-sprint-neutron-objects-brno Etherpad]<br />
|}<br />
<br />
=== Liberty sprints ===<br />
==== Here is a list of the previous sprints for Liberty (all in '''2015''') ====<br />
<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| June 24-26, 2015<br />
| Fort Collins, CO, USA<br />
| Neutron Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| June 30, July 1, July 2<br />
| Tel Aviv, Israel<br />
| Neutron QoS Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| July 15-17, 2015<br />
| Boston University, Boston, MA, USA<br />
| Keystone Midcycle Sprint<br />
| [[Sprints/KeystoneLibertySprint]]<br />
|-<br />
| July 15-17, 2015<br />
| Seattle, WA, USA<br />
| LBaaS Midcycle Sprint<br />
| [[https://etherpad.openstack.org/p/LBaaS-FWaaS-VPNaaS_Summer_Midcycle_meetup]]<br />
|-<br />
| July 21-23, 2015<br />
| IBM, Rochester MN, USA<br />
| Nova Midcycle Sprint<br />
| [[Sprints/NovaLibertySprint]]<br />
|-<br />
| July 21-23, 2015<br />
| HP, Fort Collins, Colorado, USA<br />
| Horizon Midcycle Sprint<br />
| [https://etherpad.openstack.org/p/horizon-liberty-midcycle Sprints/HorizonLibertySprint]<br />
|-<br />
| July 28-29, 2015<br />
| Cisco Systems, Inc., San Jose, California, USA<br />
| Kolla Midcycle Sprint<br />
| [[Sprints/KollaLibertySprint]]<br />
|-<br />
| July 28-30, 2015<br />
| Rackspace, Blacksburg, Virginia, USA<br />
| Glance Midcycle Meetup<br />
| [Liberty Glance Mid Cycle Meetup [https://etherpad.openstack.org/p/liberty-glance-mid-cycle-meetup]]<br />
|-<br />
| July 29-30, 2015<br />
| IBM, Austin, Texas, USA<br />
| DefCore Midcycle Meetup<br />
| [https://etherpad.openstack.org/p/DefCoreFlag.MidCycle Liberty DefCore Mid Cycle Meetup]<br />
|-<br />
| July 29-30, 2015<br />
| NetApp, RTP, NC, USA<br />
| Manila Midcycle Meetup<br />
| [https://etherpad.openstack.org/p/manila-liberty-midcycle-meetup Manila Midcycle Meetup]<br />
|-<br />
| August 4-7, 2015<br />
| HP, Fort Collins, Colorado, USA<br />
| Cinder Midcycle Sprint<br />
| [[Sprints/CinderLibertySprint]]<br />
|-<br />
| August 5-6, 2015<br />
| IBM Silicon Valley Lab, San Jose, CA, USA<br />
| Magnum Midcycle Sprint<br />
| [[Magnum/Midcycle]]<br />
|-<br />
| August 5-7, 2015<br />
| JHU Applied Physics Lab, Laurel, MD, USA<br />
| Barbican Midcycle Sprint<br />
| [[Sprints/BarbicanLibertySprint]]<br />
|-<br />
| August 6-7, 2015<br />
| VMware campus, Palo Alto, CA, USA<br />
| Congress Midcycle Sprint<br />
| [[Sprints/CongressLibertySprint]]<br />
|-<br />
| August 12 - 14, 2015<br />
| HP, Seattle, Washington, USA<br />
| Ironic Midcycle Sprint<br />
| [[Sprints/IronicLibertySprint]]<br />
|- <br />
| August 17-20, 2015<br />
| Rackspace, Austin, TX, USA<br />
| Designate Mid-cycle Meetup<br />
| [https://www.eventbrite.co.uk/e/openstack-designate-2015-summer-mid-cycle-meetup-tickets-17833181526 Eventbrite tickets]<br />
|- <br />
| August 18-19, 2015<br />
| Palo Alto, CA<br />
| Operator's Midcycle Sprint<br />
| [[Operations/Meetups]]<br />
|-<br />
| August 20-21, 2015<br />
| Cisco, San Jose, CA, USA<br />
| Product Working Group Midcycle<br />
| [[Sprints/Product_WGLibertySprint]]<br />
|- <br />
| August 26-28, 2015<br />
| HP, Sunnyvale, CA<br />
| Trove Midcycle Sprint<br />
| [[Sprints/TroveLibertySprint]]<br />
|-<br />
| September 1-4, 2015<br />
| HP, Seattle, Washington USA<br />
| Security Midcycle Sprint<br />
| [[Sprints/SecurityLibertySprint]]<br />
|-<br />
| September 14-16, 2015<br />
| HP, Fort Collins, Colorado USA<br />
| QA End of Cycle Code Sprint<br />
| [[QA/CodeSprintLibertyFortCollins]]<br />
|}<br />
<br />
=== Kilo sprints ===<br />
==== Here is a list of the previous sprints for Kilo (2014/2015) ====<br />
<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| December 8-10, 2014<br />
| Lehi, Utah, USA<br />
| Neutron<br />
| [[Sprints/NeutronKiloSprint]]<br />
|-<br />
| January 12 - 14, 2015<br />
| Santa Clara, CA, USA<br />
| Refstack<br />
| [https://etherpad.openstack.org/p/refstack-january-2015-midcycle Refstack Midcycle Meetup Etherpad]<br />
|-<br />
| January 19 - 21, 2015<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [[Sprints/KeystoneKiloSprint]]<br />
|-<br />
| January 19 - 22, 2015<br />
| San Jose, CA, USA<br />
| Designate<br />
| [[Sprints/DesignateKiloSprint]]<br />
|-<br />
| January 26 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Nova<br />
| [[Sprints/PaloAltoKiloSprint]]<br />
|-<br />
| January 27 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [https://etherpad.openstack.org/p/kilo-glance-mid-cycle-meetup Glance Midcycle Meetup Etherpad]<br />
|-<br />
| January 27 - 29, 2015<br />
| Austin, TX, USA<br />
| Cinder<br />
| [[Sprints/CinderKiloSprint]]<br />
|-<br />
| Feb 2 - 6, 2015<br />
| San Antonio, TX, USA<br />
| Neutron LBaaS<br />
| [https://etherpad.openstack.org/p/lbaas-kilo-meetup LBaaS Midcycle Meetup Etherpad]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Seattle, WA, USA<br />
| Trove<br />
| [[Sprints/TroveKiloSprint]]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Grenoble, France<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 11 - 13, 2015<br />
| San Francisco, CA, USA<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 16-18, 2015<br />
| Austin, TX, USA<br />
| Barbican<br />
| [[Sprints/BarbicanKiloSprint]]<br />
|-<br />
| Feb 18 - 20, 2015<br />
| Seattle, WA, USA<br />
| Deployment/TripleO<br />
| [[Sprints/DeploymentKiloSprint]], [https://etherpad.openstack.org/p/kilo-tripleo-midcycle-meetup Etherpad]<br />
|-<br />
| Feb 17-20, 2015 (Awaiting Confirmation)<br />
| San Francisco, CA, USA<br />
| OpenStack Security Group<br />
| [[Sprints/OSSGKiloSprint]]<br />
|-<br />
| Mar 2-3, 2015<br />
| San Francisco, CA, USA<br />
| Magnum (CaaS for OpenStack)<br />
| [[Magnum/Midcycle]]<br />
|-<br />
| Mar 9-10, 2015<br />
| Philadelphia, PA, USA<br />
| Operators Mid-Cycle<br />
| [[Operations/Meetups]]<br />
|-<br />
| March 25-27, 2015<br />
| New York, NY, USA<br />
| QA Code Sprint<br />
| [[QA/CodeSprintKiloNYC]]<br />
|-<br />
| April 13-15, 2015<br />
| Shanghai, PRC<br />
| Release Candidate Hackathon<br />
| [[PRC_Kilo_Hackathon|Kilo Hackathon in PRC]]<br />
|}<br />
<br />
<br />
=== Juno sprints ===<br />
==== Here is a list of the previous sprints for Juno (all in '''2014''') ====<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| July 2 - 4<br />
| Paris, France<br />
| Ceilometer/All projects<br />
| [[Sprints/ParisJuno2014]]<br />
|-<br />
| July 7 - 9<br />
| San Antonio, TX, USA<br />
| Barbican<br />
| TBD, [[Meetings/Barbican]]<br />
|-<br />
| July 9 - 11<br />
| Bloomington, MN, USA<br />
| Neutron<br />
| [https://etherpad.openstack.org/p/neutron-juno-mid-cycle-meeting]<br />
|-<br />
| July 9 - 11<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [http://dolphm.com/openstack-keystone-hackathon-for-juno/]<br />
|-<br />
| July 14 - 18<br />
| Darmstadt, Germany<br />
| QA & Infra<br />
| [[Qa_Infra_Meetup_2014]]<br />
|-<br />
| July 14 - 18<br />
| Seattle, USA<br />
| Security Group<br />
| [https://etherpad.openstack.org/p/ossg-juno-meetup]<br />
|-<br />
| July 21 - July 25<br />
| Raleigh, NC, USA<br />
| TripleO (& Heat)<br />
| [https://etherpad.openstack.org/p/juno-midcycle-meetup]<br />
|-<br />
| July 28 - Jul 30<br />
| Hillsboro, OR, USA<br />
| Nova & Ironic<br />
| [[Sprints/BeavertonJunoSprint]]<br />
|-<br />
| Aug 11 - Aug 15<br />
| Fort Collins, CO<br />
| Cinder<br />
| [[https://etherpad.openstack.org/p/CinderMidCycleMeetupAug2014]]<br />
|-<br />
| Aug 18 - Aug 20<br />
| Raleigh, NC, USA<br />
| Heat<br />
| [https://etherpad.openstack.org/p/heat-juno-midcycle-meetup]<br />
|-<br />
| Aug 20 - Aug 23<br />
| Cambridge, MA, USA<br />
| Trove<br />
| [[Trove/JunoMidCycleMeetup|Link]]<br />
|-<br />
| July 24 - July 25<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [[https://etherpad.openstack.org/p/glance-juno-mid-cycle-meeting]]<br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneMitakaSprint&diff=101397Sprints/KeystoneMitakaSprint2016-01-15T23:21:53Z<p>Morgan Fainberg: /* Registration */</p>
<hr />
<div>== Keystone Mitaka Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Time and Location ===<br />
When: January 27-29 (Wed-Fri) 9:00 AM to 5:pm<br />
<br />
Where: IBM Austin - Building 904, Executive Briefing Centre<br />
11501 Burnet Rd, Austin, TX 78758, USA<br />
<br />
=== Other Information ===<br />
Current Attendance Cap: 25<br />
<br />
[https://etherpad.openstack.org/p/keystone-mitaka-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information<br />
<br />
=== Registration ===<br />
<br />
'''<big style="text-decoration: blink;">If you plan on attending the keystone midcycle in austin, please add your name to the table below!</big>'''<br />
<br />
'''Note:''' Twitter handle is optional, but often we use twitter to let people know where we are, especially for evening food and/or drinks. Feel free to provide your twitter or just keep an eye out on those of us who have provided ours for where everyone is at the Meetup/when we're headed out for dinner, etc.<br />
<br />
'''Note:''' Lunches are likely to be provided, please mention any special dietary restrictions in the comments section of the table.<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! # !! Name !! IRC Nick !! Twitter (optional) !! Comment !! Email<br />
|-<br />
| 1 || Steve Martinelli || stevemar || [https://twitter.com/stevebot @stevebot] || staying at embassy suites || stevemar AT ca DOT ibm DOT com<br />
|-<br />
| 2 || Lance Bragstad || lbragstad || [https://twitter.com/LanceBragstad @LanceBragstad] || || lbragstad AT gmail DOT com<br />
|-<br />
| 3 || Joe Savak || jsavak || [https://twitter.com/joesavak @JoeSavak] || || jsavak AT gmail DOT com<br />
|-<br />
| 4 || Fernando Diaz || diazjf || <twitter> || lives in Austin || diazjf AT us DOT ibm DOT com<br />
|-<br />
| 5 || Dolph Mathews || dolphm || [https://twitter.com/dolphm @dolphm] || No comment. || dolph DOT mathews AT gmail DOT com<br />
|-<br />
| 6 || David Stanek || dstanek || [https://twitter.com/dstanek @dstanek] || I like trees || dstanek AT dstanek DOT com<br />
|-<br />
| 7 || Samuel de Medeiros Queiroz || samueldmq || <!-- twitter -->|| <!-- comment --> || samueldmq AT gmail DOT com<br />
|-<br />
| 8 || Brad Topol || topol || [https://twitter.com/bradtopol @bradtopol]|| Hoping to get fantastic BBQ, recommendations?|| btopol AT us DOT ibm DOT com<br />
|-<br />
| 9 || Karthik Baskaran || KarthikB || <!-- twitter -->|| lives in Austin || kbaskar AT us DOT ibm DOT com<br />
|-<br />
| 10 || Chris Casey || chris_19 || @cdcasey|| lives in Austin, Slab BBQ is close by and excellent || cdcasey AT us DOT ibm DOT com<br />
|-<br />
| 11 || Alexander Makarov || amakarov || <!-- twitter -->|| <!-- comment --> || amakarov AT mirantis DOT com<br />
|-<br />
| 12 || Sean Perry || shaleh || <!-- twitter -->|| <!-- comment --> || sean.perry AT hpe.com<br />
|-<br />
| 13 || Guang Yee || gyee || gyeeeeee || I want Phở! || guang.yee AT hpe.com<br />
|-<br />
| 14 || Roxana Gherle || <!-- irc --> || <!-- twitter -->|| <!-- comment --> || roxana.gherle AT hpe.com<br />
|-<br />
| 15 || Brant Knudson || bknudson || @blknud || <!-- comment --> || bknudson AT us.ibm.com<br />
|-<br />
| 16 || Tom Cocozzello || tjcocozz || [https://twitter.com/TomCocozzello @TomCocozzello]|| <!-- comment --> || tjcocozz AT us DOT ibm DOT com<br />
|-<br />
| 17 || Thomas Hsiao || <!-- irc --> || <!-- twitter -->|| <!-- comment --> || thomas.hsiao AT hpe.com<br />
|-<br />
| 18 || Ron De Rose || rderose || <!-- twitter -->|| <!-- comment --> || ronald DOT de DOT rose AT intel DOT com<br />
|-<br />
| 19 || Farhan Patwa || <!-- irc --> || <!-- twitter -->|| <!-- comment --> || farhan.patwa AT utsa.edu<br />
|-<br />
| 20 || Richard Goodwin || rgoodwin || @rgoodwin || <!-- comment --> || richard DOT goodwin AT rackspace DOT com<br />
|-<br />
| 21 || Henry Nash || henrynash || <!-- twitter -->|| Making the trip across the pond || henry.nash AT uk.ibm.com<br />
|-<br />
| 22 || Morgan Fainberg || notmorgan || @mdrnstm || <!-- comment --> || morgan.fainberg AT gmail.com<br />
|-<br />
| 23 || Lin Hua Cheng || lhcheng || @linhuacheng|| <!-- comment --> || os DOT lcheng AT gmail DOT com<br />
|-<br />
| 24 || Matt Edmonds || medmonds || <!-- twitter -->|| <!-- comment --> || edmondsw AT us.ibm.com<br />
|-<br />
| 25 || <<name>> || <<irc>> || <!-- twitter -->|| <!-- comment --> || <<email>><br />
|-<br />
| 26 || Sam Leong || sam || <!-- twitter -->|| <!-- comment --> || chio-fai-sam.leong AT hpe.com<br />
|-<br />
| 27 || Shawn Berger || slberger || <!-- twitter -->|| lives in Austin || slberger AT us.ibm.com<br />
|-<br />
| 28 || Nithya Renganathan || nithya || <!-- twitter -->|| lives in Austin || narengan AT us.ibm.com<br />
|-<br />
| || Contact stevemar@ca.ibm.com if you want to attend || no more || spaces || available! || (sorry!)<br />
|}<br />
<br />
=== Hotel List ===<br />
<br />
==== Home2 Suites by Hilton Austin North/Near The Domain ====<br />
* 2800 Esperanza Crossing, Austin, TX 78758, United States<br />
* 1-512-339-2400<br />
* ~$200/night<br />
* 0.3 mi to IBM, very walkable<br />
<br />
==== Hyatt Place Austin/Arboretum ====<br />
* 3612 Tudor Blvd, Austin, TX 78759, United States<br />
* +1 512-231-8491<br />
* ~$140/night<br />
* 3.0 mi to IBM, 5 minute drive<br />
<br />
==== Residence Inn Austin Northwest/Arboretum ====<br />
* 3713 Tudor Blvd, Austin, TX 78759, United States<br />
* 1-512-502-8200<br />
* ~$180/night<br />
* 3.0 mi to IBM, 5 minute drive<br />
<br />
==== Courtyard Austin Northwest/Arboretum ====<br />
* 9409 Stonelake Blvd, Austin, TX 78759, United States<br />
* 1-512-502-8100<br />
* ~$180/night<br />
* 3.0 mi to IBM, 5 minute drive<br />
<br />
==== Embassy Suites by Hilton Austin Arboretum ====<br />
* 9505 Stonelake Blvd, Austin, TX 78759, United States<br />
* 1-512-372-8771<br />
* ~$200/night<br />
* 3.0 mi to IBM, 5 minute drive</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=URLs&diff=98428URLs2015-12-01T16:43:53Z<p>Morgan Fainberg: /* Nova. */</p>
<hr />
<div><br />
= Proposal: =<br />
A production configuration of OpenStack should be able to run in HTTPD using SSL. The following URL scheme deconflicts the HTTP based applications so that the various pieces can be installed on a single port on a single machine using the https protocol.<br />
<br />
The URLS are descriptive of their functionality. Thus, the project names have been replaced with the names from the openstack.com website.<br />
<br />
== Components ==<br />
=== Horizon Web UI ===<br />
To keep the existing User experience, forward from / to /dashboard for browser clients.<br />
https://hostname/dashboard<br />
<br />
=== Keystone ===<br />
<br />
https://hostname/identity/v2.0<br />
<br />
https://hostname/identity/v3<br />
<br />
=== Glance ===<br />
https://hostname/image<br />
<br />
=== Nova. ===<br />
<br />
https://hostname/compute<br />
<br />
https://hostname/novnc<br />
<br />
=== Neutron ===<br />
https://hostname/network<br />
<br />
=== Swift ===<br />
There was an attempt to make Swift also fit into this scheme. However, Swift URLs fall into a scheme of their own, and won't likely be colocated with the admin pieces outside of development. Here they are for completeness.<br />
<br />
https://hostname/storage/account<br />
<br />
https://hostname/storage/object<br />
<br />
https://hostname/storage/container<br />
<br />
== Conclusion ==<br />
The pattern here should be clear enough to extend to integrating projects not listed above.</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=URLs&diff=98427URLs2015-12-01T16:43:30Z<p>Morgan Fainberg: /* Keystone */</p>
<hr />
<div><br />
= Proposal: =<br />
A production configuration of OpenStack should be able to run in HTTPD using SSL. The following URL scheme deconflicts the HTTP based applications so that the various pieces can be installed on a single port on a single machine using the https protocol.<br />
<br />
The URLS are descriptive of their functionality. Thus, the project names have been replaced with the names from the openstack.com website.<br />
<br />
== Components ==<br />
=== Horizon Web UI ===<br />
To keep the existing User experience, forward from / to /dashboard for browser clients.<br />
https://hostname/dashboard<br />
<br />
=== Keystone ===<br />
<br />
https://hostname/identity/v2.0<br />
<br />
https://hostname/identity/v3<br />
<br />
=== Glance ===<br />
https://hostname/image<br />
<br />
=== Nova. ===<br />
<br />
https://hostname/compute<br />
https://hostname/novnc<br />
<br />
=== Neutron ===<br />
https://hostname/network<br />
<br />
=== Swift ===<br />
There was an attempt to make Swift also fit into this scheme. However, Swift URLs fall into a scheme of their own, and won't likely be colocated with the admin pieces outside of development. Here they are for completeness.<br />
<br />
https://hostname/storage/account<br />
<br />
https://hostname/storage/object<br />
<br />
https://hostname/storage/container<br />
<br />
== Conclusion ==<br />
The pattern here should be clear enough to extend to integrating projects not listed above.</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=90805Meetings/KeystoneMeeting2015-09-22T18:15:55Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, tsymanczyk, topol, vivekd, wanghong, claudiub<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>2015-09-29</b><br />
** New PTL takes the reigns (<code>NOT morganfainberg</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=90782Meetings/KeystoneMeeting2015-09-22T14:33:08Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, tsymanczyk, topol, vivekd, wanghong, claudiub<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>2015-09-22</b><br />
** Review Open Bugs for RC1<br />
*** https://launchpad.net/keystone/+milestone/liberty-rc1<br />
** New PTL next week<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=90313Meetings/KeystoneMeeting2015-09-15T16:30:16Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, tsymanczyk, topol, vivekd, wanghong, claudiub<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>2015-09-15</b><br />
** Liberty Release Management Housekeeping (<code>morgan</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=86906Meetings/KeystoneMeeting2015-07-28T21:20:07Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>2015-08-04</b><br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=86453Meetings/KeystoneMeeting2015-07-21T19:52:44Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>2015/07/28</b><br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=84843Meetings/KeystoneMeeting2015-06-30T19:02:02Z<p>Morgan Fainberg: /* Agenda for next meeting */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>7/7</b><br />
** Start restricting "/" in project names in Liberty? (<code>htruta, rodrigods</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=84118Meetings/KeystoneMeeting2015-06-23T19:15:32Z<p>Morgan Fainberg: /* Review of Keystone Blueprints for No-Spec Requires Status */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>6/30</b><br />
** Keystone Weekly Bug Reports (see below)<br />
** Making devstack v3 friendly (jamielennox)<br />
** Progress on keystoneauth & other repos (?)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=84117Meetings/KeystoneMeeting2015-06-23T19:15:22Z<p>Morgan Fainberg: /* Agenda for next meeting */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity, authentication, authorization, and/or policy for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>6/30</b><br />
** Keystone Weekly Bug Reports (see below)<br />
** Making devstack v3 friendly (jamielennox)<br />
** Progress on keystoneauth & other repos (?)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
* Role descriptions: https://blueprints.launchpad.net/keystone/+spec/role-descriptions (<code>browne</code>)<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=82389Meetings/KeystoneMeeting2015-06-02T19:14:00Z<p>Morgan Fainberg: /* Agenda for next meeting */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>6/9</b><br />
<br />
<br />
==== Test Scripts ====<br />
* posting upstream test scripts on etherpad<br />
* example for HMT: https://etherpad.openstack.org/p/hierarchical-projects<br />
* Need org structure<br />
<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
* Role descriptions: https://blueprints.launchpad.net/keystone/+spec/role-descriptions (<code>browne</code>)<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=82336Meetings/KeystoneMeeting2015-06-02T15:35:59Z<p>Morgan Fainberg: /* Agenda for next meeting */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, browne, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>6/2</b><br />
** Post Summit Rundown (<code>Keystone Drivers</code>)<br />
** What's going on with auth plugins and client? (<code>bknudson</code>)<br />
*** e.g., <b>Add Keystone2KeystoneAuthPlugin for K2K federation</b> https://review.openstack.org/#/c/172155/<br />
*** Does this belong in a separate repo from keystoneclient?<br />
** Keystone IdP config API - an API to configure Keystone IdPs instead of using the config file (<code>rodrigods, gabriel-bezerra</code>)<br />
** No one uses keystonemiddleware's memcache_pool? (<code>breton</code>)<br />
** Dynamic Policy Update (<code>breton</code>)<br />
*** Trello https://trello.com/b/260v4Gs7/dynamic-policy<br />
*** Need time for subteam meeting?<br />
** Project scoped token by name in Reseller (<code>htruta, raildo, rodrigods</code>)<br />
*** How to get a project scoped token by name when a name conflict happens?<br />
** Shall we pull Federation Mapping Engine out of Keystone and make it separate library? (<code>marekd</code>, <code>stevemar</code>)<br />
*** https://github.com/stevemart/keystone-mapper<br />
*** https://review.openstack.org/#/c/186817/<br />
<br />
==== Test Scripts ====<br />
* posting upstream test scripts on etherpad<br />
* example for HMT: https://etherpad.openstack.org/p/hierarchical-projects<br />
* Need org structure<br />
<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
* Role descriptions: https://blueprints.launchpad.net/keystone/+spec/role-descriptions - browne<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=81345Meetings/KeystoneMeeting2015-05-15T22:19:24Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b><big>Reminder: No Meeting 5/19 or 5/26</big></b><br />
<br />
*<b>6/2</b><br />
** Post Summit Rundown (<code>Keystone Drivers</code>)<br />
<br />
==== Test Scripts ====<br />
* posting upstream test scripts on etherpad<br />
* example for HMT: https://etherpad.openstack.org/p/hierarchical-projects<br />
* Need org structure<br />
<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=81021Meetings/KeystoneMeeting2015-05-12T17:25:44Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b><big>Reminder: No Meeting 5/19 or 5/26</big></b><br />
<br />
*<b>5/12</b><br />
** See Everyone at the Summit<br />
<br />
*<b>6/2</b><br />
** Post Summit Rundown (<code>Keystone Drivers</code>)<br />
<br />
==== Test Scripts ====<br />
* posting upstream test scripts on etherpad<br />
* example for HMT: https://etherpad.openstack.org/p/hierarchical-projects<br />
* Need org structure<br />
<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=81020Meetings/KeystoneMeeting2015-05-12T17:25:15Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b><big>Reminder: No Meeting 5/19 or 5/26</big></b><br />
<br />
*<b>5/12</b><br />
** See Everyone at the Summit<br />
<br />
*<b>6/2</b><br />
**<br />
<br />
==== Test Scripts ====<br />
* posting upstream test scripts on etherpad<br />
* example for HMT: https://etherpad.openstack.org/p/hierarchical-projects<br />
* Need org structure<br />
<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=79559Meetings/KeystoneMeeting2015-05-03T05:25:33Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>5/5</b><br />
** Reminder: No Meeting 5/19 or 5/26 (Summit and Tuesday post summit) (<code>morganfainberg</code>)<br />
** Midcyle Meetup Wiki Page: [[Sprints/KeystoneLibertySprint|Liberty MidCycle Meetup]] (<code>morganfainberg</code>, <code>ayoung</code>)<br />
** First Pass on Summit Sessions: [https://libertydesignsummit.sched.org/type/design+summit/Keystone Summit Schedule Keystone Track] (<code>morganfainberg</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=79558Meetings/KeystoneMeeting2015-05-03T05:25:04Z<p>Morgan Fainberg: /* Agenda for next meeting */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>5/5</b><br />
** Reminder: No Meeting 5/19 or 5/26 (Summit and Tuesday post summit) (<code>morganfainberg</code>)<br />
** Midcyle Meetup Wiki Page: [[Sprints/KeystoneLibertySprint|Liberty MidCycle Meetup]] (<code>morganfainberg</code>, <code>ayoung</code>)<br />
** First Pass on Summit Sessions: [http://libertydesignsummit.sched.org/type/design+summit/Keystone Summit Schedule Keystone Track] (<code>morganfainberg</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79509Sprints/KeystoneLibertySprint2015-05-03T04:32:43Z<p>Morgan Fainberg: /* Registration */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Time and Location ===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University, Boston, MA, USA<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
Current Attendance Cap: 30<br />
<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information<br />
<br />
=== Registration ===<br />
<br />
'''Note:''' Twitter handle is optional, but often we use twitter to let people know where we are, especially for evening food and/or drinks. Feel free to provide your twitter or just keep an eye out on those of us who have provided ours for where everyone is at the Meetup/when we're headed out for dinner, etc.<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Name !! IRC Nick !! Twitter (optional) !! Comment !! Email<br />
|-<br />
| Morgan Fainberg || morganfainberg || [https://twitter.com/MdrnStm @mdrnstm] || || morgan.fainberg AT gmail.com<br />
|-<br />
| || || || || <br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79508Sprints/KeystoneLibertySprint2015-05-03T04:31:02Z<p>Morgan Fainberg: /* Registration */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Time and Location ===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University, Boston, MA, USA<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
Current Attendance Cap: 30<br />
<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information<br />
<br />
=== Registration ===<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Name !! IRC Nick !! Twitter (optional) !! Comment !! Email<br />
|-<br />
| Morgan Fainberg || morganfainberg || [https://twitter.com/MdrnStm @mdrnstm] || || morgan.fainberg AT gmail.com<br />
|-<br />
| || || || || <br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79507Sprints/KeystoneLibertySprint2015-05-03T04:30:47Z<p>Morgan Fainberg: /* Registration */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Time and Location ===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University, Boston, MA, USA<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
Current Attendance Cap: 30<br />
<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information<br />
<br />
=== Registration ===<br />
<br />
{| class="wikitable sortable"<br />
|-<br />
! Name !! IRC Nick !! Twitter (optional) !! Comment !! Email<br />
|-<br />
| Morgan Fainberg || morganfainberg || [https://twitter.com/MdrnStm @mdrnstm] || || morgan.fainberg AT gmail.com<br />
|-<br />
| || || || <br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79502Sprints/KeystoneLibertySprint2015-05-03T04:26:43Z<p>Morgan Fainberg: /* Keystone Liberty Midcycle Meetup */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Time and Location ===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University, Boston, MA, USA<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
Current Attendance Cap: 30<br />
<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information<br />
<br />
=== Registration ===</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79501Sprints/KeystoneLibertySprint2015-05-03T04:25:55Z<p>Morgan Fainberg: /* Date/Location Information */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Time and Location ===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University, Boston, MA, USA<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
Current Attendance Cap: 30<br />
<br />
RSVP Survey: TBD<br />
<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79500Sprints/KeystoneLibertySprint2015-05-03T04:23:36Z<p>Morgan Fainberg: /* Other Information */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Date/Location Information===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University, Boston, MA, USA<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
Current Attendance Cap: 30<br />
<br />
RSVP Survey: TBD<br />
<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=79499Meetings/KeystoneMeeting2015-05-03T04:22:19Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>5/5</b><br />
** Reminder: No Meeting 5/19 or 5/26 (Summit and Tuesday post summit) (<code>morganfainberg</code>)<br />
** Midcyle Meetup Wiki Page: [[Sprints/KeystoneLibertySprint|Liberty MidCycle Meetup]] (<code>morganfainberg</code>, <code>ayoung</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=79498Meetings/KeystoneMeeting2015-05-03T04:21:56Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>5/5</b><br />
** Reminder: No Meeting 5/19 or 5/26 (Summit and Tuesday post summit) (<code>morganfainberg</code>)<br />
** Midcyle Meetup Wiki Page: [[Sprints/KeystoneLibertySprint|Liberty MidCycle Meetup]] (<code>morganfainberg</code>, <code>ayoung</code>)<br />
<br />
* <b>5/12</b><br />
**<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=79497Meetings/KeystoneMeeting2015-05-03T04:21:14Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
*<b>5/5</b><br />
** Reminder: No Meeting 5/19 or 5/26 (Summit and Tuesday post summit) (<code>morganfainberg</code>)<br />
** Midcyle Meetup Wiki Page: [[Sprints/KeystoneLibertySprint|Liberty MidCycle Meetup]] (<code>morganfainberg</code>, <code>ayoung</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Meetings/KeystoneMeeting&diff=79496Meetings/KeystoneMeeting2015-05-03T04:20:26Z<p>Morgan Fainberg: /* Main Agenda */</p>
<hr />
<div>= Weekly Keystone team meeting =<br />
<br />
If you're interested in identity for OpenStack, we hold public meetings weekly on [[IRC]] in <code><nowiki>#openstack-meeting</nowiki></code>, on [https://www.google.com/search?q=current+utc+time Tuesdays at 18:00 UTC]. Please feel free to add items to the agenda below with your name and we'll cover them.<br />
<br />
== Regular attendees ==<br />
<br />
Add yourself to this list to be pinged prior to each meeting:<br />
<br />
ajayaa, amakarov, ayoung, bknudson, breton, davechen, david8hu, dolphm, dstanek, ericksonsantos, geoffarnold, gyee, henrynash, hogepodge, htruta, jamielennox, joesavak, lbragstad, lhcheng, marekd, morganfainberg, nkinder, raildo, rharwood, rodrigods, roxanaghe, samueldmq, stevemar, topol, wanghong<br />
<br />
== Agenda for next meeting ==<br />
<br />
==== Main Agenda ====<br />
Please add agenda items to the bottom of this section's list (be sure to include your <code>irc_handle</code>!).<br />
<br />
<b>5/5</b><br />
* Reminder: No Meeting 5/19 or 5/26 (Summit and Tuesday post summit) (<code>morganfainberg</code>)<br />
* Midcyle Meetup Wiki Page: [[Sprints/KeystoneLibertySprint|Liberty MidCycle Meetup]] (<code>morganfainberg</code>, <code>ayoung</code>)<br />
<br />
==== Review of Keystone Blueprints for No-Spec Requires Status ====<br />
Please add BPs to the bottom of this sections list that should be reviewed as not requiring a spec (include your <code>irc_handle</code>!).<br />
<br />
==== Keystone Weekly Bug Reports ====<br />
Bugs for the various Keystone repositories are collects and published to the following links. (<code>lbragstad</code>)<br />
* [http://keystone-weekly-bug-report.tempusfrangit.org/weekly-bug-reports/keystone-weekly-bug-report.html Keystone Weekly Bug Report]<br />
<br />
== Previous meetings ==<br />
<br />
Logs and meeting summaries of previous meetings are located [http://eavesdrop.openstack.org/meetings/keystone/ here].</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79495Sprints/KeystoneLibertySprint2015-05-03T04:18:42Z<p>Morgan Fainberg: /* Date/Location Information */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Date/Location Information===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University, Boston, MA, USA<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints&diff=79494Sprints2015-05-03T04:17:47Z<p>Morgan Fainberg: /* Liberty sprint */</p>
<hr />
<div>For the list of virtual sprints, please visit the [https://wiki.openstack.org/wiki/VirtualSprints Virtual Sprints] page.<br />
<br />
=== Liberty sprint ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| June 24-26, 2015<br />
| Fort Collins, CO, USA<br />
| Neutron Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| June 30, July 1, July 2<br />
| Tel Aviv, Israel<br />
| Neutron QoS Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| July 15-17, 2015<br />
| Boston University, Boston, MA, USA<br />
| Keystone Midcycle Sprint<br />
| [[Sprints/KeystoneLibertySprint]]<br />
|}<br />
<br />
=== Kilo sprints ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| March 25-27, 2015<br />
| New York, NY, USA<br />
| QA Code Sprint<br />
| [[QA/CodeSprintKiloNYC]]<br />
|-<br />
| April 13-15, 2015<br />
| Shanghai, PRC<br />
| Release Candidate Hackaton<br />
| [[PRC_Kilo_Hackaton|Kilo Hackaton in PRC]]<br />
|}<br />
<br />
<br />
<br />
==== Previous Kilo Sprints ====<br />
<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| December 8-10, 2014<br />
| Lehi, Utah, USA<br />
| Neutron<br />
| [[Sprints/NeutronKiloSprint]]<br />
|-<br />
| January 12 - 14, 2015<br />
| Santa Clara, CA, USA<br />
| Refstack<br />
| [https://etherpad.openstack.org/p/refstack-january-2015-midcycle Refstack Midcycle Meetup Etherpad]<br />
|-<br />
| January 19 - 21, 2015<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [[Sprints/KeystoneKiloSprint]]<br />
|-<br />
| January 19 - 22, 2015<br />
| San Jose, CA, USA<br />
| Designate<br />
| [[Sprints/DesignateKiloSprint]]<br />
|-<br />
| January 26 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Nova<br />
| [[Sprints/PaloAltoKiloSprint]]<br />
|-<br />
| January 27 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [https://etherpad.openstack.org/p/kilo-glance-mid-cycle-meetup Glance Midcycle Meetup Etherpad]<br />
|-<br />
| January 27 - 29, 2015<br />
| Austin, TX, USA<br />
| Cinder<br />
| [[Sprints/CinderKiloSprint]]<br />
|-<br />
| Feb 2 - 6, 2015<br />
| San Antonio, TX, USA<br />
| Neutron LBaaS<br />
| [https://etherpad.openstack.org/p/lbaas-kilo-meetup LBaaS Midcycle Meetup Etherpad]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Seattle, WA, USA<br />
| Trove<br />
| [[Sprints/TroveKiloSprint]]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Grenoble, France<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 11 - 13, 2015<br />
| San Francisco, CA, USA<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 16-18, 2015<br />
| Austin, TX, USA<br />
| Barbican<br />
| [[Sprints/BarbicanKiloSprint]]<br />
|-<br />
| Feb 18 - 20, 2015<br />
| Seattle, WA, USA<br />
| Deployment/TripleO<br />
| [[Sprints/DeploymentKiloSprint]], [https://etherpad.openstack.org/p/kilo-tripleo-midcycle-meetup Etherpad]<br />
|-<br />
| Feb 17-20, 2015 (Awaiting Confirmation)<br />
| San Francisco, CA, USA<br />
| OpenStack Security Group<br />
| [[Sprints/OSSGKiloSprint]]<br />
|-<br />
| Mar 2-3, 2015<br />
| San Francisco, CA, USA<br />
| Magnum (CaaS for OpenStack)<br />
| [[Magnum/Midcycle]]<br />
|-<br />
| Mar 9-10, 2015<br />
| Philadelphia, PA, USA<br />
| Operators Mid-Cycle<br />
| [[Operations/Meetups]]<br />
|}<br />
<br />
<br />
=== Juno sprints ===<br />
==== Here is a list of the previous sprints for Juno (all in '''2014''') ====<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| July 2 - 4<br />
| Paris, France<br />
| Ceilometer/All projects<br />
| [[Sprints/ParisJuno2014]]<br />
|-<br />
| July 7 - 9<br />
| San Antonio, TX, USA<br />
| Barbican<br />
| TBD, [[Meetings/Barbican]]<br />
|-<br />
| July 9 - 11<br />
| Bloomington, MN, USA<br />
| Neutron<br />
| [https://etherpad.openstack.org/p/neutron-juno-mid-cycle-meeting]<br />
|-<br />
| July 9 - 11<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [http://dolphm.com/openstack-keystone-hackathon-for-juno/]<br />
|-<br />
| July 14 - 18<br />
| Darmstadt, Germany<br />
| QA & Infra<br />
| [[Qa_Infra_Meetup_2014]]<br />
|-<br />
| July 14 - 18<br />
| Seattle, USA<br />
| Security Group<br />
| [https://etherpad.openstack.org/p/ossg-juno-meetup]<br />
|-<br />
| July 21 - July 25<br />
| Raleigh, NC, USA<br />
| TripleO (& Heat)<br />
| [https://etherpad.openstack.org/p/juno-midcycle-meetup]<br />
|-<br />
| July 28 - Jul 30<br />
| Hillsboro, OR, USA<br />
| Nova & Ironic<br />
| [[Sprints/BeavertonJunoSprint]]<br />
|-<br />
| Aug 11 - Aug 15<br />
| Fort Collins, CO<br />
| Cinder<br />
| [[https://etherpad.openstack.org/p/CinderMidCycleMeetupAug2014]]<br />
|-<br />
| Aug 18 - Aug 20<br />
| Raleigh, NC, USA<br />
| Heat<br />
| [https://etherpad.openstack.org/p/heat-juno-midcycle-meetup]<br />
|-<br />
| Aug 20 - Aug 23<br />
| Cambridge, MA, USA<br />
| Trove<br />
| [[Trove/JunoMidCycleMeetup|Link]]<br />
|-<br />
| July 24 - July 25<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [[https://etherpad.openstack.org/p/glance-juno-mid-cycle-meeting]]<br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints&diff=79493Sprints2015-05-03T04:17:34Z<p>Morgan Fainberg: /* Liberty sprint */</p>
<hr />
<div>For the list of virtual sprints, please visit the [https://wiki.openstack.org/wiki/VirtualSprints Virtual Sprints] page.<br />
<br />
=== Liberty sprint ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| June 24-26, 2015<br />
| Fort Collins, CO, USA<br />
| Neutron Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| June 30, July 1, July 2<br />
| Tel Aviv, Israel<br />
| Neutron QoS Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| July 15-17, 2015<br />
| Boston University, Boston, MA<br />
| Keystone Midcycle Sprint<br />
| [[Sprints/KeystoneLibertySprint]]<br />
|}<br />
<br />
=== Kilo sprints ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| March 25-27, 2015<br />
| New York, NY, USA<br />
| QA Code Sprint<br />
| [[QA/CodeSprintKiloNYC]]<br />
|-<br />
| April 13-15, 2015<br />
| Shanghai, PRC<br />
| Release Candidate Hackaton<br />
| [[PRC_Kilo_Hackaton|Kilo Hackaton in PRC]]<br />
|}<br />
<br />
<br />
<br />
==== Previous Kilo Sprints ====<br />
<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| December 8-10, 2014<br />
| Lehi, Utah, USA<br />
| Neutron<br />
| [[Sprints/NeutronKiloSprint]]<br />
|-<br />
| January 12 - 14, 2015<br />
| Santa Clara, CA, USA<br />
| Refstack<br />
| [https://etherpad.openstack.org/p/refstack-january-2015-midcycle Refstack Midcycle Meetup Etherpad]<br />
|-<br />
| January 19 - 21, 2015<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [[Sprints/KeystoneKiloSprint]]<br />
|-<br />
| January 19 - 22, 2015<br />
| San Jose, CA, USA<br />
| Designate<br />
| [[Sprints/DesignateKiloSprint]]<br />
|-<br />
| January 26 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Nova<br />
| [[Sprints/PaloAltoKiloSprint]]<br />
|-<br />
| January 27 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [https://etherpad.openstack.org/p/kilo-glance-mid-cycle-meetup Glance Midcycle Meetup Etherpad]<br />
|-<br />
| January 27 - 29, 2015<br />
| Austin, TX, USA<br />
| Cinder<br />
| [[Sprints/CinderKiloSprint]]<br />
|-<br />
| Feb 2 - 6, 2015<br />
| San Antonio, TX, USA<br />
| Neutron LBaaS<br />
| [https://etherpad.openstack.org/p/lbaas-kilo-meetup LBaaS Midcycle Meetup Etherpad]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Seattle, WA, USA<br />
| Trove<br />
| [[Sprints/TroveKiloSprint]]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Grenoble, France<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 11 - 13, 2015<br />
| San Francisco, CA, USA<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 16-18, 2015<br />
| Austin, TX, USA<br />
| Barbican<br />
| [[Sprints/BarbicanKiloSprint]]<br />
|-<br />
| Feb 18 - 20, 2015<br />
| Seattle, WA, USA<br />
| Deployment/TripleO<br />
| [[Sprints/DeploymentKiloSprint]], [https://etherpad.openstack.org/p/kilo-tripleo-midcycle-meetup Etherpad]<br />
|-<br />
| Feb 17-20, 2015 (Awaiting Confirmation)<br />
| San Francisco, CA, USA<br />
| OpenStack Security Group<br />
| [[Sprints/OSSGKiloSprint]]<br />
|-<br />
| Mar 2-3, 2015<br />
| San Francisco, CA, USA<br />
| Magnum (CaaS for OpenStack)<br />
| [[Magnum/Midcycle]]<br />
|-<br />
| Mar 9-10, 2015<br />
| Philadelphia, PA, USA<br />
| Operators Mid-Cycle<br />
| [[Operations/Meetups]]<br />
|}<br />
<br />
<br />
=== Juno sprints ===<br />
==== Here is a list of the previous sprints for Juno (all in '''2014''') ====<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| July 2 - 4<br />
| Paris, France<br />
| Ceilometer/All projects<br />
| [[Sprints/ParisJuno2014]]<br />
|-<br />
| July 7 - 9<br />
| San Antonio, TX, USA<br />
| Barbican<br />
| TBD, [[Meetings/Barbican]]<br />
|-<br />
| July 9 - 11<br />
| Bloomington, MN, USA<br />
| Neutron<br />
| [https://etherpad.openstack.org/p/neutron-juno-mid-cycle-meeting]<br />
|-<br />
| July 9 - 11<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [http://dolphm.com/openstack-keystone-hackathon-for-juno/]<br />
|-<br />
| July 14 - 18<br />
| Darmstadt, Germany<br />
| QA & Infra<br />
| [[Qa_Infra_Meetup_2014]]<br />
|-<br />
| July 14 - 18<br />
| Seattle, USA<br />
| Security Group<br />
| [https://etherpad.openstack.org/p/ossg-juno-meetup]<br />
|-<br />
| July 21 - July 25<br />
| Raleigh, NC, USA<br />
| TripleO (& Heat)<br />
| [https://etherpad.openstack.org/p/juno-midcycle-meetup]<br />
|-<br />
| July 28 - Jul 30<br />
| Hillsboro, OR, USA<br />
| Nova & Ironic<br />
| [[Sprints/BeavertonJunoSprint]]<br />
|-<br />
| Aug 11 - Aug 15<br />
| Fort Collins, CO<br />
| Cinder<br />
| [[https://etherpad.openstack.org/p/CinderMidCycleMeetupAug2014]]<br />
|-<br />
| Aug 18 - Aug 20<br />
| Raleigh, NC, USA<br />
| Heat<br />
| [https://etherpad.openstack.org/p/heat-juno-midcycle-meetup]<br />
|-<br />
| Aug 20 - Aug 23<br />
| Cambridge, MA, USA<br />
| Trove<br />
| [[Trove/JunoMidCycleMeetup|Link]]<br />
|-<br />
| July 24 - July 25<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [[https://etherpad.openstack.org/p/glance-juno-mid-cycle-meeting]]<br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints&diff=79492Sprints2015-05-03T04:16:58Z<p>Morgan Fainberg: /* Liberty sprint */</p>
<hr />
<div>For the list of virtual sprints, please visit the [https://wiki.openstack.org/wiki/VirtualSprints Virtual Sprints] page.<br />
<br />
=== Liberty sprint ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| June 24-26, 2015<br />
| Fort Collins, CO, USA<br />
| Neutron Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| June 30, July 1, July 2<br />
| Tel Aviv, Israel<br />
| Neutron QoS Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| July 15-17, 2015<br />
| Boston University<br />
| Keystone Midcycle Sprint<br />
| [[Sprints/KeystoneLibertySprint]]<br />
|}<br />
<br />
=== Kilo sprints ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| March 25-27, 2015<br />
| New York, NY, USA<br />
| QA Code Sprint<br />
| [[QA/CodeSprintKiloNYC]]<br />
|-<br />
| April 13-15, 2015<br />
| Shanghai, PRC<br />
| Release Candidate Hackaton<br />
| [[PRC_Kilo_Hackaton|Kilo Hackaton in PRC]]<br />
|}<br />
<br />
<br />
<br />
==== Previous Kilo Sprints ====<br />
<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| December 8-10, 2014<br />
| Lehi, Utah, USA<br />
| Neutron<br />
| [[Sprints/NeutronKiloSprint]]<br />
|-<br />
| January 12 - 14, 2015<br />
| Santa Clara, CA, USA<br />
| Refstack<br />
| [https://etherpad.openstack.org/p/refstack-january-2015-midcycle Refstack Midcycle Meetup Etherpad]<br />
|-<br />
| January 19 - 21, 2015<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [[Sprints/KeystoneKiloSprint]]<br />
|-<br />
| January 19 - 22, 2015<br />
| San Jose, CA, USA<br />
| Designate<br />
| [[Sprints/DesignateKiloSprint]]<br />
|-<br />
| January 26 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Nova<br />
| [[Sprints/PaloAltoKiloSprint]]<br />
|-<br />
| January 27 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [https://etherpad.openstack.org/p/kilo-glance-mid-cycle-meetup Glance Midcycle Meetup Etherpad]<br />
|-<br />
| January 27 - 29, 2015<br />
| Austin, TX, USA<br />
| Cinder<br />
| [[Sprints/CinderKiloSprint]]<br />
|-<br />
| Feb 2 - 6, 2015<br />
| San Antonio, TX, USA<br />
| Neutron LBaaS<br />
| [https://etherpad.openstack.org/p/lbaas-kilo-meetup LBaaS Midcycle Meetup Etherpad]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Seattle, WA, USA<br />
| Trove<br />
| [[Sprints/TroveKiloSprint]]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Grenoble, France<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 11 - 13, 2015<br />
| San Francisco, CA, USA<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 16-18, 2015<br />
| Austin, TX, USA<br />
| Barbican<br />
| [[Sprints/BarbicanKiloSprint]]<br />
|-<br />
| Feb 18 - 20, 2015<br />
| Seattle, WA, USA<br />
| Deployment/TripleO<br />
| [[Sprints/DeploymentKiloSprint]], [https://etherpad.openstack.org/p/kilo-tripleo-midcycle-meetup Etherpad]<br />
|-<br />
| Feb 17-20, 2015 (Awaiting Confirmation)<br />
| San Francisco, CA, USA<br />
| OpenStack Security Group<br />
| [[Sprints/OSSGKiloSprint]]<br />
|-<br />
| Mar 2-3, 2015<br />
| San Francisco, CA, USA<br />
| Magnum (CaaS for OpenStack)<br />
| [[Magnum/Midcycle]]<br />
|-<br />
| Mar 9-10, 2015<br />
| Philadelphia, PA, USA<br />
| Operators Mid-Cycle<br />
| [[Operations/Meetups]]<br />
|}<br />
<br />
<br />
=== Juno sprints ===<br />
==== Here is a list of the previous sprints for Juno (all in '''2014''') ====<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| July 2 - 4<br />
| Paris, France<br />
| Ceilometer/All projects<br />
| [[Sprints/ParisJuno2014]]<br />
|-<br />
| July 7 - 9<br />
| San Antonio, TX, USA<br />
| Barbican<br />
| TBD, [[Meetings/Barbican]]<br />
|-<br />
| July 9 - 11<br />
| Bloomington, MN, USA<br />
| Neutron<br />
| [https://etherpad.openstack.org/p/neutron-juno-mid-cycle-meeting]<br />
|-<br />
| July 9 - 11<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [http://dolphm.com/openstack-keystone-hackathon-for-juno/]<br />
|-<br />
| July 14 - 18<br />
| Darmstadt, Germany<br />
| QA & Infra<br />
| [[Qa_Infra_Meetup_2014]]<br />
|-<br />
| July 14 - 18<br />
| Seattle, USA<br />
| Security Group<br />
| [https://etherpad.openstack.org/p/ossg-juno-meetup]<br />
|-<br />
| July 21 - July 25<br />
| Raleigh, NC, USA<br />
| TripleO (& Heat)<br />
| [https://etherpad.openstack.org/p/juno-midcycle-meetup]<br />
|-<br />
| July 28 - Jul 30<br />
| Hillsboro, OR, USA<br />
| Nova & Ironic<br />
| [[Sprints/BeavertonJunoSprint]]<br />
|-<br />
| Aug 11 - Aug 15<br />
| Fort Collins, CO<br />
| Cinder<br />
| [[https://etherpad.openstack.org/p/CinderMidCycleMeetupAug2014]]<br />
|-<br />
| Aug 18 - Aug 20<br />
| Raleigh, NC, USA<br />
| Heat<br />
| [https://etherpad.openstack.org/p/heat-juno-midcycle-meetup]<br />
|-<br />
| Aug 20 - Aug 23<br />
| Cambridge, MA, USA<br />
| Trove<br />
| [[Trove/JunoMidCycleMeetup|Link]]<br />
|-<br />
| July 24 - July 25<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [[https://etherpad.openstack.org/p/glance-juno-mid-cycle-meeting]]<br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints&diff=79491Sprints2015-05-03T04:16:19Z<p>Morgan Fainberg: /* Liberty sprint */</p>
<hr />
<div>For the list of virtual sprints, please visit the [https://wiki.openstack.org/wiki/VirtualSprints Virtual Sprints] page.<br />
<br />
=== Liberty sprint ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| June 24-26, 2015<br />
| Fort Collins, CO, USA<br />
| Neutron Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| June 30, July 1, July 2<br />
| Tel Aviv, Israel<br />
| Neutron QoS Code Sprint<br />
| [[Neutron/LibertyCodeSprint]]<br />
|-<br />
| July 15, July 16, July 17<br />
| Boston University<br />
| Keystone Midcycle Sprint<br />
| [[Sprints/KeystoneLibertySprint]]<br />
|}<br />
<br />
=== Kilo sprints ===<br />
<br />
Here is a chronological list of future sprints. please keep it ordered and move past ones to table below.<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| March 25-27, 2015<br />
| New York, NY, USA<br />
| QA Code Sprint<br />
| [[QA/CodeSprintKiloNYC]]<br />
|-<br />
| April 13-15, 2015<br />
| Shanghai, PRC<br />
| Release Candidate Hackaton<br />
| [[PRC_Kilo_Hackaton|Kilo Hackaton in PRC]]<br />
|}<br />
<br />
<br />
<br />
==== Previous Kilo Sprints ====<br />
<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| December 8-10, 2014<br />
| Lehi, Utah, USA<br />
| Neutron<br />
| [[Sprints/NeutronKiloSprint]]<br />
|-<br />
| January 12 - 14, 2015<br />
| Santa Clara, CA, USA<br />
| Refstack<br />
| [https://etherpad.openstack.org/p/refstack-january-2015-midcycle Refstack Midcycle Meetup Etherpad]<br />
|-<br />
| January 19 - 21, 2015<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [[Sprints/KeystoneKiloSprint]]<br />
|-<br />
| January 19 - 22, 2015<br />
| San Jose, CA, USA<br />
| Designate<br />
| [[Sprints/DesignateKiloSprint]]<br />
|-<br />
| January 26 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Nova<br />
| [[Sprints/PaloAltoKiloSprint]]<br />
|-<br />
| January 27 - 28, 2015<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [https://etherpad.openstack.org/p/kilo-glance-mid-cycle-meetup Glance Midcycle Meetup Etherpad]<br />
|-<br />
| January 27 - 29, 2015<br />
| Austin, TX, USA<br />
| Cinder<br />
| [[Sprints/CinderKiloSprint]]<br />
|-<br />
| Feb 2 - 6, 2015<br />
| San Antonio, TX, USA<br />
| Neutron LBaaS<br />
| [https://etherpad.openstack.org/p/lbaas-kilo-meetup LBaaS Midcycle Meetup Etherpad]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Seattle, WA, USA<br />
| Trove<br />
| [[Sprints/TroveKiloSprint]]<br />
|-<br />
| Feb 3 - 5, 2015<br />
| Grenoble, France<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 11 - 13, 2015<br />
| San Francisco, CA, USA<br />
| Ironic<br />
| [[Sprints/IronicKiloSprint]]<br />
|-<br />
| Feb 16-18, 2015<br />
| Austin, TX, USA<br />
| Barbican<br />
| [[Sprints/BarbicanKiloSprint]]<br />
|-<br />
| Feb 18 - 20, 2015<br />
| Seattle, WA, USA<br />
| Deployment/TripleO<br />
| [[Sprints/DeploymentKiloSprint]], [https://etherpad.openstack.org/p/kilo-tripleo-midcycle-meetup Etherpad]<br />
|-<br />
| Feb 17-20, 2015 (Awaiting Confirmation)<br />
| San Francisco, CA, USA<br />
| OpenStack Security Group<br />
| [[Sprints/OSSGKiloSprint]]<br />
|-<br />
| Mar 2-3, 2015<br />
| San Francisco, CA, USA<br />
| Magnum (CaaS for OpenStack)<br />
| [[Magnum/Midcycle]]<br />
|-<br />
| Mar 9-10, 2015<br />
| Philadelphia, PA, USA<br />
| Operators Mid-Cycle<br />
| [[Operations/Meetups]]<br />
|}<br />
<br />
<br />
=== Juno sprints ===<br />
==== Here is a list of the previous sprints for Juno (all in '''2014''') ====<br />
{| border="1" cellpadding="4" cellspacing="4"<br />
|- bgcolor=#eeeeee<br />
| Date<br />
| Location<br />
| Theme<br />
| More information at<br />
|-<br />
| July 2 - 4<br />
| Paris, France<br />
| Ceilometer/All projects<br />
| [[Sprints/ParisJuno2014]]<br />
|-<br />
| July 7 - 9<br />
| San Antonio, TX, USA<br />
| Barbican<br />
| TBD, [[Meetings/Barbican]]<br />
|-<br />
| July 9 - 11<br />
| Bloomington, MN, USA<br />
| Neutron<br />
| [https://etherpad.openstack.org/p/neutron-juno-mid-cycle-meeting]<br />
|-<br />
| July 9 - 11<br />
| San Antonio, TX, USA<br />
| Keystone<br />
| [http://dolphm.com/openstack-keystone-hackathon-for-juno/]<br />
|-<br />
| July 14 - 18<br />
| Darmstadt, Germany<br />
| QA & Infra<br />
| [[Qa_Infra_Meetup_2014]]<br />
|-<br />
| July 14 - 18<br />
| Seattle, USA<br />
| Security Group<br />
| [https://etherpad.openstack.org/p/ossg-juno-meetup]<br />
|-<br />
| July 21 - July 25<br />
| Raleigh, NC, USA<br />
| TripleO (& Heat)<br />
| [https://etherpad.openstack.org/p/juno-midcycle-meetup]<br />
|-<br />
| July 28 - Jul 30<br />
| Hillsboro, OR, USA<br />
| Nova & Ironic<br />
| [[Sprints/BeavertonJunoSprint]]<br />
|-<br />
| Aug 11 - Aug 15<br />
| Fort Collins, CO<br />
| Cinder<br />
| [[https://etherpad.openstack.org/p/CinderMidCycleMeetupAug2014]]<br />
|-<br />
| Aug 18 - Aug 20<br />
| Raleigh, NC, USA<br />
| Heat<br />
| [https://etherpad.openstack.org/p/heat-juno-midcycle-meetup]<br />
|-<br />
| Aug 20 - Aug 23<br />
| Cambridge, MA, USA<br />
| Trove<br />
| [[Trove/JunoMidCycleMeetup|Link]]<br />
|-<br />
| July 24 - July 25<br />
| Palo Alto, CA, USA<br />
| Glance<br />
| [[https://etherpad.openstack.org/p/glance-juno-mid-cycle-meeting]]<br />
|}</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79490Sprints/KeystoneLibertySprint2015-05-03T04:15:25Z<p>Morgan Fainberg: /* Date/Location Information */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Date/Location Information===<br />
When: July 15-17 (Wed-Fri) <br />
<br />
Where: Boston University<br />
<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79489Sprints/KeystoneLibertySprint2015-05-03T04:15:09Z<p>Morgan Fainberg: /* Date/Location Information */</p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Date/Location Information===<br />
When: July 15-17 (Wed-Fri) <br />
Where: Boston University<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79488Sprints/KeystoneLibertySprint2015-05-03T04:14:53Z<p>Morgan Fainberg: </p>
<hr />
<div>== Keystone Liberty Midcycle Meetup ==<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
=== Date/Location Information===<br />
When: July 15-17 (Wed-Fri) Where: Boston University<br />
Recommended Hotels: TBD<br />
<br />
=== Other Information ===<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information</div>Morgan Fainberghttps://wiki.openstack.org/w/index.php?title=Sprints/KeystoneLibertySprint&diff=79487Sprints/KeystoneLibertySprint2015-05-03T04:12:51Z<p>Morgan Fainberg: Created page with "Keystone This page tracks information for the Keystone Liberty Code Sprint. When: July 15-17 (Wed-Fri) Where: Boston University Recommended Hotels: TBD [https://etherpad..."</p>
<hr />
<div>[[Keystone]]<br />
This page tracks information for the Keystone Liberty Code Sprint.<br />
<br />
When: July 15-17 (Wed-Fri) Where: Boston University<br />
Recommended Hotels: TBD<br />
<br />
[https://etherpad.openstack.org/p/keystone-liberty-midcycle-meetup Etherpad] for Keystone MidCycle Meetup/Sprint Topics and Information</div>Morgan Fainberg