20816335 move the core OpenStack components to Python 2.7 s11-update
authorDrew Fisher <drew.fisher@oracle.com>
Fri, 10 Jul 2015 20:29:35 +0000
branchs11-update
changeset 4625 18adb92d4193
parent 4621 21ae1fb71148
child 4626 d5dbb6652eec
20816335 move the core OpenStack components to Python 2.7
components/openstack/cinder/Makefile
components/openstack/cinder/cinder.p5m
components/openstack/cinder/files/cinder-api
components/openstack/cinder/files/cinder-backup
components/openstack/cinder/files/cinder-scheduler
components/openstack/cinder/files/cinder-upgrade
components/openstack/cinder/files/cinder-volume
components/openstack/cinder/files/cinder-volume-setup
components/openstack/common/Makefile
components/openstack/glance/Makefile
components/openstack/glance/files/glance-api
components/openstack/glance/files/glance-registry
components/openstack/glance/files/glance-scrubber
components/openstack/glance/files/glance-upgrade
components/openstack/glance/glance.p5m
components/openstack/heat/Makefile
components/openstack/heat/files/heat-smf-method
components/openstack/heat/files/heat-upgrade
components/openstack/heat/heat.p5m
components/openstack/horizon/Makefile
components/openstack/horizon/files/local_settings.py
components/openstack/horizon/files/openstack-dashboard-http.conf
components/openstack/horizon/files/openstack-dashboard-tls.conf
components/openstack/horizon/patches/99-remove.xstatic.patch
components/openstack/ironic/Makefile
components/openstack/ironic/files/ironic-api
components/openstack/ironic/files/ironic-conductor
components/openstack/ironic/files/ironic-db
components/openstack/ironic/ironic.p5m
components/openstack/keystone/Makefile
components/openstack/keystone/files/keystone
components/openstack/keystone/files/keystone-upgrade
components/openstack/keystone/keystone.p5m
components/openstack/neutron/Makefile
components/openstack/neutron/files/evs/migrate/evs-neutron-migration.py
components/openstack/neutron/files/neutron-dhcp-agent
components/openstack/neutron/files/neutron-l3-agent
components/openstack/neutron/files/neutron-metadata-agent
components/openstack/neutron/files/neutron-server
components/openstack/neutron/files/neutron-upgrade
components/openstack/neutron/neutron.p5m
components/openstack/nova/Makefile
components/openstack/nova/files/nova-api
components/openstack/nova/files/nova-cert
components/openstack/nova/files/nova-compute
components/openstack/nova/files/nova-conductor
components/openstack/nova/files/nova-consoleauth
components/openstack/nova/files/nova-novncproxy
components/openstack/nova/files/nova-objectstore
components/openstack/nova/files/nova-scheduler
components/openstack/nova/files/nova-upgrade
components/openstack/nova/files/nova.conf
components/openstack/nova/files/zone-vnc-console
components/openstack/nova/nova.p5m
components/openstack/swift/Makefile
components/openstack/swift/files/swift-replicator-rsync
components/openstack/swift/files/swift-smf-method
components/openstack/swift/files/swift-upgrade
components/openstack/swift/swift.p5m
components/python/networkx/Makefile
components/python/networkx/networkx-PYVER.p5m
components/python/taskflow/Makefile
--- a/components/openstack/cinder/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -48,7 +48,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -72,12 +72,12 @@
          $(CP) \
 	     files/solaris/solarisfc.py \
              files/solaris/solarisiscsi.py \
