cc1  v2.1
CC1 source code docs
 All Classes Namespaces Files Functions Variables Pages
security_group.py
Go to the documentation of this file.
1 # -*- coding: utf-8 -*-
2 # @COPYRIGHT_begin
3 #
4 # Copyright [2010-2014] Institute of Nuclear Physics PAN, Krakow, Poland
5 #
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
9 #
10 # http://www.apache.org/licenses/LICENSE-2.0
11 #
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 #
18 # @COPYRIGHT_end
19 
20 ##
21 # @package src.ec2
22 # EC2 actions for security groups
23 #
24 # @copyright Copyright (c) 2012 Institute of Nuclear Physics PAS <http://www.ifj.edu.pl/>
25 # @author Łukasz Chrząszcz <l.chrzaszcz@gmail.com>
26 #
27 
28 from ec2.base.action import Action
29 from ec2.error import CannotDelete, InvalidGroup, MissingParameter
30 
31 
32 # We don't support security groups, but some scripts and applications
33 # use them, so when required we return default security group
34 class DescribeSecurityGroups(Action):
35  def _execute(self):
36  return None # default values are returned by xml template
37 
38 
39 class DeleteSecurityGroup(Action):
40  def _execute(self):
41  try:
42  group_name = self.parameters['GroupName']
43  except KeyError, error:
44  raise MissingParameter(parameter=error.args[0])
45 
46  if group_name == 'default':
47  raise CannotDelete
48 
49  # if group_name is not default then raise error, because there's no way to create other group :D
50  raise InvalidGroup.NotFound
51