From e96b904fea71159a43afdd28af9f6a5921af0418 Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Mon, 16 May 2011 18:09:26 -0500 Subject: MySQL database tables are using the MyISAM engine. Created migration script to change all current tables to InnoDB. --- Authors | 1 + 1 file changed, 1 insertion(+) diff --git a/Authors b/Authors index 546c9091f..b17c4f63e 100644 --- a/Authors +++ b/Authors @@ -28,6 +28,7 @@ Gabe Westmaas Hisaharu Ishii Hisaki Ohara Ilya Alekseyev +Jason Cannavale Jason Koelker Jay Pipes Jesse Andrews -- cgit From 2b5652b4ec191d3f31ce35684f0dd86f033416c2 Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Mon, 16 May 2011 18:13:08 -0500 Subject: MySQL database tables are using the MyISAM engine. Created migration script to change all current tables to InnoDB. --- .../versions/017_set_engine_mysql_innodb.py | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py diff --git a/nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py new file mode 100644 index 000000000..be7ff5abd --- /dev/null +++ b/nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py @@ -0,0 +1,57 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2011 OpenStack LLC. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from sqlalchemy import MetaData, Table + +meta = MetaData() + +def upgrade(migrate_engine): + # Upgrade operations go here. Don't create your own engine; + # bind migrate_engine to your metadata + meta.bind = migrate_engine + if migrate_engine.name == "mysql": + migrate_engine.execute("ALTER TABLE auth_tokens Engine=InnoDB") + migrate_engine.execute("ALTER TABLE certificates Engine=InnoDB") + migrate_engine.execute("ALTER TABLE compute_nodes Engine=InnoDB") + migrate_engine.execute("ALTER TABLE console_pools Engine=InnoDB") + migrate_engine.execute("ALTER TABLE consoles Engine=InnoDB") + migrate_engine.execute("ALTER TABLE export_devices Engine=InnoDB") + migrate_engine.execute("ALTER TABLE fixed_ips Engine=InnoDB") + migrate_engine.execute("ALTER TABLE floating_ips Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_actions Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_metadata Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_types Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instances Engine=InnoDB") + migrate_engine.execute("ALTER TABLE iscsi_targets Engine=InnoDB") + migrate_engine.execute("ALTER TABLE key_pairs Engine=InnoDB") + migrate_engine.execute("ALTER TABLE migrate_version Engine=InnoDB") + migrate_engine.execute("ALTER TABLE migrations Engine=InnoDB") + migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") + migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") + migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_instance_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_rules Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") + migrate_engine.execute("ALTER TABLE services Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE users Engine=InnoDB") + migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") + migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") + +def downgrade(migrate_engine): + meta.bind = migrate_engine -- cgit From 3ff9051c2ae60493d39d7e276c61689ffca2ac8d Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 17 May 2011 20:38:02 -0500 Subject: MySQL database tables are using the MyISAM engine. Created migration script to change all current tables to InnoDB, updated version to 019 --- .../versions/017_set_engine_mysql_innodb.py | 57 ---------------------- 1 file changed, 57 deletions(-) delete mode 100644 nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py diff --git a/nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py deleted file mode 100644 index be7ff5abd..000000000 --- a/nova/db/sqlalchemy/migrate_repo/versions/017_set_engine_mysql_innodb.py +++ /dev/null @@ -1,57 +0,0 @@ -# vim: tabstop=4 shiftwidth=4 softtabstop=4 - -# Copyright 2011 OpenStack LLC. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -from sqlalchemy import MetaData, Table - -meta = MetaData() - -def upgrade(migrate_engine): - # Upgrade operations go here. Don't create your own engine; - # bind migrate_engine to your metadata - meta.bind = migrate_engine - if migrate_engine.name == "mysql": - migrate_engine.execute("ALTER TABLE auth_tokens Engine=InnoDB") - migrate_engine.execute("ALTER TABLE certificates Engine=InnoDB") - migrate_engine.execute("ALTER TABLE compute_nodes Engine=InnoDB") - migrate_engine.execute("ALTER TABLE console_pools Engine=InnoDB") - migrate_engine.execute("ALTER TABLE consoles Engine=InnoDB") - migrate_engine.execute("ALTER TABLE export_devices Engine=InnoDB") - migrate_engine.execute("ALTER TABLE fixed_ips Engine=InnoDB") - migrate_engine.execute("ALTER TABLE floating_ips Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instance_actions Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instance_metadata Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instance_types Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instances Engine=InnoDB") - migrate_engine.execute("ALTER TABLE iscsi_targets Engine=InnoDB") - migrate_engine.execute("ALTER TABLE key_pairs Engine=InnoDB") - migrate_engine.execute("ALTER TABLE migrate_version Engine=InnoDB") - migrate_engine.execute("ALTER TABLE migrations Engine=InnoDB") - migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") - migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") - migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_group_instance_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_group_rules Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") - migrate_engine.execute("ALTER TABLE services Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_project_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_project_role_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_role_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE users Engine=InnoDB") - migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") - migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") - -def downgrade(migrate_engine): - meta.bind = migrate_engine -- cgit From d43603e2702f41936a9a85915280b9d773d6c74c Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 17 May 2011 20:38:18 -0500 Subject: MySQL database tables are using the MyISAM engine. Created migration script to change all current tables to InnoDB, updated version to 019 --- .../versions/019_set_engine_mysql_innodb.py | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py diff --git a/nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py new file mode 100644 index 000000000..be7ff5abd --- /dev/null +++ b/nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py @@ -0,0 +1,57 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2011 OpenStack LLC. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from sqlalchemy import MetaData, Table + +meta = MetaData() + +def upgrade(migrate_engine): + # Upgrade operations go here. Don't create your own engine; + # bind migrate_engine to your metadata + meta.bind = migrate_engine + if migrate_engine.name == "mysql": + migrate_engine.execute("ALTER TABLE auth_tokens Engine=InnoDB") + migrate_engine.execute("ALTER TABLE certificates Engine=InnoDB") + migrate_engine.execute("ALTER TABLE compute_nodes Engine=InnoDB") + migrate_engine.execute("ALTER TABLE console_pools Engine=InnoDB") + migrate_engine.execute("ALTER TABLE consoles Engine=InnoDB") + migrate_engine.execute("ALTER TABLE export_devices Engine=InnoDB") + migrate_engine.execute("ALTER TABLE fixed_ips Engine=InnoDB") + migrate_engine.execute("ALTER TABLE floating_ips Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_actions Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_metadata Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_types Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instances Engine=InnoDB") + migrate_engine.execute("ALTER TABLE iscsi_targets Engine=InnoDB") + migrate_engine.execute("ALTER TABLE key_pairs Engine=InnoDB") + migrate_engine.execute("ALTER TABLE migrate_version Engine=InnoDB") + migrate_engine.execute("ALTER TABLE migrations Engine=InnoDB") + migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") + migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") + migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_instance_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_rules Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") + migrate_engine.execute("ALTER TABLE services Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE users Engine=InnoDB") + migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") + migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") + +def downgrade(migrate_engine): + meta.bind = migrate_engine -- cgit From 0f7ac8903dd05d3477bad014c269470d395c879a Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 11:20:40 -0500 Subject: MySQL database tables are currently using the MyISAM engine. Created migration script nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py to change all current tables to InnoDB. --- .../versions/019_set_engine_mysql_innodb.py | 57 ---------------------- .../versions/020_set_engine_mysql_innodb.py | 57 ++++++++++++++++++++++ 2 files changed, 57 insertions(+), 57 deletions(-) delete mode 100644 nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py create mode 100644 nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py diff --git a/nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py deleted file mode 100644 index be7ff5abd..000000000 --- a/nova/db/sqlalchemy/migrate_repo/versions/019_set_engine_mysql_innodb.py +++ /dev/null @@ -1,57 +0,0 @@ -# vim: tabstop=4 shiftwidth=4 softtabstop=4 - -# Copyright 2011 OpenStack LLC. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. - -from sqlalchemy import MetaData, Table - -meta = MetaData() - -def upgrade(migrate_engine): - # Upgrade operations go here. Don't create your own engine; - # bind migrate_engine to your metadata - meta.bind = migrate_engine - if migrate_engine.name == "mysql": - migrate_engine.execute("ALTER TABLE auth_tokens Engine=InnoDB") - migrate_engine.execute("ALTER TABLE certificates Engine=InnoDB") - migrate_engine.execute("ALTER TABLE compute_nodes Engine=InnoDB") - migrate_engine.execute("ALTER TABLE console_pools Engine=InnoDB") - migrate_engine.execute("ALTER TABLE consoles Engine=InnoDB") - migrate_engine.execute("ALTER TABLE export_devices Engine=InnoDB") - migrate_engine.execute("ALTER TABLE fixed_ips Engine=InnoDB") - migrate_engine.execute("ALTER TABLE floating_ips Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instance_actions Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instance_metadata Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instance_types Engine=InnoDB") - migrate_engine.execute("ALTER TABLE instances Engine=InnoDB") - migrate_engine.execute("ALTER TABLE iscsi_targets Engine=InnoDB") - migrate_engine.execute("ALTER TABLE key_pairs Engine=InnoDB") - migrate_engine.execute("ALTER TABLE migrate_version Engine=InnoDB") - migrate_engine.execute("ALTER TABLE migrations Engine=InnoDB") - migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") - migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") - migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_group_instance_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_group_rules Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") - migrate_engine.execute("ALTER TABLE services Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_project_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_project_role_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_role_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE users Engine=InnoDB") - migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") - migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") - -def downgrade(migrate_engine): - meta.bind = migrate_engine diff --git a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py new file mode 100644 index 000000000..be7ff5abd --- /dev/null +++ b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py @@ -0,0 +1,57 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2011 OpenStack LLC. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +from sqlalchemy import MetaData, Table + +meta = MetaData() + +def upgrade(migrate_engine): + # Upgrade operations go here. Don't create your own engine; + # bind migrate_engine to your metadata + meta.bind = migrate_engine + if migrate_engine.name == "mysql": + migrate_engine.execute("ALTER TABLE auth_tokens Engine=InnoDB") + migrate_engine.execute("ALTER TABLE certificates Engine=InnoDB") + migrate_engine.execute("ALTER TABLE compute_nodes Engine=InnoDB") + migrate_engine.execute("ALTER TABLE console_pools Engine=InnoDB") + migrate_engine.execute("ALTER TABLE consoles Engine=InnoDB") + migrate_engine.execute("ALTER TABLE export_devices Engine=InnoDB") + migrate_engine.execute("ALTER TABLE fixed_ips Engine=InnoDB") + migrate_engine.execute("ALTER TABLE floating_ips Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_actions Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_metadata Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instance_types Engine=InnoDB") + migrate_engine.execute("ALTER TABLE instances Engine=InnoDB") + migrate_engine.execute("ALTER TABLE iscsi_targets Engine=InnoDB") + migrate_engine.execute("ALTER TABLE key_pairs Engine=InnoDB") + migrate_engine.execute("ALTER TABLE migrate_version Engine=InnoDB") + migrate_engine.execute("ALTER TABLE migrations Engine=InnoDB") + migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") + migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") + migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_instance_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_rules Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") + migrate_engine.execute("ALTER TABLE services Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE users Engine=InnoDB") + migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") + migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") + +def downgrade(migrate_engine): + meta.bind = migrate_engine -- cgit From 6bf9bd5f785ed4fc1ca576e5b729e75fc0a3aa27 Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 11:25:38 -0500 Subject: MySQL database tables are currently using the MyISAM engine. Created migration script nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py to change all current tables to InnoDB. --- Authors | 1 + 1 file changed, 1 insertion(+) diff --git a/Authors b/Authors index b17c4f63e..0ce729261 100644 --- a/Authors +++ b/Authors @@ -28,6 +28,7 @@ Gabe Westmaas Hisaharu Ishii Hisaki Ohara Ilya Alekseyev +Isaku Yamahata Jason Cannavale Jason Koelker Jay Pipes -- cgit From b6e9072a89396aaf1ab616671fd427ec059a2daa Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 11:31:35 -0500 Subject: Cleaned up pep8 errors. --- Authors | 1 - .../versions/020_set_engine_mysql_innodb.py | 17 ++++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/Authors b/Authors index 0ce729261..b17c4f63e 100644 --- a/Authors +++ b/Authors @@ -28,7 +28,6 @@ Gabe Westmaas Hisaharu Ishii Hisaki Ohara Ilya Alekseyev -Isaku Yamahata Jason Cannavale Jason Koelker Jay Pipes diff --git a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py index be7ff5abd..32126a453 100644 --- a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py +++ b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py @@ -18,6 +18,7 @@ from sqlalchemy import MetaData, Table meta = MetaData() + def upgrade(migrate_engine): # Upgrade operations go here. Don't create your own engine; # bind migrate_engine to your metadata @@ -42,16 +43,22 @@ def upgrade(migrate_engine): migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_group_instance_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_group_rules Engine=InnoDB") + migrate_engine.execute("ALTER TABLE + security_group_instance_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE + security_group_rules Engine=InnoDB") migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") migrate_engine.execute("ALTER TABLE services Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_project_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_project_role_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE user_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE + user_project_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE + user_project_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE + user_role_association Engine=InnoDB") migrate_engine.execute("ALTER TABLE users Engine=InnoDB") migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") + def downgrade(migrate_engine): meta.bind = migrate_engine -- cgit From 51247c01f8ec3b89657c130935d039ae9fa776b0 Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 11:35:13 -0500 Subject: Cleaned up text conflict. --- .../migrate_repo/versions/020_set_engine_mysql_innodb.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py index 32126a453..9b565598f 100644 --- a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py +++ b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py @@ -43,18 +43,25 @@ def upgrade(migrate_engine): migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_instance_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_group_rules Engine=InnoDB") + migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") migrate_engine.execute("ALTER TABLE services Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_project_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE user_role_association Engine=InnoDB") + migrate_engine.execute("ALTER TABLE users Engine=InnoDB") migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") -- cgit From e16ac0dbe6d1ca73ef6bb8f906c2dfdf2269ab6d Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 11:43:38 -0500 Subject: Cleaned up text conflict. --- Authors | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Authors b/Authors index b17c4f63e..53b336ce1 100644 --- a/Authors +++ b/Authors @@ -1,4 +1,5 @@ Alex Meade +Andrey Brindeyev Andy Smith Andy Southgate Anne Gentle @@ -16,6 +17,7 @@ Christian Berendt Chuck Short Cory Wright Dan Prince +Dave Walker David Pravec Dean Troyer Devin Carlen @@ -28,6 +30,7 @@ Gabe Westmaas Hisaharu Ishii Hisaki Ohara Ilya Alekseyev +Isaku Yamahata Jason Cannavale Jason Koelker Jay Pipes @@ -65,6 +68,7 @@ Nachi Ueno Naveed Massjouni Nirmal Ranganathan Paul Voccio +Renuka Apte Ricardo Carrillo Cruz Rick Clark Rick Harris @@ -81,6 +85,7 @@ Trey Morris Tushar Patil Vasiliy Shlykov Vishvananda Ishaya +Vivek Y S William Wolf Yoshiaki Tamura Youcef Laribi -- cgit From 2010bd7f8c200a95496cc47e395a21fc9f4e278e Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 16:23:17 -0500 Subject: Cleaned up bug introduced after fixing ^Cp8 errors. --- .../versions/020_set_engine_mysql_innodb.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py index 9b565598f..960b04037 100644 --- a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py +++ b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py @@ -44,23 +44,23 @@ def upgrade(migrate_engine): migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") - migrate_engine.execute("ALTER TABLE - security_group_instance_association Engine=InnoDB") + migrate_engine.execute( + "ALTER TABLE security_group_instance_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE - security_group_rules Engine=InnoDB") + migrate_engine.execute( + "ALTER TABLE security_group_rules Engine=InnoDB") migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") migrate_engine.execute("ALTER TABLE services Engine=InnoDB") - migrate_engine.execute("ALTER TABLE - user_project_association Engine=InnoDB") + migrate_engine.execute( + "ALTER TABLE user_project_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE - user_project_role_association Engine=InnoDB") + migrate_engine.execute( + "ALTER TABLE user_project_role_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE - user_role_association Engine=InnoDB") + migrate_engine.execute( + "ALTER TABLE user_role_association Engine=InnoDB") migrate_engine.execute("ALTER TABLE users Engine=InnoDB") migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") -- cgit From 75cf63108befbc4dbc7f61c36862a43defb90654 Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 16:28:43 -0500 Subject: Cleaned up bug introduced after fixing pep8 errors. --- .../migrate_repo/versions/020_set_engine_mysql_innodb.py | 7 ------- 1 file changed, 7 deletions(-) diff --git a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py index 960b04037..c49e37733 100644 --- a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py +++ b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py @@ -43,25 +43,18 @@ def upgrade(migrate_engine): migrate_engine.execute("ALTER TABLE networks Engine=InnoDB") migrate_engine.execute("ALTER TABLE projects Engine=InnoDB") migrate_engine.execute("ALTER TABLE quotas Engine=InnoDB") - migrate_engine.execute( "ALTER TABLE security_group_instance_association Engine=InnoDB") - migrate_engine.execute( "ALTER TABLE security_group_rules Engine=InnoDB") - migrate_engine.execute("ALTER TABLE security_groups Engine=InnoDB") migrate_engine.execute("ALTER TABLE services Engine=InnoDB") - migrate_engine.execute( "ALTER TABLE user_project_association Engine=InnoDB") - migrate_engine.execute( "ALTER TABLE user_project_role_association Engine=InnoDB") - migrate_engine.execute( "ALTER TABLE user_role_association Engine=InnoDB") - migrate_engine.execute("ALTER TABLE users Engine=InnoDB") migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") -- cgit From abeef6b6942b05469daceac4f95ac75f5b23fda5 Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 16:41:32 -0500 Subject: Added new snapshots table to InnoDB migrations. --- nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py | 1 + 1 file changed, 1 insertion(+) diff --git a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py index c49e37733..6e590479f 100644 --- a/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py +++ b/nova/db/sqlalchemy/migrate_repo/versions/020_set_engine_mysql_innodb.py @@ -58,6 +58,7 @@ def upgrade(migrate_engine): migrate_engine.execute("ALTER TABLE users Engine=InnoDB") migrate_engine.execute("ALTER TABLE volumes Engine=InnoDB") migrate_engine.execute("ALTER TABLE zones Engine=InnoDB") + migrate_engine.execute("ALTER TABLE snapshots Engine=InnoDB") def downgrade(migrate_engine): -- cgit From 2ff20fdde84ea80d910b6a16e83135fca1aabafa Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 16:53:30 -0500 Subject: Incremented version of migration script to reflect changes in trunk. --- dist/nova-2011.3-py2.6.egg | Bin 1563180 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 dist/nova-2011.3-py2.6.egg diff --git a/dist/nova-2011.3-py2.6.egg b/dist/nova-2011.3-py2.6.egg deleted file mode 100644 index 8a8808d31..000000000 Binary files a/dist/nova-2011.3-py2.6.egg and /dev/null differ -- cgit From de7ae78561641bab3ba2d5783ec64acf67e96fb3 Mon Sep 17 00:00:00 2001 From: Jason Cannavale Date: Tue, 31 May 2011 16:59:30 -0500 Subject: Incremented version of migration script to reflect changes in trunk. --- nova.egg-info/PKG-INFO | 10 - nova.egg-info/SOURCES.txt | 641 ------------------------------------- nova.egg-info/dependency_links.txt | 1 - nova.egg-info/top_level.txt | 1 - 4 files changed, 653 deletions(-) delete mode 100644 nova.egg-info/PKG-INFO delete mode 100644 nova.egg-info/SOURCES.txt delete mode 100644 nova.egg-info/dependency_links.txt delete mode 100644 nova.egg-info/top_level.txt diff --git a/nova.egg-info/PKG-INFO b/nova.egg-info/PKG-INFO deleted file mode 100644 index 66fe27559..000000000 --- a/nova.egg-info/PKG-INFO +++ /dev/null @@ -1,10 +0,0 @@ -Metadata-Version: 1.0 -Name: nova -Version: 2011.3 -Summary: cloud computing fabric controller -Home-page: http://www.openstack.org/ -Author: OpenStack -Author-email: nova@lists.launchpad.net -License: UNKNOWN -Description: UNKNOWN -Platform: UNKNOWN diff --git a/nova.egg-info/SOURCES.txt b/nova.egg-info/SOURCES.txt deleted file mode 100644 index f45cd523a..000000000 --- a/nova.egg-info/SOURCES.txt +++ /dev/null @@ -1,641 +0,0 @@ -Authors -HACKING -LICENSE -MANIFEST.in -README -builddeb.sh -pylintrc -run_tests.py -run_tests.sh -setup.cfg -setup.py -bin/nova-ajax-console-proxy -bin/nova-api -bin/nova-compute -bin/nova-console -bin/nova-dhcpbridge -bin/nova-direct-api -bin/nova-import-canonical-imagestore -bin/nova-instancemonitor -bin/nova-logspool -bin/nova-manage -bin/nova-network -bin/nova-objectstore -bin/nova-scheduler -bin/nova-spoolsentry -bin/nova-vncproxy -bin/nova-volume -bin/stack -bzrplugins/novalog/__init__.py -contrib/nova.sh -contrib/boto_v6/__init__.py -contrib/boto_v6/ec2/__init__.py -contrib/boto_v6/ec2/connection.py -contrib/boto_v6/ec2/instance.py -doc/.autogenerated -doc/Makefile -doc/README.rst -doc/find_autodoc_modules.sh -doc/generate_autodoc_index.sh -doc/build/.placeholder -doc/build/html/.buildinfo -doc/ext/__init__.py -doc/ext/nova_autodoc.py -doc/ext/nova_todo.py -doc/source/cloud101.rst -doc/source/code.rst -doc/source/community.rst -doc/source/conf.py -doc/source/conf_back.py -doc/source/index.rst -doc/source/installer.rst -doc/source/livecd.rst -doc/source/nova.concepts.rst -doc/source/object.model.rst -doc/source/quickstart.rst -doc/source/service.architecture.rst -doc/source/vmwareapi_readme.rst -doc/source/_ga/layout.html -doc/source/_static/.placeholder -doc/source/_static/jquery.tweet.js -doc/source/_static/tweaks.css -doc/source/_templates/.placeholder -doc/source/_theme/layout.html -doc/source/_theme/theme.conf -doc/source/api/autoindex.rst -doc/source/api/nova..adminclient.rst -doc/source/api/nova..api.direct.rst -doc/source/api/nova..api.ec2.admin.rst -doc/source/api/nova..api.ec2.apirequest.rst -doc/source/api/nova..api.ec2.cloud.rst -doc/source/api/nova..api.ec2.metadatarequesthandler.rst -doc/source/api/nova..api.openstack.auth.rst -doc/source/api/nova..api.openstack.backup_schedules.rst -doc/source/api/nova..api.openstack.common.rst -doc/source/api/nova..api.openstack.consoles.rst -doc/source/api/nova..api.openstack.faults.rst -doc/source/api/nova..api.openstack.flavors.rst -doc/source/api/nova..api.openstack.images.rst -doc/source/api/nova..api.openstack.servers.rst -doc/source/api/nova..api.openstack.shared_ip_groups.rst -doc/source/api/nova..api.openstack.zones.rst -doc/source/api/nova..auth.dbdriver.rst -doc/source/api/nova..auth.fakeldap.rst -doc/source/api/nova..auth.ldapdriver.rst -doc/source/api/nova..auth.manager.rst -doc/source/api/nova..auth.signer.rst -doc/source/api/nova..cloudpipe.pipelib.rst -doc/source/api/nova..compute.api.rst -doc/source/api/nova..compute.instance_types.rst -doc/source/api/nova..compute.manager.rst -doc/source/api/nova..compute.monitor.rst -doc/source/api/nova..compute.power_state.rst -doc/source/api/nova..console.api.rst -doc/source/api/nova..console.fake.rst -doc/source/api/nova..console.manager.rst -doc/source/api/nova..console.xvp.rst -doc/source/api/nova..context.rst -doc/source/api/nova..crypto.rst -doc/source/api/nova..db.api.rst -doc/source/api/nova..db.base.rst -doc/source/api/nova..db.migration.rst -doc/source/api/nova..db.sqlalchemy.api.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.manage.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.versions.001_austin.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.versions.002_bexar.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.versions.003_add_label_to_networks.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.versions.004_add_zone_tables.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.versions.005_add_instance_metadata.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.versions.006_add_provider_data_to_volumes.rst -doc/source/api/nova..db.sqlalchemy.migrate_repo.versions.007_add_instance_types.rst -doc/source/api/nova..db.sqlalchemy.migration.rst -doc/source/api/nova..db.sqlalchemy.models.rst -doc/source/api/nova..db.sqlalchemy.session.rst -doc/source/api/nova..exception.rst -doc/source/api/nova..fakememcache.rst -doc/source/api/nova..fakerabbit.rst -doc/source/api/nova..flags.rst -doc/source/api/nova..image.glance.rst -doc/source/api/nova..image.local.rst -doc/source/api/nova..image.s3.rst -doc/source/api/nova..image.service.rst -doc/source/api/nova..log.rst -doc/source/api/nova..manager.rst -doc/source/api/nova..network.api.rst -doc/source/api/nova..network.linux_net.rst -doc/source/api/nova..network.manager.rst -doc/source/api/nova..objectstore.bucket.rst -doc/source/api/nova..objectstore.handler.rst -doc/source/api/nova..objectstore.image.rst -doc/source/api/nova..objectstore.stored.rst -doc/source/api/nova..quota.rst -doc/source/api/nova..rpc.rst -doc/source/api/nova..scheduler.chance.rst -doc/source/api/nova..scheduler.driver.rst -doc/source/api/nova..scheduler.manager.rst -doc/source/api/nova..scheduler.simple.rst -doc/source/api/nova..scheduler.zone.rst -doc/source/api/nova..service.rst -doc/source/api/nova..test.rst -doc/source/api/nova..tests.api.openstack.fakes.rst -doc/source/api/nova..tests.api.openstack.test_adminapi.rst -doc/source/api/nova..tests.api.openstack.test_api.rst -doc/source/api/nova..tests.api.openstack.test_auth.rst -doc/source/api/nova..tests.api.openstack.test_common.rst -doc/source/api/nova..tests.api.openstack.test_faults.rst -doc/source/api/nova..tests.api.openstack.test_flavors.rst -doc/source/api/nova..tests.api.openstack.test_images.rst -doc/source/api/nova..tests.api.openstack.test_ratelimiting.rst -doc/source/api/nova..tests.api.openstack.test_servers.rst -doc/source/api/nova..tests.api.openstack.test_shared_ip_groups.rst -doc/source/api/nova..tests.api.openstack.test_zones.rst -doc/source/api/nova..tests.api.test_wsgi.rst -doc/source/api/nova..tests.db.fakes.rst -doc/source/api/nova..tests.declare_flags.rst -doc/source/api/nova..tests.fake_flags.rst -doc/source/api/nova..tests.glance.stubs.rst -doc/source/api/nova..tests.hyperv_unittest.rst -doc/source/api/nova..tests.objectstore_unittest.rst -doc/source/api/nova..tests.real_flags.rst -doc/source/api/nova..tests.runtime_flags.rst -doc/source/api/nova..tests.test_access.rst -doc/source/api/nova..tests.test_api.rst -doc/source/api/nova..tests.test_auth.rst -doc/source/api/nova..tests.test_cloud.rst -doc/source/api/nova..tests.test_compute.rst -doc/source/api/nova..tests.test_console.rst -doc/source/api/nova..tests.test_direct.rst -doc/source/api/nova..tests.test_flags.rst -doc/source/api/nova..tests.test_instance_types.rst -doc/source/api/nova..tests.test_localization.rst -doc/source/api/nova..tests.test_log.rst -doc/source/api/nova..tests.test_middleware.rst -doc/source/api/nova..tests.test_misc.rst -doc/source/api/nova..tests.test_network.rst -doc/source/api/nova..tests.test_quota.rst -doc/source/api/nova..tests.test_rpc.rst -doc/source/api/nova..tests.test_scheduler.rst -doc/source/api/nova..tests.test_service.rst -doc/source/api/nova..tests.test_test.rst -doc/source/api/nova..tests.test_twistd.rst -doc/source/api/nova..tests.test_utils.rst -doc/source/api/nova..tests.test_virt.rst -doc/source/api/nova..tests.test_volume.rst -doc/source/api/nova..tests.test_xenapi.rst -doc/source/api/nova..tests.xenapi.stubs.rst -doc/source/api/nova..twistd.rst -doc/source/api/nova..utils.rst -doc/source/api/nova..version.rst -doc/source/api/nova..virt.connection.rst -doc/source/api/nova..virt.disk.rst -doc/source/api/nova..virt.fake.rst -doc/source/api/nova..virt.hyperv.rst -doc/source/api/nova..virt.images.rst -doc/source/api/nova..virt.libvirt_conn.rst -doc/source/api/nova..virt.xenapi.fake.rst -doc/source/api/nova..virt.xenapi.network_utils.rst -doc/source/api/nova..virt.xenapi.vm_utils.rst -doc/source/api/nova..virt.xenapi.vmops.rst -doc/source/api/nova..virt.xenapi.volume_utils.rst -doc/source/api/nova..virt.xenapi.volumeops.rst -doc/source/api/nova..virt.xenapi_conn.rst -doc/source/api/nova..volume.api.rst -doc/source/api/nova..volume.driver.rst -doc/source/api/nova..volume.manager.rst -doc/source/api/nova..volume.san.rst -doc/source/api/nova..wsgi.rst -doc/source/devref/addmethod.openstackapi.rst -doc/source/devref/api.rst -doc/source/devref/architecture.rst -doc/source/devref/auth.rst -doc/source/devref/cloudpipe.rst -doc/source/devref/compute.rst -doc/source/devref/database.rst -doc/source/devref/development.environment.rst -doc/source/devref/down.sh -doc/source/devref/fakes.rst -doc/source/devref/glance.rst -doc/source/devref/index.rst -doc/source/devref/interfaces -doc/source/devref/modules.rst -doc/source/devref/network.rst -doc/source/devref/nova.rst -doc/source/devref/objectstore.rst -doc/source/devref/rabbit.rst -doc/source/devref/rc.local -doc/source/devref/scheduler.rst -doc/source/devref/server.conf.template -doc/source/devref/services.rst -doc/source/devref/up.sh -doc/source/devref/volume.rst -doc/source/devref/zone.rst -doc/source/images/NOVA_ARCH.png -doc/source/images/NOVA_ARCH.svg -doc/source/images/NOVA_ARCH_200dpi.png -doc/source/images/NOVA_ARCH_66dpi.png -doc/source/images/NOVA_clouds_A_B.png -doc/source/images/NOVA_clouds_A_B.svg -doc/source/images/NOVA_clouds_C1_C2.svg -doc/source/images/NOVA_clouds_C1_C2.svg.png -doc/source/images/Novadiagram.png -doc/source/images/cloudpipe.png -doc/source/images/fabric.png -doc/source/images/novascreens.png -doc/source/images/novashvirtually.png -doc/source/images/vmwareapi_blockdiagram.jpg -doc/source/images/rabbit/arch.png -doc/source/images/rabbit/arch.svg -doc/source/images/rabbit/flow1.png -doc/source/images/rabbit/flow1.svg -doc/source/images/rabbit/flow2.png -doc/source/images/rabbit/flow2.svg -doc/source/images/rabbit/rabt.png -doc/source/images/rabbit/rabt.svg -doc/source/images/rabbit/state.png -doc/source/man/novamanage.rst -doc/source/runnova/binaries.rst -doc/source/runnova/euca2ools.rst -doc/source/runnova/flags.rst -doc/source/runnova/getting.started.rst -doc/source/runnova/index.rst -doc/source/runnova/managing.images.rst -doc/source/runnova/managing.instance.types.rst -doc/source/runnova/managing.instances.rst -doc/source/runnova/managing.networks.rst -doc/source/runnova/managing.projects.rst -doc/source/runnova/managing.users.rst -doc/source/runnova/managingsecurity.rst -doc/source/runnova/monitoring.rst -doc/source/runnova/network.flat.rst -doc/source/runnova/network.vlan.rst -doc/source/runnova/nova.manage.rst -doc/source/runnova/vncconsole.rst -etc/nova/api-paste.ini -nova/__init__.py -nova/context.py -nova/crypto.py -nova/exception.py -nova/fakememcache.py -nova/fakerabbit.py -nova/flags.py -nova/log.py -nova/manager.py -nova/quota.py -nova/rpc.py -nova/service.py -nova/test.py -nova/twistd.py -nova/utils.py -nova/vcsversion.py -nova/version.py -nova/wsgi.py -nova.egg-info/PKG-INFO -nova.egg-info/SOURCES.txt -nova.egg-info/dependency_links.txt -nova.egg-info/top_level.txt -nova/CA/.gitignore -nova/CA/geninter.sh -nova/CA/genrootca.sh -nova/CA/genvpn.sh -nova/CA/openssl.cnf.tmpl -nova/CA/newcerts/.placeholder -nova/CA/private/.placeholder -nova/CA/projects/.gitignore -nova/CA/projects/.placeholder -nova/CA/reqs/.gitignore -nova/CA/reqs/.placeholder -nova/api/__init__.py -nova/api/direct.py -nova/api/ec2/__init__.py -nova/api/ec2/admin.py -nova/api/ec2/apirequest.py -nova/api/ec2/cloud.py -nova/api/ec2/ec2utils.py -nova/api/ec2/metadatarequesthandler.py -nova/api/openstack/__init__.py -nova/api/openstack/accounts.py -nova/api/openstack/auth.py -nova/api/openstack/backup_schedules.py -nova/api/openstack/common.py -nova/api/openstack/consoles.py -nova/api/openstack/extensions.py -nova/api/openstack/faults.py -nova/api/openstack/flavors.py -nova/api/openstack/image_metadata.py -nova/api/openstack/images.py -nova/api/openstack/ips.py -nova/api/openstack/limits.py -nova/api/openstack/notes.txt -nova/api/openstack/server_metadata.py -nova/api/openstack/servers.py -nova/api/openstack/shared_ip_groups.py -nova/api/openstack/users.py -nova/api/openstack/versions.py -nova/api/openstack/zones.py -nova/api/openstack/contrib/__init__.py -nova/api/openstack/contrib/volumes.py -nova/api/openstack/ratelimiting/__init__.py -nova/api/openstack/views/__init__.py -nova/api/openstack/views/addresses.py -nova/api/openstack/views/flavors.py -nova/api/openstack/views/images.py -nova/api/openstack/views/limits.py -nova/api/openstack/views/servers.py -nova/api/openstack/views/versions.py -nova/auth/__init__.py -nova/auth/dbdriver.py -nova/auth/fakeldap.py -nova/auth/ldapdriver.py -nova/auth/manager.py -nova/auth/nova_openldap.schema -nova/auth/nova_sun.schema -nova/auth/novarc.template -nova/auth/opendj.sh -nova/auth/openssh-lpk_openldap.schema -nova/auth/openssh-lpk_sun.schema -nova/auth/signer.py -nova/auth/slap.sh -nova/cloudpipe/__init__.py -nova/cloudpipe/bootscript.template -nova/cloudpipe/client.ovpn.template -nova/cloudpipe/pipelib.py -nova/compute/__init__.py -nova/compute/api.py -nova/compute/fakevirtinstance.xml -nova/compute/instance_types.py -nova/compute/manager.py -nova/compute/monitor.py -nova/compute/power_state.py -nova/console/__init__.py -nova/console/api.py -nova/console/fake.py -nova/console/manager.py -nova/console/vmrc.py -nova/console/vmrc_manager.py -nova/console/xvp.conf.template -nova/console/xvp.py -nova/db/__init__.py -nova/db/api.py -nova/db/base.py -nova/db/migration.py -nova/db/sqlalchemy/__init__.py -nova/db/sqlalchemy/api.py -nova/db/sqlalchemy/migration.py -nova/db/sqlalchemy/models.py -nova/db/sqlalchemy/session.py -nova/db/sqlalchemy/migrate_repo/README -nova/db/sqlalchemy/migrate_repo/__init__.py -nova/db/sqlalchemy/migrate_repo/manage.py -nova/db/sqlalchemy/migrate_repo/migrate.cfg -nova/db/sqlalchemy/migrate_repo/versions/001_austin.py -nova/db/sqlalchemy/migrate_repo/versions/002_bexar.py -nova/db/sqlalchemy/migrate_repo/versions/003_add_label_to_networks.py -nova/db/sqlalchemy/migrate_repo/versions/004_add_zone_tables.py -nova/db/sqlalchemy/migrate_repo/versions/005_add_instance_metadata.py -nova/db/sqlalchemy/migrate_repo/versions/006_add_provider_data_to_volumes.py -nova/db/sqlalchemy/migrate_repo/versions/007_add_ipv6_to_fixed_ips.py -nova/db/sqlalchemy/migrate_repo/versions/008_add_instance_types.py -nova/db/sqlalchemy/migrate_repo/versions/009_add_instance_migrations.py -nova/db/sqlalchemy/migrate_repo/versions/010_add_os_type_to_instances.py -nova/db/sqlalchemy/migrate_repo/versions/011_live_migration.py -nova/db/sqlalchemy/migrate_repo/versions/012_add_ipv6_flatmanager.py -nova/db/sqlalchemy/migrate_repo/versions/013_add_flavors_to_migrations.py -nova/db/sqlalchemy/migrate_repo/versions/014_add_instance_type_id_to_instances.py -nova/db/sqlalchemy/migrate_repo/versions/015_add_auto_assign_to_floating_ips.py -nova/db/sqlalchemy/migrate_repo/versions/016_make_quotas_key_and_value.py -nova/db/sqlalchemy/migrate_repo/versions/017_make_instance_type_id_an_integer.py -nova/db/sqlalchemy/migrate_repo/versions/018_rename_server_management_url.py -nova/db/sqlalchemy/migrate_repo/versions/019_add_volume_snapshot_support.py -nova/db/sqlalchemy/migrate_repo/versions/020_add_snapshot_id_to_volumes.py -nova/db/sqlalchemy/migrate_repo/versions/021_set_engine_mysql_innodb.py -nova/db/sqlalchemy/migrate_repo/versions/__init__.py -nova/image/__init__.py -nova/image/fake.py -nova/image/glance.py -nova/image/local.py -nova/image/s3.py -nova/image/service.py -nova/ipv6/__init__.py -nova/ipv6/account_identifier.py -nova/ipv6/api.py -nova/ipv6/rfc2462.py -nova/network/__init__.py -nova/network/api.py -nova/network/linux_net.py -nova/network/manager.py -nova/network/vmwareapi_net.py -nova/network/xenapi_net.py -nova/notifier/__init__.py -nova/notifier/api.py -nova/notifier/log_notifier.py -nova/notifier/no_op_notifier.py -nova/notifier/rabbit_notifier.py -nova/objectstore/__init__.py -nova/objectstore/s3server.py -nova/scheduler/__init__.py -nova/scheduler/api.py -nova/scheduler/chance.py -nova/scheduler/driver.py -nova/scheduler/host_filter.py -nova/scheduler/manager.py -nova/scheduler/simple.py -nova/scheduler/zone.py -nova/scheduler/zone_aware_scheduler.py -nova/scheduler/zone_manager.py -nova/tests/__init__.py -nova/tests/declare_flags.py -nova/tests/fake_flags.py -nova/tests/fake_utils.py -nova/tests/hyperv_unittest.py -nova/tests/runtime_flags.py -nova/tests/test_access.py -nova/tests/test_api.py -nova/tests/test_auth.py -nova/tests/test_cloud.py -nova/tests/test_compute.py -nova/tests/test_console.py -nova/tests/test_crypto.py -nova/tests/test_direct.py -nova/tests/test_exception.py -nova/tests/test_flags.py -nova/tests/test_flat_network.py -nova/tests/test_host_filter.py -nova/tests/test_instance_types.py -nova/tests/test_ipv6.py -nova/tests/test_libvirt.py -nova/tests/test_localization.py -nova/tests/test_log.py -nova/tests/test_middleware.py -nova/tests/test_misc.py -nova/tests/test_network.py -nova/tests/test_notifier.py -nova/tests/test_objectstore.py -nova/tests/test_quota.py -nova/tests/test_rpc.py -nova/tests/test_scheduler.py -nova/tests/test_service.py -nova/tests/test_test.py -nova/tests/test_twistd.py -nova/tests/test_utils.py -nova/tests/test_vlan_network.py -nova/tests/test_vmwareapi.py -nova/tests/test_volume.py -nova/tests/test_xenapi.py -nova/tests/test_zone_aware_scheduler.py -nova/tests/test_zones.py -nova/tests/CA/cacert.pem -nova/tests/CA/private/cakey.pem -nova/tests/api/__init__.py -nova/tests/api/test_wsgi.py -nova/tests/api/openstack/__init__.py -nova/tests/api/openstack/common.py -nova/tests/api/openstack/fakes.py -nova/tests/api/openstack/test_accounts.py -nova/tests/api/openstack/test_adminapi.py -nova/tests/api/openstack/test_api.py -nova/tests/api/openstack/test_auth.py -nova/tests/api/openstack/test_common.py -nova/tests/api/openstack/test_extensions.py -nova/tests/api/openstack/test_faults.py -nova/tests/api/openstack/test_flavors.py -nova/tests/api/openstack/test_image_metadata.py -nova/tests/api/openstack/test_images.py -nova/tests/api/openstack/test_limits.py -nova/tests/api/openstack/test_server_metadata.py -nova/tests/api/openstack/test_servers.py -nova/tests/api/openstack/test_shared_ip_groups.py -nova/tests/api/openstack/test_users.py -nova/tests/api/openstack/test_versions.py -nova/tests/api/openstack/test_zones.py -nova/tests/api/openstack/extensions/__init__.py -nova/tests/api/openstack/extensions/foxinsocks.py -nova/tests/bundle/1mb.manifest.xml -nova/tests/bundle/1mb.no_kernel_or_ramdisk.manifest.xml -nova/tests/bundle/1mb.part.0 -nova/tests/bundle/1mb.part.1 -nova/tests/db/__init__.py -nova/tests/db/fakes.py -nova/tests/db/nova.austin.sqlite -nova/tests/glance/__init__.py -nova/tests/glance/stubs.py -nova/tests/image/__init__.py -nova/tests/image/test_glance.py -nova/tests/integrated/__init__.py -nova/tests/integrated/integrated_helpers.py -nova/tests/integrated/test_extensions.py -nova/tests/integrated/test_login.py -nova/tests/integrated/test_servers.py -nova/tests/integrated/test_volumes.py -nova/tests/integrated/test_xml.py -nova/tests/integrated/api/__init__.py -nova/tests/integrated/api/client.py -nova/tests/network/__init__.py -nova/tests/network/base.py -nova/tests/public_key/dummy.fingerprint -nova/tests/public_key/dummy.pub -nova/tests/vmwareapi/__init__.py -nova/tests/vmwareapi/db_fakes.py -nova/tests/vmwareapi/stubs.py -nova/tests/xenapi/__init__.py -nova/tests/xenapi/stubs.py -nova/virt/__init__.py -nova/virt/connection.py -nova/virt/cpuinfo.xml.template -nova/virt/disk.py -nova/virt/driver.py -nova/virt/fake.py -nova/virt/hyperv.py -nova/virt/images.py -nova/virt/interfaces.template -nova/virt/libvirt.xml.template -nova/virt/vmwareapi_conn.py -nova/virt/xenapi_conn.py -nova/virt/libvirt/__init__.py -nova/virt/libvirt/connection.py -nova/virt/libvirt/firewall.py -nova/virt/libvirt/netutils.py -nova/virt/vmwareapi/__init__.py -nova/virt/vmwareapi/error_util.py -nova/virt/vmwareapi/fake.py -nova/virt/vmwareapi/io_util.py -nova/virt/vmwareapi/network_utils.py -nova/virt/vmwareapi/read_write_util.py -nova/virt/vmwareapi/vim.py -nova/virt/vmwareapi/vim_util.py -nova/virt/vmwareapi/vm_util.py -nova/virt/vmwareapi/vmops.py -nova/virt/vmwareapi/vmware_images.py -nova/virt/xenapi/__init__.py -nova/virt/xenapi/fake.py -nova/virt/xenapi/network_utils.py -nova/virt/xenapi/vm_utils.py -nova/virt/xenapi/vmops.py -nova/virt/xenapi/volume_utils.py -nova/virt/xenapi/volumeops.py -nova/vnc/__init__.py -nova/vnc/auth.py -nova/vnc/proxy.py -nova/volume/__init__.py -nova/volume/api.py -nova/volume/driver.py -nova/volume/manager.py -nova/volume/san.py -plugins/xenserver/doc/networking.rst -plugins/xenserver/networking/etc/init.d/host-rules -plugins/xenserver/networking/etc/xensource/scripts/vif_5.6-fp1.patch -plugins/xenserver/networking/etc/xensource/scripts/vif_rules.py -plugins/xenserver/xenapi/README -plugins/xenserver/xenapi/etc/xapi.d/plugins/agent -plugins/xenserver/xenapi/etc/xapi.d/plugins/glance -plugins/xenserver/xenapi/etc/xapi.d/plugins/migration -plugins/xenserver/xenapi/etc/xapi.d/plugins/objectstore -plugins/xenserver/xenapi/etc/xapi.d/plugins/pluginlib_nova.py -plugins/xenserver/xenapi/etc/xapi.d/plugins/xenhost -plugins/xenserver/xenapi/etc/xapi.d/plugins/xenstore.py -po/ast.po -po/cs.po -po/da.po -po/de.po -po/es.po -po/it.po -po/ja.po -po/nova.pot -po/pt_BR.po -po/ru.po -po/uk.po -po/zh_CN.po -smoketests/__init__.py -smoketests/base.py -smoketests/flags.py -smoketests/openwrt-x86-ext2.image -smoketests/openwrt-x86-vmlinuz -smoketests/proxy.sh -smoketests/public_network_smoketests.py -smoketests/run_tests.py -smoketests/test_admin.py -smoketests/test_netadmin.py -smoketests/test_sysadmin.py -tools/clean-vlans -tools/euca-get-ajax-console -tools/eventlet-patch -tools/install_venv.py -tools/nova-debug -tools/pip-requires -tools/setup_iptables.sh -tools/with_venv.sh -tools/ajaxterm/README.txt -tools/ajaxterm/ajaxterm.1 -tools/ajaxterm/ajaxterm.css -tools/ajaxterm/ajaxterm.html -tools/ajaxterm/ajaxterm.js -tools/ajaxterm/ajaxterm.py -tools/ajaxterm/configure -tools/ajaxterm/configure.ajaxterm.bin -tools/ajaxterm/configure.initd.debian -tools/ajaxterm/configure.initd.gentoo -tools/ajaxterm/configure.initd.redhat -tools/ajaxterm/configure.makefile -tools/ajaxterm/qweb.py -tools/ajaxterm/sarissa.js -tools/ajaxterm/sarissa_dhtml.js -tools/esx/guest_tool.py \ No newline at end of file diff --git a/nova.egg-info/dependency_links.txt b/nova.egg-info/dependency_links.txt deleted file mode 100644 index 8b1378917..000000000 --- a/nova.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/nova.egg-info/top_level.txt b/nova.egg-info/top_level.txt deleted file mode 100644 index 31c787fdd..000000000 --- a/nova.egg-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -nova -- cgit From 5b45d5477cfff946ada581676db54fb254be6522 Mon Sep 17 00:00:00 2001 From: Lvov Maxim Date: Wed, 1 Jun 2011 16:40:19 +0400 Subject: osapi: added support for header X-Auth-Project-Id --- nova/api/openstack/auth.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/nova/api/openstack/auth.py b/nova/api/openstack/auth.py index 6c6ee22a2..e220ffcc2 100644 --- a/nova/api/openstack/auth.py +++ b/nova/api/openstack/auth.py @@ -50,19 +50,21 @@ class AuthMiddleware(wsgi.Middleware): if not self.has_authentication(req): return self.authenticate(req) user = self.get_user_by_authentication(req) - accounts = self.auth.get_projects(user=user) if not user: token = req.headers["X-Auth-Token"] msg = _("%(user)s could not be found with token '%(token)s'") LOG.warn(msg % locals()) return faults.Fault(webob.exc.HTTPUnauthorized()) - if accounts: - #we are punting on this til auth is settled, - #and possibly til api v1.1 (mdragon) - account = accounts[0] - else: - return faults.Fault(webob.exc.HTTPUnauthorized()) + try: + account = req.headers["X-Auth-Project-Id"] + except KeyError: + # FIXME: It needed only for compatibility + accounts = self.auth.get_projects(user=user) + if accounts: + account = accounts[0] + else: + return faults.Fault(webob.exc.HTTPUnauthorized()) if not self.auth.is_admin(user) and \ not self.auth.is_project_member(user, account): -- cgit From a1ea80431ea46aea5ec67cf152c7a7af5fd5aeac Mon Sep 17 00:00:00 2001 From: Lvov Maxim Date: Fri, 3 Jun 2011 21:13:16 +0400 Subject: fix comment --- nova/api/openstack/auth.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nova/api/openstack/auth.py b/nova/api/openstack/auth.py index e220ffcc2..774426d58 100644 --- a/nova/api/openstack/auth.py +++ b/nova/api/openstack/auth.py @@ -59,7 +59,8 @@ class AuthMiddleware(wsgi.Middleware): try: account = req.headers["X-Auth-Project-Id"] except KeyError: - # FIXME: It needed only for compatibility + # FIXME(usrleon): It needed only for compatibility + # while osapi clients don't use this header accounts = self.auth.get_projects(user=user) if accounts: account = accounts[0] -- cgit From f0c4767dc14f950f7d18cc02e16e4d310774435d Mon Sep 17 00:00:00 2001 From: Alex Meade Date: Tue, 7 Jun 2011 09:56:51 -0400 Subject: Fixed type causing pylint "exception is not callable" Added param to fake_instance_create, fake objects should appear like the real object. pylint "No value passed for parameter 'values' in function call" --- nova/tests/test_vmwareapi.py | 2 +- nova/tests/vmwareapi/db_fakes.py | 2 +- nova/virt/xenapi/vmops.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/nova/tests/test_vmwareapi.py b/nova/tests/test_vmwareapi.py index e5ebd1600..eddf01e9f 100644 --- a/nova/tests/test_vmwareapi.py +++ b/nova/tests/test_vmwareapi.py @@ -69,7 +69,7 @@ class VMWareAPIVMTestCase(test.TestCase): 'instance_type': 'm1.large', 'mac_address': 'aa:bb:cc:dd:ee:ff', } - self.instance = db.instance_create(values) + self.instance = db.instance_create(None, values) def _create_vm(self): """Create and spawn the VM.""" diff --git a/nova/tests/vmwareapi/db_fakes.py b/nova/tests/vmwareapi/db_fakes.py index 764de42d8..d4eb87daf 100644 --- a/nova/tests/vmwareapi/db_fakes.py +++ b/nova/tests/vmwareapi/db_fakes.py @@ -52,7 +52,7 @@ def stub_out_db_instance_api(stubs): else: raise NotImplementedError() - def fake_instance_create(values): + def fake_instance_create(context, values): """Stubs out the db.instance_create method.""" type_data = INSTANCE_TYPES[values['instance_type']] diff --git a/nova/virt/xenapi/vmops.py b/nova/virt/xenapi/vmops.py index 32dae97c2..c6d2b0936 100644 --- a/nova/virt/xenapi/vmops.py +++ b/nova/virt/xenapi/vmops.py @@ -101,7 +101,7 @@ class VMOps(object): if not vm_ref: vm_ref = VMHelper.lookup(self._session, instance.name) if vm_ref is None: - raise exception(_('Attempted to power on non-existent instance' + raise Exception(_('Attempted to power on non-existent instance' ' bad instance id %s') % instance.id) LOG.debug(_("Starting instance %s"), instance.name) self._session.call_xenapi('VM.start', vm_ref, False, False) -- cgit From c680176d11edb46a28ba065f0548e18cbf1297d5 Mon Sep 17 00:00:00 2001 From: Alex Meade Date: Tue, 7 Jun 2011 13:32:53 -0400 Subject: Fixed incorrect error message Added missing import Fixed Typo (pylint "undefined variable NoneV") --- nova/compute/instance_types.py | 2 +- nova/compute/monitor.py | 1 + nova/console/vmrc.py | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/nova/compute/instance_types.py b/nova/compute/instance_types.py index 1275a6fdd..1d246e445 100644 --- a/nova/compute/instance_types.py +++ b/nova/compute/instance_types.py @@ -114,7 +114,7 @@ def get_instance_type(id): ctxt = context.get_admin_context() return db.instance_type_get_by_id(ctxt, id) except exception.DBError: - raise exception.ApiError(_("Unknown instance type: %s") % name) + raise exception.ApiError(_("Unknown instance type: %s") % id) def get_instance_type_by_name(name): diff --git a/nova/compute/monitor.py b/nova/compute/monitor.py index 613734bef..9d8e2a25d 100644 --- a/nova/compute/monitor.py +++ b/nova/compute/monitor.py @@ -36,6 +36,7 @@ from twisted.application import service from nova import flags from nova import log as logging +from nova import utils from nova.virt import connection as virt_connection diff --git a/nova/console/vmrc.py b/nova/console/vmrc.py index cc8b0cdf5..fa805e019 100644 --- a/nova/console/vmrc.py +++ b/nova/console/vmrc.py @@ -119,7 +119,7 @@ class VMRCSessionConsole(VMRCConsole): """ vms = vim_session._call_method(vim_util, 'get_objects', 'VirtualMachine', ['name']) - vm_ref = NoneV + vm_ref = None for vm in vms: if vm.propSet[0].val == instance_name: vm_ref = vm.obj -- cgit From d920e7f53e59b1def67f7528dd6b6bcf35ba96b4 Mon Sep 17 00:00:00 2001 From: Alex Meade Date: Tue, 7 Jun 2011 14:33:01 -0400 Subject: Disabled pylint complaining about no 'self' parameter in a decorator function --- nova/auth/ldapdriver.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/auth/ldapdriver.py b/nova/auth/ldapdriver.py index 183f7a985..7bcaa34b5 100644 --- a/nova/auth/ldapdriver.py +++ b/nova/auth/ldapdriver.py @@ -139,7 +139,7 @@ class LdapDriver(object): self.__cache = None return False - def __local_cache(key_fmt): + def __local_cache(key_fmt): #pylint: disable=E0213 """Wrap function to cache it's result in self.__cache. Works only with functions with one fixed argument. """ -- cgit From b7556544d222741c9bc0d312ae75ab5f84b4cd2d Mon Sep 17 00:00:00 2001 From: Alex Meade Date: Tue, 7 Jun 2011 14:48:13 -0400 Subject: Removed use of super --- nova/api/openstack/versions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/api/openstack/versions.py b/nova/api/openstack/versions.py index 9db160102..4c682302f 100644 --- a/nova/api/openstack/versions.py +++ b/nova/api/openstack/versions.py @@ -35,7 +35,7 @@ class Versions(wsgi.Resource): 'application/xml': wsgi.XMLDictSerializer(metadata=metadata), } - super(Versions, self).__init__(None, serializers=serializers) + wsgi.Resource.__init__(self, None, serializers=serializers) def dispatch(self, request, *args): """Respond to a request for all OpenStack API versions.""" -- cgit From d4742cf8505ff86a4732f8d198fe6cedf260898e Mon Sep 17 00:00:00 2001 From: Alex Meade Date: Tue, 7 Jun 2011 16:08:25 -0400 Subject: Added virtual environment to PEP8 tests --- run_tests.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/run_tests.sh b/run_tests.sh index 9aa555484..c7bcd5d67 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -67,14 +67,11 @@ function run_pep8 { srcfiles=`find bin -type f ! -name "nova.conf*"` srcfiles+=" `find tools/*`" srcfiles+=" nova setup.py plugins/xenserver/xenapi/etc/xapi.d/plugins/glance" - pep8 --repeat --show-pep8 --show-source --exclude=vcsversion.py ${srcfiles} + # Just run PEP8 in current environment + ${wrapper} pep8 --repeat --show-pep8 --show-source \ + --exclude=vcsversion.py ${srcfiles} } -if [ $just_pep8 -eq 1 ]; then - run_pep8 - exit -fi - NOSETESTS="python run_tests.py $noseargs" if [ $never_venv -eq 0 ] @@ -103,6 +100,11 @@ then fi fi +if [ $just_pep8 -eq 1 ]; then + run_pep8 + exit +fi + run_tests || exit # Also run pep8 if no options were provided. -- cgit From a90974347dd396990d8e6fadeac15abd07cb19ea Mon Sep 17 00:00:00 2001 From: John Tran Date: Tue, 7 Jun 2011 14:36:40 -0700 Subject: adding Authorizer key for ImportPublicKey --- nova/api/ec2/__init__.py | 1 + 1 file changed, 1 insertion(+) diff --git a/nova/api/ec2/__init__.py b/nova/api/ec2/__init__.py index 1915d007d..890d57fe7 100644 --- a/nova/api/ec2/__init__.py +++ b/nova/api/ec2/__init__.py @@ -242,6 +242,7 @@ class Authorizer(wsgi.Middleware): 'CreateKeyPair': ['all'], 'DeleteKeyPair': ['all'], 'DescribeSecurityGroups': ['all'], + 'ImportPublicKey': ['all'], 'AuthorizeSecurityGroupIngress': ['netadmin'], 'RevokeSecurityGroupIngress': ['netadmin'], 'CreateSecurityGroup': ['netadmin'], -- cgit From 49dcee9ac6a4f78cb021181d5310541d9a42fafd Mon Sep 17 00:00:00 2001 From: Lvov Maxim Date: Wed, 8 Jun 2011 13:49:00 +0400 Subject: fix fake driver for using string project --- nova/tests/api/openstack/fakes.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/nova/tests/api/openstack/fakes.py b/nova/tests/api/openstack/fakes.py index 8e0156afa..ce24bd860 100644 --- a/nova/tests/api/openstack/fakes.py +++ b/nova/tests/api/openstack/fakes.py @@ -328,6 +328,11 @@ class FakeAuthManager(object): return user.admin def is_project_member(self, user, project): + if not isinstance(project, Project): + try: + project = self.get_project(project) + except: + raise webob.exc.HTTPUnauthorized() return ((user.id in project.member_ids) or (user.id == project.project_manager_id)) -- cgit From f93717c7d74b24311c04f66b9e710322510d0ed2 Mon Sep 17 00:00:00 2001 From: Lvov Maxim Date: Wed, 8 Jun 2011 13:50:33 +0400 Subject: added tests for X-Auth-Project-Id header --- nova/tests/api/openstack/test_auth.py | 64 +++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/nova/tests/api/openstack/test_auth.py b/nova/tests/api/openstack/test_auth.py index 8f189c744..04ce78880 100644 --- a/nova/tests/api/openstack/test_auth.py +++ b/nova/tests/api/openstack/test_auth.py @@ -114,6 +114,28 @@ class Test(test.TestCase): self.assertEqual(result.status, '401 Unauthorized') self.assertEqual(self.destroy_called, True) + def test_authorize_project(self): + f = fakes.FakeAuthManager() + user = nova.auth.manager.User('id1', 'user1', 'user1_key', None, None) + f.add_user(user) + f.create_project('user1_project', user) + f.create_project('user2_project', user) + + req = webob.Request.blank('/v1.0/', {'HTTP_HOST': 'foo'}) + req.headers['X-Auth-User'] = 'user1' + req.headers['X-Auth-Key'] = 'user1_key' + result = req.get_response(fakes.wsgi_app()) + self.assertEqual(result.status, '204 No Content') + + token = result.headers['X-Auth-Token'] + self.stubs.Set(nova.api.openstack, 'APIRouterV10', fakes.FakeRouter) + req = webob.Request.blank('/v1.0/fake') + req.headers['X-Auth-Token'] = token + req.headers['X-Auth-Project-Id'] = 'user2_project' + result = req.get_response(fakes.wsgi_app()) + self.assertEqual(result.status, '200 OK') + self.assertEqual(result.headers['X-Test-Success'], 'True') + def test_bad_user_bad_key(self): req = webob.Request.blank('/v1.0/') req.headers['X-Auth-User'] = 'unknown_user' @@ -143,6 +165,48 @@ class Test(test.TestCase): result = req.get_response(fakes.wsgi_app()) self.assertEqual(result.status, '401 Unauthorized') + def test_bad_project(self): + f = fakes.FakeAuthManager() + user1 = nova.auth.manager.User('id1', 'user1', 'user1_key', None, None) + user2 = nova.auth.manager.User('id2', 'user2', 'user2_key', None, None) + f.add_user(user1) + f.add_user(user2) + f.create_project('user1_project', user1) + f.create_project('user2_project', user2) + + req = webob.Request.blank('/v1.0/', {'HTTP_HOST': 'foo'}) + req.headers['X-Auth-User'] = 'user1' + req.headers['X-Auth-Key'] = 'user1_key' + result = req.get_response(fakes.wsgi_app()) + self.assertEqual(result.status, '204 No Content') + + token = result.headers['X-Auth-Token'] + self.stubs.Set(nova.api.openstack, 'APIRouterV10', fakes.FakeRouter) + req = webob.Request.blank('/v1.0/fake') + req.headers['X-Auth-Token'] = token + req.headers['X-Auth-Project-Id'] = 'user2_project' + result = req.get_response(fakes.wsgi_app()) + self.assertEqual(result.status, '401 Unauthorized') + + def test_not_existing_project(self): + f = fakes.FakeAuthManager() + user1 = nova.auth.manager.User('id1', 'user1', 'user1_key', None, None) + f.add_user(user1) + f.create_project('user1_project', user1) + + req = webob.Request.blank('/v1.0/', {'HTTP_HOST': 'foo'}) + req.headers['X-Auth-User'] = 'user1' + req.headers['X-Auth-Key'] = 'user1_key' + result = req.get_response(fakes.wsgi_app()) + self.assertEqual(result.status, '204 No Content') + + token = result.headers['X-Auth-Token'] + self.stubs.Set(nova.api.openstack, 'APIRouterV10', fakes.FakeRouter) + req = webob.Request.blank('/v1.0/fake') + req.headers['X-Auth-Token'] = token + req.headers['X-Auth-Project-Id'] = 'unknown_project' + result = req.get_response(fakes.wsgi_app()) + self.assertEqual(result.status, '401 Unauthorized') class TestFunctional(test.TestCase): def test_token_expiry(self): -- cgit From 03ef0d1091cc1b6d9c3049b1d7b8cfae0019631e Mon Sep 17 00:00:00 2001 From: Lvov Maxim Date: Wed, 8 Jun 2011 13:52:02 +0400 Subject: added field NOVA_PROJECT_ID to template for future using --- nova/auth/novarc.template | 1 + 1 file changed, 1 insertion(+) diff --git a/nova/auth/novarc.template b/nova/auth/novarc.template index 8170fcafe..28a3696a2 100644 --- a/nova/auth/novarc.template +++ b/nova/auth/novarc.template @@ -12,4 +12,5 @@ alias ec2-bundle-image="ec2-bundle-image --cert ${EC2_CERT} --privatekey ${EC2_P alias ec2-upload-bundle="ec2-upload-bundle -a ${EC2_ACCESS_KEY} -s ${EC2_SECRET_KEY} --url ${S3_URL} --ec2cert ${NOVA_CERT}" export NOVA_API_KEY="%(access)s" export NOVA_USERNAME="%(user)s" +export NOVA_PROJECT_ID="%(project)s" export NOVA_URL="%(os)s" -- cgit From a605905c11d8898e8cc15e830c17de3ce8c80fda Mon Sep 17 00:00:00 2001 From: Alex Meade Date: Wed, 8 Jun 2011 09:21:38 -0400 Subject: pep8 --- nova/auth/ldapdriver.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/auth/ldapdriver.py b/nova/auth/ldapdriver.py index 7bcaa34b5..e9532473d 100644 --- a/nova/auth/ldapdriver.py +++ b/nova/auth/ldapdriver.py @@ -139,7 +139,7 @@ class LdapDriver(object): self.__cache = None return False - def __local_cache(key_fmt): #pylint: disable=E0213 + def __local_cache(key_fmt): # pylint: disable=E0213 """Wrap function to cache it's result in self.__cache. Works only with functions with one fixed argument. """ -- cgit From 3da61c0b225f824025f617f0a88f72c00e31b83e Mon Sep 17 00:00:00 2001 From: Lvov Maxim Date: Wed, 8 Jun 2011 21:03:52 +0400 Subject: fix exception type catched --- nova/tests/api/openstack/fakes.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova/tests/api/openstack/fakes.py b/nova/tests/api/openstack/fakes.py index ce24bd860..8a17f0374 100644 --- a/nova/tests/api/openstack/fakes.py +++ b/nova/tests/api/openstack/fakes.py @@ -331,7 +331,7 @@ class FakeAuthManager(object): if not isinstance(project, Project): try: project = self.get_project(project) - except: + except exc.NotFound: raise webob.exc.HTTPUnauthorized() return ((user.id in project.member_ids) or (user.id == project.project_manager_id)) -- cgit From f786c112ce4753dfc1838eecbfc5a20314a5e35d Mon Sep 17 00:00:00 2001 From: Yuriy Taraday Date: Wed, 8 Jun 2011 21:58:59 +0400 Subject: PEP8 fix. --- nova/tests/api/openstack/test_auth.py | 1 + 1 file changed, 1 insertion(+) diff --git a/nova/tests/api/openstack/test_auth.py b/nova/tests/api/openstack/test_auth.py index 04ce78880..af3478c7d 100644 --- a/nova/tests/api/openstack/test_auth.py +++ b/nova/tests/api/openstack/test_auth.py @@ -208,6 +208,7 @@ class Test(test.TestCase): result = req.get_response(fakes.wsgi_app()) self.assertEqual(result.status, '401 Unauthorized') + class TestFunctional(test.TestCase): def test_token_expiry(self): ctx = context.get_admin_context() -- cgit