-	     $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/cinder/brick/initiator; \
-	 $(MKDIR) $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/cinder/volume/drivers/solaris; \
-	 $(TOUCH) $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/cinder/volume/drivers/solaris/__init__.py; \
-	 $(CP) files/solaris/zfs.py $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/cinder/volume/drivers/solaris; \
-	 $(MKDIR) $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/cinder/volume/drivers/zfssa; \
-	 $(CP) files/zfssa/cinder.akwf $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/cinder/volume/drivers/zfssa); \
+	     $(PROTO_DIR)$(PYTHON_LIB)/cinder/brick/initiator; \
+	 $(MKDIR) $(PROTO_DIR)$(PYTHON_LIB)/cinder/volume/drivers/solaris; \
+	 $(TOUCH) $(PROTO_DIR)$(PYTHON_LIB)/cinder/volume/drivers/solaris/__init__.py; \
+	 $(CP) files/solaris/zfs.py $(PROTO_DIR)$(PYTHON_LIB)/cinder/volume/drivers/solaris; \
+	 $(MKDIR) $(PROTO_DIR)$(PYTHON_LIB)/cinder/volume/drivers/zfssa; \
+	 $(CP) files/zfssa/cinder.akwf $(PROTO_DIR)$(PYTHON_LIB)/cinder/volume/drivers/zfssa); \
 	 $(PYTHON) -m compileall $(PROTO_DIR)/$(PYTHON_VENDOR_PACKAGES)
 
 # common targets
@@ -89,13 +89,13 @@
 
 
 REQUIRED_PACKAGES += cloud/openstack/openstack-common
-REQUIRED_PACKAGES += library/python/eventlet-26
-REQUIRED_PACKAGES += library/python/iniparse-26
-REQUIRED_PACKAGES += library/python/ipython-26
-REQUIRED_PACKAGES += library/python/oslo.config-26
-REQUIRED_PACKAGES += library/python/python-mysql-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-26
+REQUIRED_PACKAGES += library/python/eventlet-27
+REQUIRED_PACKAGES += library/python/iniparse-27
+REQUIRED_PACKAGES += library/python/ipython-27
+REQUIRED_PACKAGES += library/python/oslo.config-27
+REQUIRED_PACKAGES += library/python/python-mysql-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-27
 REQUIRED_PACKAGES += system/core-os
 REQUIRED_PACKAGES += system/file-system/zfs
 REQUIRED_PACKAGES += system/storage/fc-utilities
--- a/components/openstack/cinder/cinder.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/cinder.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -23,6 +23,7 @@
 # Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Cinder (Block Storage Service)"
--- a/components/openstack/cinder/files/cinder-api	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/files/cinder-api	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/cinder/files/cinder-backup	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/files/cinder-backup	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/cinder/files/cinder-scheduler	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/files/cinder-scheduler	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/cinder/files/cinder-upgrade	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/files/cinder-upgrade	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/cinder/files/cinder-volume	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/files/cinder-volume	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/cinder/files/cinder-volume-setup	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/cinder/files/cinder-volume-setup	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/common/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/common/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -35,8 +35,8 @@
 ASLR_MODE = $(ASLR_NOT_APPLICABLE)
 
 # Used for placement of openstack_common.py
-PYTHON_VERSIONS=	2.6
-PYTHON_VERSION=		2.6
+PYTHON_VERSIONS=	2.7
+PYTHON_VERSION=		2.7
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
 
 # common targets
--- a/components/openstack/glance/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/glance/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -48,7 +48,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -78,11 +78,11 @@
 
 
 REQUIRED_PACKAGES += cloud/openstack/openstack-common
-REQUIRED_PACKAGES += library/python/eventlet-26
-REQUIRED_PACKAGES += library/python/iniparse-26
-REQUIRED_PACKAGES += library/python/m2crypto-26
-REQUIRED_PACKAGES += library/python/oslo.config-26
-REQUIRED_PACKAGES += library/python/python-mysql-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-26
+REQUIRED_PACKAGES += library/python/eventlet-27
+REQUIRED_PACKAGES += library/python/iniparse-27
+REQUIRED_PACKAGES += library/python/m2crypto-27
+REQUIRED_PACKAGES += library/python/oslo.config-27
+REQUIRED_PACKAGES += library/python/python-mysql-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-27
 REQUIRED_PACKAGES += system/core-os
