Пример #1
0
 def test_none(self):
     group = AutoScalingGroup(
         "mygroup",
         MaxSize="1",
         MinSize="1",
     )
     with self.assertRaises(ValueError):
         group.validate()
Пример #2
0
 def test_exclusive(self):
     group = AutoScalingGroup(
         "mygroup",
         InstanceId="i-1234",
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
     )
     with self.assertRaises(ValueError):
         group.validate()
Пример #3
0
 def test_mininstances(self):
     group = AutoScalingGroup(
         "mygroup",
         LaunchConfigurationName="I'm a test",
         MaxSize=1,
         MinSize=1,
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                 PauseTime="PT1M5S",
                 MinInstancesInService="1",
                 MaxBatchSize="1")),
     )
     with self.assertRaises(ValueError):
         group.validate()
Пример #4
0
    def test_AutoScalingRollingUpdate_validation(self):
        update_policy = UpdatePolicy(
            AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                MinInstancesInService="2", MaxBatchSize="1"))
        group = AutoScalingGroup(
            "mygroup",
            AvailabilityZones=["eu-west-1a", "eu-west-1b"],
            LaunchConfigurationName="I'm a test",
            MaxSize="2",
            MinSize="1",
            UpdatePolicy=update_policy,
        )

        with self.assertRaises(ValueError):
            group.validate()
Пример #5
0
 def test_instanceid(self):
     group = AutoScalingGroup(
         'mygroup',
         InstanceId="i-1234",
         MaxSize="1",
         MinSize="1",
     )
     self.assertTrue(group.validate())
Пример #6
0
 def test_launchconfigurationname(self):
     group = AutoScalingGroup(
         'mygroup',
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
     )
     self.assertTrue(group.validate())
Пример #7
0
 def test_none(self):
     group = AutoScalingGroup(
         'mygroup',
         MaxSize="1",
         MinSize="1",
     )
     with self.assertRaises(ValueError):
         self.assertTrue(group.validate())
Пример #8
0
 def test_instanceid(self):
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         InstanceId="i-1234",
         MaxSize="1",
         MinSize="1",
     )
     self.assertTrue(group.validate())
Пример #9
0
 def test_instanceid(self):
     group = AutoScalingGroup(
         'mygroup',
         AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
         InstanceId="i-1234",
         MaxSize="1",
         MinSize="1",
     )
     self.assertTrue(group.validate())
Пример #10
0
 def test_launchconfigurationname(self):
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
     )
     self.assertTrue(group.validate())
Пример #11
0
 def test_launchconfigurationname(self):
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
     )
     self.assertTrue(group.validate())
Пример #12
0
 def test_exclusive(self):
     group = AutoScalingGroup(
         'mygroup',
         InstanceId="i-1234",
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
     )
     with self.assertRaises(ValueError):
         self.assertTrue(group.validate())
Пример #13
0
 def test_AutoScalingRollingUpdate_all_defaults(self):
     group = AutoScalingGroup(
         'mygroup',
         AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate()))
     self.assertTrue(group.validate())
Пример #14
0
 def test_AutoScalingRollingUpdate_all_defaults(self):
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate()),
     )
     self.assertIsNone(group.validate())
Пример #15
0
 def test_AutoScalingRollingUpdate_all_defaults(self):
     group = AutoScalingGroup(
         'mygroup',
         AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate())
     )
     self.assertTrue(group.validate())
Пример #16
0
 def test_working(self):
     group = AutoScalingGroup('mygroup',
         LaunchConfigurationName="I'm a test",
         MaxSize="4",
         MinSize="2",
         UpdatePolicy=UpdatePolicy('AutoScalingRollingUpdate',
             PauseTime='PT1M5S',
             MinInstancesInService='2',
             MaxBatchSize='1',
         )
     )
     self.assertTrue(group.validate())
Пример #17
0
 def test_working(self):
     group = AutoScalingGroup('mygroup',
                              LaunchConfigurationName="I'm a test",
                              MaxSize="4",
                              MinSize="2",
                              UpdatePolicy=UpdatePolicy(
                                  'AutoScalingRollingUpdate',
                                  PauseTime='PT1M5S',
                                  MinInstancesInService='2',
                                  MaxBatchSize='1',
                              ))
     self.assertTrue(group.validate())
