diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 2b27f2b..3ea9c18 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -2,10 +2,6 @@ <project version="4"> <component name="ChangeListManager"> <list default="true" id="1fbec8af-5a7c-40f9-b994-83ac07d1ae1d" name="Default" comment=""> - <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" /> - <change beforePath="$PROJECT_DIR$/circle/dashboard/forms.py" afterPath="$PROJECT_DIR$/circle/dashboard/forms.py" /> - <change beforePath="$PROJECT_DIR$/circle/dashboard/templates/dashboard/vm-detail/network.html" afterPath="$PROJECT_DIR$/circle/dashboard/templates/dashboard/vm-detail/network.html" /> - <change beforePath="$PROJECT_DIR$/circle/dashboard/views/vm.py" afterPath="$PROJECT_DIR$/circle/dashboard/views/vm.py" /> <change beforePath="$PROJECT_DIR$/circle/vm/operations.py" afterPath="$PROJECT_DIR$/circle/vm/operations.py" /> </list> <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> @@ -36,78 +32,16 @@ </component> <component name="FileEditorManager"> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> - <file leaf-file-name="vm.py" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/circle/dashboard/views/vm.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="148"> - <caret line="586" column="0" lean-forward="false" selection-start-line="586" selection-start-column="0" selection-end-line="586" selection-end-column="0" /> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="operations.py" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/circle/common/operations.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="148"> - <caret line="69" column="0" lean-forward="false" selection-start-line="69" selection-start-column="0" selection-end-line="69" selection-end-column="0" /> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="util.py" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/circle/dashboard/views/util.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="148"> - <caret line="296" column="19" lean-forward="true" selection-start-line="296" selection-start-column="19" selection-end-line="296" selection-end-column="32" /> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="urls.py" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/circle/dashboard/urls.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="614"> - <caret line="228" column="22" lean-forward="true" selection-start-line="228" selection-start-column="22" selection-end-line="228" selection-end-column="22" /> - <folding /> - </state> - </provider> - </entry> - </file> - <file leaf-file-name="forms.py" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/circle/dashboard/forms.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="259"> - <caret line="1040" column="31" lean-forward="false" selection-start-line="1040" selection-start-column="31" selection-end-line="1040" selection-end-column="31" /> - <folding /> - </state> - </provider> - </entry> - </file> <file leaf-file-name="operations.py" pinned="false" current-in-tab="true"> <entry file="file://$PROJECT_DIR$/circle/vm/operations.py"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="148"> - <caret line="472" column="55" lean-forward="false" selection-start-line="472" selection-start-column="55" selection-end-line="472" selection-end-column="55" /> + <state relative-caret-position="316"> + <caret line="622" column="67" lean-forward="false" selection-start-line="622" selection-start-column="67" selection-end-line="622" selection-end-column="67" /> <folding /> </state> </provider> </entry> </file> - <file leaf-file-name="network.html" pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/circle/dashboard/templates/dashboard/vm-detail/network.html"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="357"> - <caret line="63" column="24" lean-forward="false" selection-start-line="63" selection-start-column="20" selection-end-line="63" selection-end-column="24" /> - <folding> - <marker date="1524052679121" expanded="false" signature="3492:3510" ph="..." /> - </folding> - </state> - </provider> - </entry> - </file> </leaf> </component> <component name="FileTemplateManagerImpl"> @@ -120,12 +54,6 @@ </component> <component name="FindInProjectRecents"> <findStrings> - <find>compileless</find> - <find>less</find> - <find>installed</find> - <find>Node</find> - <find>DummyLessCompiler</find> - <find>forwar</find> <find>DEFAULT_SUBNETPOOL_NAME_FOR_USER</find> <find>get_id</find> <find>add_port</find> @@ -150,6 +78,12 @@ <find>vm_</find> <find>detailview</find> <find>vmdetailview</find> + <find>deployoperation</find> + <find>deployOpera</find> + <find>wakeupoper</find> + <find>rebootopera</find> + <find>destroyopera</find> + <find>sleepoper</find> </findStrings> <replaceStrings> <replace>'ACTIVE'</replace> @@ -238,8 +172,8 @@ <component name="ProjectFrameBounds"> <option name="x" value="-2" /> <option name="y" value="-1" /> - <option name="width" value="1924" /> - <option name="height" value="1063" /> + <option name="width" value="1370" /> + <option name="height" value="751" /> </component> <component name="ProjectInspectionProfilesVisibleTreeState"> <entry key="Project Default"> @@ -304,23 +238,6 @@ <item name="dashboard" type="462c0819:PsiDirectoryNode" /> <item name="templates" type="462c0819:PsiDirectoryNode" /> </path> - <path> - <item name="cloud" type="b2602c69:ProjectViewProjectNode" /> - <item name="cloud" type="462c0819:PsiDirectoryNode" /> - <item name="circle" type="462c0819:PsiDirectoryNode" /> - <item name="dashboard" type="462c0819:PsiDirectoryNode" /> - <item name="templates" type="462c0819:PsiDirectoryNode" /> - <item name="dashboard" type="462c0819:PsiDirectoryNode" /> - </path> - <path> - <item name="cloud" type="b2602c69:ProjectViewProjectNode" /> - <item name="cloud" type="462c0819:PsiDirectoryNode" /> - <item name="circle" type="462c0819:PsiDirectoryNode" /> - <item name="dashboard" type="462c0819:PsiDirectoryNode" /> - <item name="templates" type="462c0819:PsiDirectoryNode" /> - <item name="dashboard" type="462c0819:PsiDirectoryNode" /> - <item name="vm-detail" type="462c0819:PsiDirectoryNode" /> - </path> </expand> <select /> </subPane> @@ -334,7 +251,7 @@ <property name="settings.editor.selected.configurable" value="watcher.settings" /> <property name="NewWatcherDialog.advanced.open" value="true" /> <property name="DefaultHtmlFileTemplate" value="HTML File" /> - <property name="SearchEverywhereHistoryKey" value="vmdeta	null	null indexview	null	null operatio	FILE	file:///home/h3yduck/cloud/circle/vm/operations.py vxlanc	null	null plain	null	null base.	FILE	file:///home/h3yduck/cloud/circle/circle/settings/base.py local	FILE	file:///home/h3yduck/cloud/circle/circle/settings/local.py views.	FILE	file:///home/h3yduck/cloud/circle/openstack_auth/views.py login.html	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/auth/login.html LoginVi	null	null indexv	null	null index-vm	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/index-vm.html index.	FILE	file:///home/h3yduck/cloud/circle/dashboard/views/index.py index	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/index.html bas	FILE	file:///home/h3yduck/cloud/circle/openstack_api/base.py save	null	null plainc	null	null templatedet	null	null instancetemp	null	null instancetem	null	null url	FILE	file:///home/h3yduck/cloud/circle/dashboard/urls.py vmcreate	null	null base	FILE	file:///home/h3yduck/cloud/circle/circle/settings/base.py opera	FILE	file:///home/h3yduck/cloud/circle/vm/operations.py operations	FILE	file:///home/h3yduck/cloud/circle/common/operations.py templat	null	null vmadd	null	null vmdetail	null	null addinterfa	null	null addin	null	null server	null	null Instance	null	null instance	FILE	file:///home/h3yduck/cloud/circle/vm/models/instance.py operat	null	null ins	FILE	file:///home/h3yduck/cloud/circle/vm/models/instance.py vmdetai	null	null operationvi	null	null ser	null	null server.	FILE	file:///home/h3yduck/.virtualenvs/cloud/local/lib/python2.7/site-packages/novaclient/v2/servers.py resources.	FILE	file:///home/h3yduck/cloud/circle/request/templates/request/initials/resources.html vm-de	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/vm-detail.html vxla	null	null urls	FILE	file:///home/h3yduck/cloud/circle/dashboard/urls.py index-v	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/index-vxlans.html create	FILE	file:///home/h3yduck/cloud/circle/network/templates/network/vxlan-create.html vxl	null	null nov	FILE	file:///home/h3yduck/cloud/circle/openstack_api/nova.py nova.p	FILE	file:///home/h3yduck/cloud/circle/openstack_api/nova.py vmdetailv	null	null editor	null	null" /> + <property name="SearchEverywhereHistoryKey" value="operation	FILE	file:///home/h3yduck/cloud/circle/vm/operations.py base	FILE	file:///home/h3yduck/cloud/circle/circle/settings/base.py indev	null	null vmdeta	null	null indexview	null	null operatio	FILE	file:///home/h3yduck/cloud/circle/vm/operations.py vxlanc	null	null plain	null	null base.	FILE	file:///home/h3yduck/cloud/circle/circle/settings/base.py local	FILE	file:///home/h3yduck/cloud/circle/circle/settings/local.py views.	FILE	file:///home/h3yduck/cloud/circle/openstack_auth/views.py login.html	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/auth/login.html LoginVi	null	null indexv	null	null index-vm	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/index-vm.html index.	FILE	file:///home/h3yduck/cloud/circle/dashboard/views/index.py index	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/index.html bas	FILE	file:///home/h3yduck/cloud/circle/openstack_api/base.py save	null	null plainc	null	null templatedet	null	null instancetemp	null	null instancetem	null	null url	FILE	file:///home/h3yduck/cloud/circle/dashboard/urls.py vmcreate	null	null opera	FILE	file:///home/h3yduck/cloud/circle/vm/operations.py operations	FILE	file:///home/h3yduck/cloud/circle/common/operations.py templat	null	null vmadd	null	null vmdetail	null	null addinterfa	null	null addin	null	null server	null	null Instance	null	null instance	FILE	file:///home/h3yduck/cloud/circle/vm/models/instance.py operat	null	null ins	FILE	file:///home/h3yduck/cloud/circle/vm/models/instance.py vmdetai	null	null operationvi	null	null ser	null	null server.	FILE	file:///home/h3yduck/.virtualenvs/cloud/local/lib/python2.7/site-packages/novaclient/v2/servers.py resources.	FILE	file:///home/h3yduck/cloud/circle/request/templates/request/initials/resources.html vm-de	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/vm-detail.html vxla	null	null urls	FILE	file:///home/h3yduck/cloud/circle/dashboard/urls.py index-v	FILE	file:///home/h3yduck/cloud/circle/dashboard/templates/dashboard/index-vxlans.html create	FILE	file:///home/h3yduck/cloud/circle/network/templates/network/vxlan-create.html vxl	null	null nov	FILE	file:///home/h3yduck/cloud/circle/openstack_api/nova.py nova.p	FILE	file:///home/h3yduck/cloud/circle/openstack_api/nova.py" /> </component> <component name="RecentsManager"> <key name="CopyFile.RECENT_KEYS"> @@ -479,8 +396,7 @@ </todo-panel> </component> <component name="ToolWindowManager"> - <frame x="-2" y="-1" width="1924" height="1063" extended-state="0" /> - <editor active="true" /> + <frame x="-2" y="-1" width="1370" height="751" extended-state="0" /> <layout> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32980973" sideWeight="0.4978701" order="6" side_tool="false" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.47568712" sideWeight="0.5037274" order="7" side_tool="true" content_ui="tabs" /> @@ -488,14 +404,14 @@ <window_info id="Python Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.43023255" sideWeight="0.43610224" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32769555" sideWeight="0.49574015" order="2" side_tool="false" content_ui="tabs" /> <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.47568712" sideWeight="0.5058573" order="7" side_tool="true" content_ui="tabs" /> - <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.20074548" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" /> + <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.20015106" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" /> <window_info id="Docker" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" /> <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32875264" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="SciView" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> - <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.47568712" sideWeight="0.4941427" order="3" side_tool="false" content_ui="tabs" /> + <window_info id="Debug" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.7097792" sideWeight="0.4941427" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" /> <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> @@ -570,7 +486,7 @@ <line>82</line> <option name="timeStamp" value="13" /> </line-breakpoint> - <line-breakpoint enabled="true" suspend="THREAD" type="python-line"> + <line-breakpoint suspend="THREAD" type="python-line"> <url>file://$PROJECT_DIR$/circle/common/operations.py</url> <line>69</line> <option name="timeStamp" value="317" /> @@ -586,13 +502,18 @@ </properties> </breakpoint> </default-breakpoints> - <option name="time" value="331" /> + <option name="time" value="332" /> </breakpoint-manager> <watches-manager /> </component> <component name="debuggerHistoryManager"> <expressions id="evaluateCodeFragment"> <expression> + <expression-string>import ceilometerclient.client</expression-string> + <language-id>Python</language-id> + <evaluation-mode>CODE_FRAGMENT</evaluation-mode> + </expression> + <expression> <expression-string>openstack_api.neutron.floating_ip_associate(request, '726906f3-0d05-4440-9027-da11bedef351', port_id)</expression-string> <language-id>Python</language-id> <evaluation-mode>CODE_FRAGMENT</evaluation-mode> @@ -634,11 +555,6 @@ certifi.where()</expression-string> <language-id>Python</language-id> <evaluation-mode>CODE_FRAGMENT</evaluation-mode> </expression> - <expression> - <expression-string>improt</expression-string> - <language-id>Python</language-id> - <evaluation-mode>CODE_FRAGMENT</evaluation-mode> - </expression> </expressions> <expressions id="breakpointCondition"> <expression> @@ -701,13 +617,6 @@ certifi.where()</expression-string> </expressions> </component> <component name="editorHistoryManager"> - <entry file="file://$PROJECT_DIR$/circle/circle/os_policies/circle_policy.json"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="136"> - <caret line="8" column="1" lean-forward="true" selection-start-line="8" selection-start-column="1" selection-end-line="8" selection-end-column="1" /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/circle/dashboard/templates/auth/login.html"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="459"> @@ -915,14 +824,6 @@ certifi.where()</expression-string> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/circle/circle/settings/base.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="760"> - <caret line="586" column="39" lean-forward="true" selection-start-line="586" selection-start-column="0" selection-end-line="586" selection-end-column="39" /> - <folding /> - </state> - </provider> - </entry> <entry file="file://$USER_HOME$/.virtualenvs/cloud/local/lib/python2.7/site-packages/neutronclient/v2_0/client.py"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="306"> @@ -1004,16 +905,6 @@ certifi.where()</expression-string> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/circle/dashboard/views/index.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="-357"> - <caret line="36" column="6" lean-forward="false" selection-start-line="36" selection-start-column="6" selection-end-line="36" selection-end-column="6" /> - <folding> - <element signature="e#731#787#0" expanded="false" /> - </folding> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/circle/openstack_api/base.py"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="156"> @@ -1049,7 +940,7 @@ certifi.where()</expression-string> <entry file="file://$PROJECT_DIR$/circle/dashboard/urls.py"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="614"> - <caret line="228" column="22" lean-forward="true" selection-start-line="228" selection-start-column="22" selection-end-line="228" selection-end-column="22" /> + <caret line="228" column="22" lean-forward="false" selection-start-line="228" selection-start-column="22" selection-end-line="228" selection-end-column="22" /> <folding /> </state> </provider> @@ -1064,18 +955,10 @@ certifi.where()</expression-string> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/circle/dashboard/views/vm.py"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="148"> - <caret line="586" column="0" lean-forward="false" selection-start-line="586" selection-start-column="0" selection-end-line="586" selection-end-column="0" /> - <folding /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/circle/dashboard/views/util.py"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="148"> - <caret line="296" column="19" lean-forward="true" selection-start-line="296" selection-start-column="19" selection-end-line="296" selection-end-column="32" /> + <caret line="296" column="19" lean-forward="false" selection-start-line="296" selection-start-column="19" selection-end-line="296" selection-end-column="32" /> <folding /> </state> </provider> @@ -1096,10 +979,42 @@ certifi.where()</expression-string> </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/circle/vm/operations.py"> + <entry file="file://$PROJECT_DIR$/circle/dashboard/views/vm.py"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="148"> - <caret line="472" column="55" lean-forward="false" selection-start-line="472" selection-start-column="55" selection-end-line="472" selection-end-column="55" /> + <caret line="586" column="0" lean-forward="false" selection-start-line="586" selection-start-column="0" selection-end-line="586" selection-end-column="0" /> + <folding /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/circle/circle/settings/base.py"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="482"> + <caret line="592" column="17" lean-forward="false" selection-start-line="592" selection-start-column="17" selection-end-line="592" selection-end-column="17" /> + <folding /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/circle/dashboard/views/index.py"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="52"> + <caret line="67" column="13" lean-forward="true" selection-start-line="67" selection-start-column="13" selection-end-line="67" selection-end-column="13" /> + <folding /> + </state> + </provider> + </entry> + <entry file="file:///usr/lib/python2.7/SocketServer.py"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="306"> + <caret line="149" column="0" lean-forward="false" selection-start-line="149" selection-start-column="0" selection-end-line="149" selection-end-column="0" /> + <folding /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/circle/vm/operations.py"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="316"> + <caret line="622" column="67" lean-forward="false" selection-start-line="622" selection-start-column="67" selection-end-line="622" selection-end-column="67" /> <folding /> </state> </provider> diff --git a/circle/vm/operations.py b/circle/vm/operations.py index ae0207a..44c4527 100644 --- a/circle/vm/operations.py +++ b/circle/vm/operations.py @@ -319,8 +319,8 @@ class DestroyOperation(InstanceOperation): resultant_state = 'DESTROYED' os_policy_actions = (("compute", "compute:delete"),) - def _operation(self, activity, system): - pass + def _operation(self, request): + openstack_api.nova.server_delete(request, self.instance.id) @register_operation @@ -392,8 +392,8 @@ class RebootOperation(InstanceOperation): accept_states = ('ACTIVE',) os_policy_actions = (("compute", "compute:reboot"),) - def _operation(self, activity): - pass + def _operation(self, request): + openstack_api.nova.server_reboot(request, self.instance.id) @register_operation @@ -619,18 +619,8 @@ class SleepOperation(InstanceOperation): accept_states = ('ACTIVE',) os_policy_actions = (("compute", "compute:suspend"),) - def is_preferred(self): - return (not self.instance.is_base and - self.instance.status == self.instance.STATUS.RUNNING) - - def on_abort(self, activity, error): - if isinstance(error, TimeLimitExceeded): - activity.resultant_state = None - else: - activity.resultant_state = 'ERROR' - - def _operation(self, activity, system): - pass + def _operation(self, request): + openstack_api.nova.server_suspend(request, self.instance.id) @register_operation @@ -653,8 +643,8 @@ class WakeUpOperation(InstanceOperation): else: activity.resultant_state = 'ERROR' - def _operation(self, activity): - pass + def _operation(self, request): + openstack_api.nova.server_resume(request, self.instance.id) @register_operation