--- a/components/openstack/glance/files/glance-api	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/glance/files/glance-api	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/glance/files/glance-registry	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/glance/files/glance-registry	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/glance/files/glance-scrubber	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/glance/files/glance-scrubber	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/glance/files/glance-upgrade	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/glance/files/glance-upgrade	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/glance/glance.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/glance/glance.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -23,6 +23,7 @@
 # Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Glance (Image Service)"
--- a/components/openstack/heat/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/heat/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -48,7 +48,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -82,13 +82,13 @@
 
 
 REQUIRED_PACKAGES += cloud/openstack/openstack-common
-REQUIRED_PACKAGES += library/python/eventlet-26
-REQUIRED_PACKAGES += library/python/iniparse-26
-REQUIRED_PACKAGES += library/python/oslo.config-26
-REQUIRED_PACKAGES += library/python/python-mysql-26
-REQUIRED_PACKAGES += library/python/setuptools-26
-REQUIRED_PACKAGES += library/python/six-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-26
+REQUIRED_PACKAGES += library/python/eventlet-27
+REQUIRED_PACKAGES += library/python/iniparse-27
+REQUIRED_PACKAGES += library/python/oslo.config-27
+REQUIRED_PACKAGES += library/python/python-mysql-27
+REQUIRED_PACKAGES += library/python/setuptools-27
+REQUIRED_PACKAGES += library/python/six-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-27
 REQUIRED_PACKAGES += shell/bash
 REQUIRED_PACKAGES += system/core-os
--- a/components/openstack/heat/files/heat-smf-method	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/heat/files/heat-smf-method	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/heat/files/heat-upgrade	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/heat/files/heat-upgrade	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/heat/heat.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/heat/heat.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -23,6 +23,7 @@
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Heat (Orchestration Service)"
--- a/components/openstack/horizon/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/horizon/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -209,11 +209,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
-
-# Django's manage.py needs to be run with Python 2.6, since that's what this
-# ecosystem runs under right now.
-PYTHON_VERSION=		2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -305,23 +301,23 @@
 
 
 # Packages required by Django's manage.py during the Horizon build
-REQUIRED_PACKAGES += library/python/babel-26
-REQUIRED_PACKAGES += library/python/ceilometerclient-26
-REQUIRED_PACKAGES += library/python/cinderclient-26
-REQUIRED_PACKAGES += library/python/django-26
-REQUIRED_PACKAGES += library/python/django-pyscss-26
-REQUIRED_PACKAGES += library/python/django_compressor-26
-REQUIRED_PACKAGES += library/python/django_openstack_auth-26
-REQUIRED_PACKAGES += library/python/glanceclient-26
-REQUIRED_PACKAGES += library/python/heatclient-26
-REQUIRED_PACKAGES += library/python/iso8601-26
-REQUIRED_PACKAGES += library/python/keystoneclient-26
-REQUIRED_PACKAGES += library/python/lockfile-26
-REQUIRED_PACKAGES += library/python/neutronclient-26
-REQUIRED_PACKAGES += library/python/novaclient-26
-REQUIRED_PACKAGES += library/python/oslo.config-26
-REQUIRED_PACKAGES += library/python/requests-26
-REQUIRED_PACKAGES += library/python/saharaclient-26
-REQUIRED_PACKAGES += library/python/six-26
-REQUIRED_PACKAGES += library/python/swiftclient-26
-REQUIRED_PACKAGES += library/python/troveclient-26
+REQUIRED_PACKAGES += library/python/babel-27
+REQUIRED_PACKAGES += library/python/ceilometerclient-27
+REQUIRED_PACKAGES += library/python/cinderclient-27
+REQUIRED_PACKAGES += library/python/django-27
+REQUIRED_PACKAGES += library/python/django-pyscss-27
+REQUIRED_PACKAGES += library/python/django_compressor-27
+REQUIRED_PACKAGES += library/python/django_openstack_auth-27
+REQUIRED_PACKAGES += library/python/glanceclient-27
+REQUIRED_PACKAGES += library/python/heatclient-27
+REQUIRED_PACKAGES += library/python/iso8601-27
+REQUIRED_PACKAGES += library/python/keystoneclient-27
+REQUIRED_PACKAGES += library/python/lockfile-27
+REQUIRED_PACKAGES += library/python/neutronclient-27
+REQUIRED_PACKAGES += library/python/novaclient-27
+REQUIRED_PACKAGES += library/python/oslo.config-27
+REQUIRED_PACKAGES += library/python/requests-27
+REQUIRED_PACKAGES += library/python/saharaclient-27
+REQUIRED_PACKAGES += library/python/six-27
+REQUIRED_PACKAGES += library/python/swiftclient-27
+REQUIRED_PACKAGES += library/python/troveclient-27
--- a/components/openstack/horizon/files/local_settings.py	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/horizon/files/local_settings.py	Fri Jul 10 20:29:35 2015 +0000
@@ -32,11 +32,11 @@
 LOGOUT_URL = '/horizon/auth/logout/'
 LOGIN_REDIRECT_URL = '/horizon'
 