Пример #18
0
 def test_mininstances(self):
     group = AutoScalingGroup('mygroup',
                              LaunchConfigurationName="I'm a test",
                              MaxSize="1",
                              MinSize="1",
                              UpdatePolicy=UpdatePolicy(
                                  'AutoScalingRollingUpdate',
                                  PauseTime='PT1M5S',
                                  MinInstancesInService='1',
                                  MaxBatchSize='1',
                              ))
     with self.assertRaises(ValueError):
         self.assertTrue(group.validate())
Пример #19
0
 def test_mininstances_maxsize_is_ref(self):
     paramMaxSize = Parameter("ParamMaxSize", Type="String")
     group = AutoScalingGroup('mygroup',
                              LaunchConfigurationName="I'm a test",
                              MaxSize=Ref(paramMaxSize),
                              MinSize="2",
                              UpdatePolicy=UpdatePolicy(
                                  'AutoScalingRollingUpdate',
                                  PauseTime='PT1M5S',
                                  MinInstancesInService='2',
                                  MaxBatchSize="1",
                              ))
     self.assertTrue(group.validate())
Пример #20
0
 def test_mininstances(self):
     group = AutoScalingGroup('mygroup',
         LaunchConfigurationName="I'm a test",
         MaxSize="1",
         MinSize="1",
         UpdatePolicy=UpdatePolicy('AutoScalingRollingUpdate',
             PauseTime='PT1M5S',
             MinInstancesInService='1',
             MaxBatchSize='1',
         )
     )
     with self.assertRaises(ValueError):
         self.assertTrue(group.validate())
Пример #21
0
 def test_size_if(self):
     group = AutoScalingGroup(
         'mygroup',
         AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
         LaunchConfigurationName="I'm a test",
         MaxSize=If("isstage", "1", "5"),
         MinSize="1",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                 PauseTime='PT5M',
                 MinInstancesInService="1",
                 MaxBatchSize='1',
                 WaitOnResourceSignals=True)))
     self.assertTrue(group.validate())
Пример #22
0
    def test_AutoScalingRollingUpdate_validation(self):
        update_policy = UpdatePolicy(
            AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                MinInstancesInService="2", MaxBatchSize='1'))
        group = AutoScalingGroup(
            'mygroup',
            AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
            LaunchConfigurationName="I'm a test",
            MaxSize="2",
            MinSize="1",
            UpdatePolicy=update_policy)

        with self.assertRaises(ValueError):
            self.assertTrue(group.validate())
Пример #23
0
 def test_size_if(self):
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize=If("isstage", "1", "5"),
         MinSize="1",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                 PauseTime="PT5M", MinInstancesInService="1", MaxBatchSize="1", WaitOnResourceSignals=True
             )
         ),
     )
     self.assertTrue(group.validate())
Пример #24
0
 def test_helperfn_as_updatepolicy(self):
     update_policy = UpdatePolicy(
         AutoScalingRollingUpdate=AutoScalingRollingUpdate(
             PauseTime="PT5M", MinInstancesInService="1", MaxBatchSize="1", WaitOnResourceSignals=True
         )
     )
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize=If("isstage", "1", "5"),
         MinSize="1",
         UpdatePolicy=If("UseUpdatePolicy", update_policy, Ref("AWS::NoValue")),
     )
     self.assertTrue(group.validate())
Пример #25
0
 def test_mininstances_maxsize_is_ref(self):
     paramMaxSize = Parameter("ParamMaxSize", Type="String")
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize=Ref(paramMaxSize),
         MinSize="2",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                 PauseTime="PT1M5S",
                 MinInstancesInService="2",
                 MaxBatchSize="1")),
     )
     self.assertIsNone(group.validate())
Пример #26
0
 def test_mininstances_mininstancesinservice_is_ref(self):
     paramMinInstancesInService = Parameter("ParamMinInstancesInService",
                                            Type="String")
     group = AutoScalingGroup(
         'mygroup',
         AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
         LaunchConfigurationName="I'm a test",
         MaxSize="4",
         MinSize="2",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                 PauseTime='PT1M5S',
                 MinInstancesInService=Ref(paramMinInstancesInService),
                 MaxBatchSize="2",
             )))
     self.assertTrue(group.validate())
