def _create_and_deploy_env_session(self): name = utils.generate_name('_create_and_deploy_env_session') environment = self.application_catalog_client.create_environment(name) self.addCleanup(self.application_catalog_client.delete_environment, environment['id']) session = self.application_catalog_client.create_session( environment['id']) self.addCleanup(self.application_catalog_client.delete_session, environment['id'], session['id']) self.application_catalog_client.deploy_session(environment['id'], session['id']) utils.wait_for_environment_deploy(self.application_catalog_client, environment['id']) return environment
def test_deploy_package_with_required_package_version(self): """Test deployment of package which requires package with present version. 1) Create environment. 2) Add to the environment package which requires version 2.0.0 of the package, which is present with versions 1.0.0 and 2.0.0 in repository. 3) Deploy environment. 4) Check if deployment status ok. """ # create environment environment_name = utils.generate_name('create_environment') environment = self.application_catalog_client.create_environment( environment_name) self.addCleanup(self.application_catalog_client.delete_environment, environment['id']) # create session session = self.application_catalog_client.create_session( environment['id']) object_model = self.create_obj_model( self.packages['require_for_2.0.0']) self.application_catalog_client.create_service(environment['id'], session['id'], object_model) self.application_catalog_client.deploy_session(environment['id'], session['id']) deploy_result = utils.wait_for_environment_deploy( self.application_catalog_client, environment['id'])['status'] self.assertEqual(deploy_result, 'ready')
def deploy_environment(self, environment, session): self.application_catalog_client.deploy_session(environment['id'], session['id']) timeout = 1800 deployed_env = utils.wait_for_environment_deploy(environment, timeout=timeout) if deployed_env['status'] == 'ready': return deployed_env elif deployed_env['status'] == 'deploying': self.fail( 'Environment deployment is not finished in {} seconds'.format( timeout)) else: self.fail('Environment has status {}'.format( deployed_env['status']))
def test_deploy_session(self): # Given an environment with a session name = utils.generate_name('_create_and_deploy_env_session') environment = self.application_catalog_client.create_environment(name) self.addCleanup(self.application_catalog_client.delete_environment, environment['id']) session = self.application_catalog_client.create_session( environment['id']) self.addCleanup(self.application_catalog_client.delete_session, environment['id'], session['id']) # When deploy session is called self.application_catalog_client.deploy_session(environment['id'], session['id']) utils.wait_for_environment_deploy(self.application_catalog_client, environment['id']) # Then there is only one deployment and it is in a success state fetched_deployments = self.application_catalog_client.list_deployments( environment['id']) self.assertEqual(1, len(fetched_deployments)) first_deployment = fetched_deployments[0] self.assertEqual(environment['id'], first_deployment['environment_id']) self.assertEqual('success', first_deployment['state'])
def test_deploy_packages_with_different_versions(self): """Test deployment of packages with different versions. 1) Create environment. 2) Add package with version 1.0.0 to the environment. 3) Add package with version 2.0.0 to the environment. 4) Deploy environment. 5) Check if deployment status ok. """ # create environment environment_name = utils.generate_name('create_environment') environment = self.application_catalog_client.create_environment( environment_name) self.addCleanup(self.application_catalog_client.delete_environment, environment['id']) # create session session = self.application_catalog_client.create_session( environment['id']) # add first application object_model = self.create_obj_model(self.packages['1.0.0']) self.application_catalog_client.create_service(environment['id'], session['id'], object_model) # add second application object_model = self.create_obj_model(self.packages['2.0.0']) self.application_catalog_client.create_service(environment['id'], session['id'], object_model) self.application_catalog_client.deploy_session(environment['id'], session['id']) deploy_result = utils.wait_for_environment_deploy( self.application_catalog_client, environment['id'])['status'] self.assertEqual(deploy_result, 'ready')