-STATIC_ROOT = '/usr/lib/python2.6/vendor-packages/openstack_dashboard/static'
+STATIC_ROOT = '/usr/lib/python2.7/vendor-packages/openstack_dashboard/static'
 
 # Enable Solaris theme
 TEMPLATE_DIRS = (
-    '/usr/lib/python2.6/vendor-packages/openstack_dashboard/templates/solaris',
+    '/usr/lib/python2.7/vendor-packages/openstack_dashboard/templates/solaris',
 )
 
 # Application files are compressed during packaging
--- a/components/openstack/horizon/files/openstack-dashboard-http.conf	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/horizon/files/openstack-dashboard-http.conf	Fri Jul 10 20:29:35 2015 +0000
@@ -1,25 +1,25 @@
-LoadModule wsgi_module libexec/mod_wsgi-2.6.so
+LoadModule wsgi_module libexec/mod_wsgi-2.7.so
 
 <VirtualHost *:80>
     WSGIScriptAlias /horizon \
-        /usr/lib/python2.6/vendor-packages/openstack_dashboard/wsgi/django.wsgi
+        /usr/lib/python2.7/vendor-packages/openstack_dashboard/wsgi/django.wsgi
     WSGIDaemonProcess horizon user=webservd group=webservd processes=3 \
         threads=10
 
-    Alias /static /usr/lib/python2.6/vendor-packages/openstack_dashboard/static/
+    Alias /static /usr/lib/python2.7/vendor-packages/openstack_dashboard/static/
 
     <Directory />
         Options FollowSymLinks
         AllowOverride None
     </Directory>
 
-    <Directory /usr/lib/python2.6/vendor-packages/openstack_dashboard/static>
+    <Directory /usr/lib/python2.7/vendor-packages/openstack_dashboard/static>
         Options Indexes FollowSymLinks MultiViews
         AllowOverride None
         Require all granted
     </Directory>
 
-    <Directory /usr/lib/python2.6/vendor-packages/openstack_dashboard/wsgi>
+    <Directory /usr/lib/python2.7/vendor-packages/openstack_dashboard/wsgi>
         Options Indexes FollowSymLinks MultiViews
         AllowOverride None
         Require all granted
--- a/components/openstack/horizon/files/openstack-dashboard-tls.conf	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/horizon/files/openstack-dashboard-tls.conf	Fri Jul 10 20:29:35 2015 +0000
@@ -1,5 +1,5 @@
 LoadModule ssl_module	libexec/mod_ssl.so
-LoadModule wsgi_module	libexec/mod_wsgi-2.6.so
+LoadModule wsgi_module	libexec/mod_wsgi-2.7.so
 
 #
 # Enable Solaris Cryptographic Framework
@@ -32,24 +32,24 @@
     SSLCertificateKeyFile /path/to/Server_PEM-encoded_Private_Key_file
 
     WSGIScriptAlias /horizon \
-        /usr/lib/python2.6/vendor-packages/openstack_dashboard/wsgi/django.wsgi
+        /usr/lib/python2.7/vendor-packages/openstack_dashboard/wsgi/django.wsgi
     WSGIDaemonProcess horizon user=webservd group=webservd processes=3 \
         threads=10
 
