def run_deploy_upsert_load_balancer_pipeline(self): url_path = 'pipelines/{0}/{1}'.format(self.TEST_APP, self.pipeline_id) previous_group_name = frigga.Naming.server_group( app=self.TEST_APP, stack=self.TEST_STACK, version='v000') deployed_group_name = frigga.Naming.server_group( app=self.TEST_APP, stack=self.TEST_STACK, version='v001') payload = self.agent.make_json_payload_from_kwargs( type='manual', user='******') builder = gcp.GcpContractBuilder(self.appengine_observer) (builder.new_clause_builder('Service Modified', retryable_for_secs=60) .inspect_resource('apps.services', self.__lb_name, appsId=self.__gcp_project) .EXPECT( ov_factory.value_list_path_contains( jp.build_path('split', 'allocations'), jp.DICT_MATCHES({previous_group_name: jp.NUM_EQ(0.9), deployed_group_name: jp.NUM_EQ(0.1)})))) return st.OperationContract( self.new_post_operation( title='run_deploy_upsert_load_balancer_pipeline', data=payload, path=url_path), builder.build())
def upsert_google_server_group_tags(self): # pylint: disable=bad-continuation server_group_name = 'katotest-server-group' payload = self.agent.type_to_payload( 'upsertGoogleServerGroupTagsDescription', { 'credentials': self.bindings['SPINNAKER_GOOGLE_ACCOUNT'], 'zone': self.bindings['TEST_GCE_ZONE'], 'serverGroupName': 'katotest-server-group', 'tags': ['test-tag-1', 'test-tag-2'] }) builder = gcp.GcpContractBuilder(self.gcp_observer) (builder.new_clause_builder('Server Group Tags Added') .inspect_resource('instanceGroupManagers', server_group_name) .EXPECT( ov_factory.value_list_contains( jp.DICT_MATCHES({ 'name': jp.STR_SUBSTR(server_group_name), jp.build_path('tags', 'items'): jp.LIST_MATCHES(['test-tag-1', 'test-tag-2']) })))) return st.OperationContract( self.new_post_operation( title='upsert_server_group_tags', data=payload, path='ops'), contract=builder.build())
def upsert_google_server_group_tags(self): # pylint: disable=bad-continuation server_group_name = 'katotest-server-group' payload = self.agent.type_to_payload( 'upsertGoogleServerGroupTagsDescription', { 'credentials': self.bindings['SPINNAKER_GOOGLE_ACCOUNT'], 'zone': self.bindings['TEST_GCE_ZONE'], 'serverGroupName': 'katotest-server-group', 'tags': ['test-tag-1', 'test-tag-2'] }) builder = gcp.GcpContractBuilder(self.gcp_observer) (builder.new_clause_builder( 'Server Group Tags Added').inspect_resource( 'instanceGroupManagers', server_group_name).EXPECT( ov_factory.value_list_contains( jp.DICT_MATCHES({ 'name': jp.STR_SUBSTR(server_group_name), jp.build_path('tags', 'items'): jp.LIST_MATCHES(['test-tag-1', 'test-tag-2']) })))) return st.OperationContract(self.new_post_operation( title='upsert_server_group_tags', data=payload, path='ops'), contract=builder.build())
def upsert_google_server_group_tags(self): # pylint: disable=bad-continuation server_group_name = "katotest-server-group" payload = self.agent.type_to_payload( "upsertGoogleServerGroupTagsDescription", { "credentials": self.bindings["SPINNAKER_GOOGLE_ACCOUNT"], "zone": self.bindings["TEST_GCE_ZONE"], "serverGroupName": "katotest-server-group", "tags": ["test-tag-1", "test-tag-2"], }, ) builder = gcp.GcpContractBuilder(self.gcp_observer) (builder.new_clause_builder( "Server Group Tags Added").inspect_resource( "instanceGroupManagers", server_group_name).EXPECT( ov_factory.value_list_contains( jp.DICT_MATCHES({ "name": jp.STR_SUBSTR(server_group_name), jp.build_path("tags", "items"): jp.LIST_MATCHES(["test-tag-1", "test-tag-2"]), })))) return st.OperationContract( self.new_post_operation(title="upsert_server_group_tags", data=payload, path="ops"), contract=builder.build(), )
def run_deploy_upsert_load_balancer_pipeline(self): url_path = 'pipelines/{0}/{1}'.format(self.TEST_APP, self.pipeline_id) previous_group_name = frigga.Naming.server_group( app=self.TEST_APP, stack=self.TEST_STACK, version='v000') deployed_group_name = frigga.Naming.server_group( app=self.TEST_APP, stack=self.TEST_STACK, version='v001') payload = self.agent.make_json_payload_from_kwargs( type='manual', user='******') builder = gcp.GcpContractBuilder(self.appengine_observer) (builder.new_clause_builder('Service Modified', retryable_for_secs=30) .inspect_resource('apps.services', self.__lb_name, appsId=self.__gcp_project) .EXPECT( ov_factory.value_list_path_contains( jp.build_path('split', 'allocations'), jp.DICT_MATCHES({previous_group_name: jp.NUM_EQ(0.9), deployed_group_name: jp.NUM_EQ(0.1)})))) return st.OperationContract( self.new_post_operation( title='run_deploy_upsert_load_balancer_pipeline', data=payload, path=url_path), builder.build())
def run_deploy_upsert_load_balancer_pipeline(self): url_path = "pipelines/{0}/{1}".format(self.TEST_APP, self.pipeline_id) previous_group_name = frigga.Naming.server_group( app=self.TEST_APP, stack=self.TEST_STACK, version="v000" ) deployed_group_name = frigga.Naming.server_group( app=self.TEST_APP, stack=self.TEST_STACK, version="v001" ) payload = self.agent.make_json_payload_from_kwargs( type="manual", user="******" ) builder = gcp.GcpContractBuilder(self.appengine_observer) ( builder.new_clause_builder("Service Modified", retryable_for_secs=60) .inspect_resource( "apps.services", self.__lb_name, appsId=self.__gcp_project ) .EXPECT( ov_factory.value_list_path_contains( jp.build_path("split", "allocations"), jp.DICT_MATCHES( { previous_group_name: jp.NUM_EQ(0.9), deployed_group_name: jp.NUM_EQ(0.1), } ), ) ) ) return st.OperationContract( self.new_post_operation( title="run_deploy_upsert_load_balancer_pipeline", data=payload, path=url_path, ), builder.build(), )