From a49b18bfaca6843ea7ce6d186fe14caa9487674a Mon Sep 17 00:00:00 2001
From: Morgan Fainberg <morgan.fainberg@gmail.com>
Date: Thu, 19 Jun 2014 20:51:37 -0700
Subject: [PATCH] Add keystonemiddleware project

The OpenStack Identity (Keystone) team has decided to split the
packaging of the middleware used by external services (both from
Keystone and python-keystoneclient) into it's own separate packaging.

This is to enable the reduction in dependencies required by the
keystoneclient library (some dependencies are specific to servers
such as memcache) and allow for releasing fixes to the various
middleware code without needing to also release either a fix to
Keystone or a fix to the keystoneclient library.

The new keystonemiddleware project will be released independent
of the OpenStack named-cycle (similar to the client libraries).

Further details on this change can be seen in the approved
Keystone specification: https://review.openstack.org/#/c/95987/

The upstream repository is an extraction of the middleware from the
respective repositories maintaining the commit history.

Change-Id: I44a0d59999c720fe9eee99e322138818080b41e0
---
 .../gerritbot/files/gerritbot_channel_config.yaml   |  2 ++
 .../gerrit/acls/openstack/keystonemiddleware.config | 11 +++++++++++
 .../files/jenkins_job_builder/config/projects.yaml  | 11 +++++++++++
 .../openstack_project/files/review.projects.yaml    |  4 ++++
 modules/openstack_project/files/zuul/layout.yaml    | 13 +++++++++++++
 5 files changed, 41 insertions(+)
 create mode 100644 modules/openstack_project/files/gerrit/acls/openstack/keystonemiddleware.config

diff --git a/modules/gerritbot/files/gerritbot_channel_config.yaml b/modules/gerritbot/files/gerritbot_channel_config.yaml
index ca81d4ceda..25ca2b888e 100644
--- a/modules/gerritbot/files/gerritbot_channel_config.yaml
+++ b/modules/gerritbot/files/gerritbot_channel_config.yaml
@@ -603,6 +603,7 @@ openstack-keystone:
       - openstack/identity-api
       - openstack/keystone-specs
       - openstack/python-keystoneclient
+      - openstack/keystonemiddleware
     branches:
       - master
 
@@ -635,6 +636,7 @@ openstack-merges:
       - openstack/python-glanceclient
       - openstack/keystone
       - openstack/python-keystoneclient
+      - openstack/keystonemiddleware
       - openstack/horizon
       - openstack/django_openstack_auth
       - openstack/tuskar-ui
diff --git a/modules/openstack_project/files/gerrit/acls/openstack/keystonemiddleware.config b/modules/openstack_project/files/gerrit/acls/openstack/keystonemiddleware.config
new file mode 100644
index 0000000000..e0fe9fbd1e
--- /dev/null
+++ b/modules/openstack_project/files/gerrit/acls/openstack/keystonemiddleware.config
@@ -0,0 +1,11 @@
+[access "refs/heads/*"]
+        label-Code-Review = -2..+2 group keystone-core
+        label-Workflow = -1..+1 group keystone-core
+        abandon = group keystone-core
+[access "refs/tags/*"]
+        pushSignedTag = group keystone-ptl
+[receive]
+        requireChangeId = true
+        requireContributorAgreement = true
+[submit]
+        mergeContent = true
diff --git a/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml b/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml
index 0531790272..d11051ccd7 100644
--- a/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml
+++ b/modules/openstack_project/files/jenkins_job_builder/config/projects.yaml
@@ -727,6 +727,17 @@
       - translation-jobs
       - rally-jobs
 
+- project:
+    name: keystonemiddleware
+    github-org: openstack
+    node: bare-precise
+    tarball-site: tarballs.openstack.org
+    doc-publisher-site: docs.openstack.org
+
+    jobs:
+      - python-jobs
+      - openstack-publish-jobs
+      - pypi-jobs
 
 - project:
     name: kite
diff --git a/modules/openstack_project/files/review.projects.yaml b/modules/openstack_project/files/review.projects.yaml
index 426a21fdab..717065ff9b 100644
--- a/modules/openstack_project/files/review.projects.yaml
+++ b/modules/openstack_project/files/review.projects.yaml
@@ -288,6 +288,10 @@
   docimpact-group: openstack-manuals
 - project: openstack/keystone-specs
   group: keystone
+- project: openstack/keystonemiddleware
+  description: OpenStack Identity (Keystone) Middleware
+  group: keystone
+  upstream: git://github.com/morganfainberg/keystonemiddleware
 - project: openstack/marconi
 - project: openstack/netconn-api
   group: openstack-api-site
diff --git a/modules/openstack_project/files/zuul/layout.yaml b/modules/openstack_project/files/zuul/layout.yaml
index df881596ad..e4a38126af 100644
--- a/modules/openstack_project/files/zuul/layout.yaml
+++ b/modules/openstack_project/files/zuul/layout.yaml
@@ -970,6 +970,19 @@ projects:
       - keystone-propose-translation-update
       - periodic-swift-dsvm-functional-havana
 
+  - name: openstack/keystonemiddleware
+    template:
+      - name: python-jobs
+      - name: openstack-client-publish-jobs
+      - name: check-requirements
+      - name: integrated-gate
+      - name: stable-compat-jobs
+      - name: publish-to-pypi
+    check:
+      - gate-keystonemiddleware-python33
+    gate:
+      - gate-keystonemiddleware-python33
+
   - name: openstack/marconi
     template:
       - name: python-jobs