-    Alias /static /usr/lib/python2.6/vendor-packages/openstack_dashboard/static/
+    Alias /static /usr/lib/python2.7/vendor-packages/openstack_dashboard/static/
 
     <Directory />
         Options FollowSymLinks
         AllowOverride None
     </Directory>
 
-    <Directory /usr/lib/python2.6/vendor-packages/openstack_dashboard/static>
+    <Directory /usr/lib/python2.7/vendor-packages/openstack_dashboard/static>
         Options Indexes FollowSymLinks MultiViews
         AllowOverride None
         Require all granted
     </Directory>
 
-    <Directory /usr/lib/python2.6/vendor-packages/openstack_dashboard/wsgi>
+    <Directory /usr/lib/python2.7/vendor-packages/openstack_dashboard/wsgi>
         Options Indexes FollowSymLinks MultiViews
         AllowOverride None
         Require all granted
--- a/components/openstack/horizon/patches/99-remove.xstatic.patch	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/horizon/patches/99-remove.xstatic.patch	Fri Jul 10 20:29:35 2015 +0000
@@ -6,8 +6,8 @@
 than during gmake prep.  We need the xstatic functionality to collect
 all the JavaScript libraries before packaging.
 
---- a/usr/lib/python2.6/vendor-packages/openstack_dashboard/settings.py	2015-01-13 10:40:30.930622964 -0700
-+++ b/usr/lib/python2.6/vendor-packages/openstack_dashboard/settings.py	2015-01-13 10:40:57.470743881 -0700
+--- a/usr/lib/python2.7/vendor-packages/openstack_dashboard/settings.py	2015-01-13 10:40:30.930622964 -0700
++++ b/usr/lib/python2.7/vendor-packages/openstack_dashboard/settings.py	2015-01-13 10:40:57.470743881 -0700
 @@ -22,21 +22,6 @@ import sys
  import warnings
 
--- a/components/openstack/ironic/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/ironic/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -48,7 +48,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
--- a/components/openstack/ironic/files/ironic-api	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/ironic/files/ironic-api	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/ironic/files/ironic-conductor	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/ironic/files/ironic-conductor	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/ironic/files/ironic-db	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/ironic/files/ironic-db	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/ironic/ironic.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/ironic/ironic.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -23,6 +23,7 @@
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Ironic"
--- a/components/openstack/keystone/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/keystone/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -48,7 +48,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -74,11 +74,11 @@
 
 
 REQUIRED_PACKAGES += cloud/openstack/openstack-common
-REQUIRED_PACKAGES += library/python/iniparse-26
-REQUIRED_PACKAGES += library/python/oslo.config-26
-REQUIRED_PACKAGES += library/python/pbr-26
-REQUIRED_PACKAGES += library/python/python-mysql-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-26
+REQUIRED_PACKAGES += library/python/iniparse-27
+REQUIRED_PACKAGES += library/python/oslo.config-27
+REQUIRED_PACKAGES += library/python/pbr-27
+REQUIRED_PACKAGES += library/python/python-mysql-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-27
 REQUIRED_PACKAGES += library/security/openssl
 REQUIRED_PACKAGES += system/core-os
--- a/components/openstack/keystone/files/keystone	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/keystone/files/keystone	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/keystone/files/keystone-upgrade	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/keystone/files/keystone-upgrade	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/keystone/keystone.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/keystone/keystone.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -23,6 +23,7 @@
 # Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Keystone (Identity Service)"
--- a/components/openstack/neutron/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -48,7 +48,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -77,13 +77,13 @@
 	     files/agent/solaris/ipfilters_manager.py \
 	     files/agent/solaris/net_lib.py \
 	     files/agent/solaris/ra.py \