Пример #27
0
 def test_size_if(self):
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize=If("isstage", "1", "5"),
         MinSize="1",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                 PauseTime="PT5M",
                 MinInstancesInService="1",
                 MaxBatchSize="1",
                 WaitOnResourceSignals=True,
             )),
     )
     self.assertIsNone(group.validate())
Пример #28
0
 def test_helperfn_as_updatepolicy(self):
     update_policy = UpdatePolicy(
         AutoScalingRollingUpdate=AutoScalingRollingUpdate(
             PauseTime="PT5M",
             MinInstancesInService="1",
             MaxBatchSize="1",
             WaitOnResourceSignals=True,
         ))
     group = AutoScalingGroup(
         "mygroup",
         AvailabilityZones=["eu-west-1a", "eu-west-1b"],
         LaunchConfigurationName="I'm a test",
         MaxSize=If("isstage", "1", "5"),
         MinSize="1",
         UpdatePolicy=If("UseUpdatePolicy", update_policy,
                         Ref("AWS::NoValue")),
     )
     self.assertTrue(group.validate())
Пример #29
0
    def test_AutoScalingRollingUpdate_validation(self):
        update_policy = UpdatePolicy(
            AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                MinInstancesInService="2",
                MaxBatchSize='1'
            )
        )
        group = AutoScalingGroup(
            'mygroup',
            AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
            LaunchConfigurationName="I'm a test",
            MaxSize="2",
            MinSize="1",
            UpdatePolicy=update_policy
        )

        with self.assertRaises(ValueError):
            self.assertTrue(group.validate())
Пример #30
0
 def test_helperfn_as_AutoScalingRollingUpdate(self):
     update_policy = UpdatePolicy(AutoScalingRollingUpdate=If(
         'RollingUpdate',
         AutoScalingRollingUpdate(PauseTime='PT5M',
                                  MinInstancesInService="1",
                                  MaxBatchSize='1',
                                  WaitOnResourceSignals=True),
         Ref("AWS::NoValue"),
     ), )
     group = AutoScalingGroup(
         'mygroup',
         AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
         LaunchConfigurationName="I'm a test",
         MaxSize=If("isstage", "1", "5"),
         MinSize="1",
         UpdatePolicy=If("UseUpdatePolicy", update_policy,
                         Ref("AWS::NoValue")))
     self.assertTrue(group.validate())
Пример #31
0
 def test_mininstances_mininstancesinservice_is_ref(self):
     paramMinInstancesInService = Parameter(
         "ParamMinInstancesInService",
         Type="String"
     )
     group = AutoScalingGroup(
         'mygroup',
         LaunchConfigurationName="I'm a test",
         MaxSize="4",
         MinSize="2",
         UpdatePolicy=UpdatePolicy(
             'AutoScalingRollingUpdate',
             PauseTime='PT1M5S',
             MinInstancesInService=Ref(paramMinInstancesInService),
             MaxBatchSize="2",
         )
     )
     self.assertTrue(group.validate())
Пример #32
0
 def test_mininstances_maxsize_is_ref(self):
     paramMaxSize = Parameter(
         "ParamMaxSize",
         Type="String"
     )
     group = AutoScalingGroup(
         'mygroup',
         AvailabilityZones=['eu-west-1a', 'eu-west-1b'],
         LaunchConfigurationName="I'm a test",
         MaxSize=Ref(paramMaxSize),
         MinSize="2",
         UpdatePolicy=UpdatePolicy(
             AutoScalingRollingUpdate=AutoScalingRollingUpdate(
                 PauseTime='PT1M5S',
                 MinInstancesInService='2',
                 MaxBatchSize="1"
             )
         )
     )
     self.assertTrue(group.validate())
Пример #33
0
 def test_instanceid(self):
     group = AutoScalingGroup(
         "mygroup", AvailabilityZones=["eu-west-1a", "eu-west-1b"], InstanceId="i-1234", MaxSize="1", MinSize="1"
     )
     self.assertTrue(group.validate())