-	     $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/agent/solaris; \
-	 $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs; \
-	 $(TOUCH) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/__init__.py; \
-	 $(CP) files/evs/plugin.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs; \
-         $(MKDIR) $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/migrate; \
-         $(CP) files/evs/migrate/__init__.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/migrate; \
-         $(CP) files/evs/migrate/havana_api.py $(PROTO_DIR)/usr/lib/python$(PYTHON_VERSION)/vendor-packages/neutron/plugins/evs/migrate)
+	     $(PROTO_DIR)$(PYTHON_LIB)/neutron/agent/solaris; \
+	 $(MKDIR) $(PROTO_DIR)$(PYTHON_LIB)/neutron/plugins/evs; \
+	 $(TOUCH) $(PROTO_DIR)$(PYTHON_LIB)/neutron/plugins/evs/__init__.py; \
+	 $(CP) files/evs/plugin.py $(PROTO_DIR)$(PYTHON_LIB)/neutron/plugins/evs; \
+         $(MKDIR) $(PROTO_DIR)$(PYTHON_LIB)/neutron/plugins/evs/migrate; \
+         $(CP) files/evs/migrate/__init__.py $(PROTO_DIR)$(PYTHON_LIB)/neutron/plugins/evs/migrate; \
+         $(CP) files/evs/migrate/havana_api.py $(PROTO_DIR)$(PYTHON_LIB)/neutron/plugins/evs/migrate)
 
 COMPONENT_POST_INSTALL_ACTION += \
 	$(PYTHON) -m compileall $(PROTO_DIR)/$(PYTHON_VENDOR_PACKAGES)
@@ -97,15 +97,15 @@
 
 
 REQUIRED_PACKAGES += cloud/openstack/openstack-common
-REQUIRED_PACKAGES += library/python/eventlet-26
-REQUIRED_PACKAGES += library/python/iniparse-26
-REQUIRED_PACKAGES += library/python/netaddr-26
-REQUIRED_PACKAGES += library/python/oslo.config-26
-REQUIRED_PACKAGES += library/python/oslo.db-26
-REQUIRED_PACKAGES += library/python/python-mysql-26
-REQUIRED_PACKAGES += library/python/simplejson-26
-REQUIRED_PACKAGES += library/python/six-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-26
+REQUIRED_PACKAGES += library/python/eventlet-27
+REQUIRED_PACKAGES += library/python/iniparse-27
+REQUIRED_PACKAGES += library/python/netaddr-27
+REQUIRED_PACKAGES += library/python/oslo.config-27
+REQUIRED_PACKAGES += library/python/oslo.db-27
+REQUIRED_PACKAGES += library/python/python-mysql-27
+REQUIRED_PACKAGES += library/python/simplejson-27
+REQUIRED_PACKAGES += library/python/six-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-27
 REQUIRED_PACKAGES += network/ipfilter
 REQUIRED_PACKAGES += service/network/dnsmasq
 REQUIRED_PACKAGES += service/network/evs
--- a/components/openstack/neutron/files/evs/migrate/evs-neutron-migration.py	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/files/evs/migrate/evs-neutron-migration.py	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 #
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/neutron/files/neutron-dhcp-agent	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/files/neutron-dhcp-agent	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/neutron/files/neutron-l3-agent	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/files/neutron-l3-agent	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/neutron/files/neutron-metadata-agent	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/files/neutron-metadata-agent	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/neutron/files/neutron-server	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/files/neutron-server	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/neutron/files/neutron-upgrade	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/files/neutron-upgrade	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/neutron/neutron.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/neutron/neutron.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -23,6 +23,7 @@
 # Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Neutron (Networking Service)"
@@ -1014,9 +1015,6 @@
 # force a dependency on alembic; pkgdepend work is needed to flush this out.
 depend type=require fmri=library/python/alembic-$(PYV)
 
-# force a dependency on argparse; pkgdepend work is needed to flush this out.
-depend type=require fmri=library/python/argparse-$(PYV)
-
 # force a dependency on babel; pkgdepend work is needed to flush this out.
 depend type=require fmri=library/python/babel-$(PYV)
 
--- a/components/openstack/nova/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -48,7 +48,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -61,7 +61,7 @@
 # the proto directory for pkgdepend(1) to find.
 #
 COMPONENT_POST_INSTALL_ACTION += \
-	($(CP) /dev/null $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/nova/virt/libvirt/__init__.py; \
+	($(CP) /dev/null $(PROTO_DIR)$(PYTHON_LIB)/nova/virt/libvirt/__init__.py; \
          $(MKDIR) $(PROTO_DIR)/lib/svc/manifest/application/openstack; \
          $(CP) \
              files/nova-api-ec2.xml \
@@ -79,13 +79,13 @@
              $(PROTO_DIR)/lib/svc/manifest/application/openstack; \
 	 $(CP) \
 	     files/network/solaris_net.py \
-	     $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/nova/network; \
-	 $(MKDIR) $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/nova/virt/solariszones; \
+	     $(PROTO_DIR)$(PYTHON_LIB)/nova/network; \
+	 $(MKDIR) $(PROTO_DIR)$(PYTHON_LIB)/nova/virt/solariszones; \
 	 $(CP) \
 	     files/solariszones/__init__.py \
 	     files/solariszones/driver.py \
 	     files/solariszones/sysconfig.py \
-	     $(PROTO_DIR)/usr/lib/python2.6/vendor-packages/nova/virt/solariszones); \
+	     $(PROTO_DIR)$(PYTHON_LIB)/nova/virt/solariszones); \
 	$(PYTHON) -m compileall $(PROTO_DIR)/$(PYTHON_VENDOR_PACKAGES)
 
 # common targets
@@ -98,13 +98,13 @@
 
 REQUIRED_PACKAGES += cloud/openstack/openstack-common
 REQUIRED_PACKAGES += install/archive
-REQUIRED_PACKAGES += library/python/eventlet-26
-REQUIRED_PACKAGES += library/python/iniparse-26
-REQUIRED_PACKAGES += library/python/oslo.config-26
-REQUIRED_PACKAGES += library/python/python-mysql-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-26
-REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-26
-REQUIRED_PACKAGES += library/python/webob-26
+REQUIRED_PACKAGES += library/python/eventlet-27
+REQUIRED_PACKAGES += library/python/iniparse-27
+REQUIRED_PACKAGES += library/python/oslo.config-27
+REQUIRED_PACKAGES += library/python/python-mysql-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-27
+REQUIRED_PACKAGES += library/python/sqlalchemy-migrate-27
+REQUIRED_PACKAGES += library/python/webob-27
 REQUIRED_PACKAGES += service/network/evs
 REQUIRED_PACKAGES += system/core-os
 REQUIRED_PACKAGES += system/file-system/zfs
--- a/components/openstack/nova/files/nova-api	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-api	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-cert	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-cert	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-compute	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-compute	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-conductor	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-conductor	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-consoleauth	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-consoleauth	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-novncproxy	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-novncproxy	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-objectstore	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-objectstore	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-scheduler	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-scheduler	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/nova/files/nova-upgrade	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova-upgrade	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/nova/files/nova.conf	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/nova.conf	Fri Jul 10 20:29:35 2015 +0000
@@ -284,7 +284,7 @@
 
 # Directory where the nova python module is installed (string
 # value)
-pybasedir=/usr/lib/python2.6/vendor-packages
+pybasedir=/usr/lib/python2.7/vendor-packages
 
 # Directory where nova binaries are installed (string value)
 bindir=/usr/bin
--- a/components/openstack/nova/files/zone-vnc-console	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/files/zone-vnc-console	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/nova/nova.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/nova/nova.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -23,6 +23,7 @@
 # Copyright (c) 2012, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Nova (Compute Service)"
--- a/components/openstack/swift/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/swift/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -47,7 +47,7 @@
 
 # Since this is an app, and doesn't provide any public library interfaces, we
 # only need to deliver one version.  The manifest is parameterized, though.
-PYTHON_VERSIONS=	2.6
+PYTHON_VERSIONS=	2.7
 
 PKG_MACROS +=		COMPONENT_BE_VERSION=$(COMPONENT_BE_VERSION)
 PKG_MACROS +=		PYVER=$(PYTHON_VERSIONS)
@@ -79,9 +79,9 @@
 
 
 REQUIRED_PACKAGES += cloud/openstack/openstack-common
-REQUIRED_PACKAGES += library/python/eventlet-26
-REQUIRED_PACKAGES += library/python/iniparse-26
-REQUIRED_PACKAGES += library/python/simplejson-26
-REQUIRED_PACKAGES += library/python/swiftclient-26
+REQUIRED_PACKAGES += library/python/eventlet-27
+REQUIRED_PACKAGES += library/python/iniparse-27
+REQUIRED_PACKAGES += library/python/simplejson-27
+REQUIRED_PACKAGES += library/python/swiftclient-27
 REQUIRED_PACKAGES += service/memcached
 REQUIRED_PACKAGES += system/core-os
--- a/components/openstack/swift/files/swift-replicator-rsync	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/swift/files/swift-replicator-rsync	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/swift/files/swift-smf-method	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/swift/files/swift-smf-method	Fri Jul 10 20:29:35 2015 +0000
@@ -1,6 +1,6 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
-# Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
 #    not use this file except in compliance with the License. You may obtain
--- a/components/openstack/swift/files/swift-upgrade	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/swift/files/swift-upgrade	Fri Jul 10 20:29:35 2015 +0000
@@ -1,4 +1,4 @@
-#!/usr/bin/python2.6
+#!/usr/bin/python2.7
 
 # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
 #
--- a/components/openstack/swift/swift.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/openstack/swift/swift.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -42,6 +42,7 @@
 <transform file path=usr/lib/swift/(.*) -> default mode 0555>
 <transform file path=usr/share/man/man1/(.+) -> set action.hash doc/manpages/%<1>>
 <transform file path=usr/share/man/man4/(.+)\.4 -> set action.hash doc/manpages/%<1>.5>
+<transform file path=lib/svc/method/.* -> add pkg.depend.bypass-generate .*/smf_include.*>
 set name=pkg.fmri \
     value=pkg:/cloud/openstack/[email protected]$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
 set name=pkg.summary value="OpenStack Swift (Object Storage Service)"
--- a/components/python/networkx/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/python/networkx/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -37,9 +37,8 @@
 
 TPNO=			21625
 
-# Depends on python-extra (numpy) which is not Python 3 ready, and isn't
-# built yet for 2.7.
-PYTHON_VERSIONS=	2.6
+# Depends on python-extra (numpy) which is not Python 3 ready.
+PYTHON_VERSIONS=	2.7 2.6
 
 include $(WS_MAKE_RULES)/prep.mk
 include $(WS_MAKE_RULES)/setup.py.mk
--- a/components/python/networkx/networkx-PYVER.p5m	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/python/networkx/networkx-PYVER.p5m	Fri Jul 10 20:29:35 2015 +0000
@@ -248,3 +248,7 @@
 
 # force a dependency on pyparsing; pkgdepend work is needed to flush this out.
 depend type=require fmri=library/python/pyparsing-$(PYV)
+
+# force a dependency on python-extra; pkgdepend work is needed to flush this
+# out.
+$(PYTHON_2.7_ONLY)depend type=require fmri=library/python/python-extra-$(PYV)
--- a/components/python/taskflow/Makefile	Thu Jul 09 18:19:03 2015 -0700
+++ b/components/python/taskflow/Makefile	Fri Jul 10 20:29:35 2015 +0000
@@ -37,9 +37,8 @@
 
 TPNO=			21638
 
-# Depends on networkx which is not Python 3 ready and can't build a 2.7 version
-# due to a dependency on numpy (python-extra).
-PYTHON_VERSIONS=	2.6
+# Depends on networkx which is not Python 3 ready.
+PYTHON_VERSIONS=	2.7 2.6
 
 include $(WS_MAKE_RULES)/prep.mk
 include $(WS_MAKE_RULES)/setup.py.mk