def commit_azure_virtual_machine( name, label, status, dns, public_ip, private_ip, cloud_service_name, deployment_name, experiment_id, virtual_environment, ): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) dm = db_adapter.find_first_object_by(AzureDeployment, name=deployment_name, cloud_service=cs) vm = db_adapter.add_object_kwargs( AzureVirtualMachine, name=name, label=label, status=status, dns=dns, public_ip=public_ip, private_ip=private_ip, deployment=dm, experiment_id=experiment_id, virtual_environment=virtual_environment, ) db_adapter.commit() return vm
def delete_azure_virtual_machine(cloud_service_name, deployment_name, virtual_machine_name): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) dm = db_adapter.find_first_object_by(AzureDeployment, name=deployment_name, cloud_service=cs) db_adapter.delete_all_objects_by(AzureVirtualMachine, name=virtual_machine_name, deployment_id=dm.id) db_adapter.commit()
def update_azure_virtual_machine_status(cloud_service_name, deployment_name, virtual_machine_name, status): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) dm = db_adapter.find_first_object_by(AzureDeployment, name=deployment_name, cloud_service=cs) vm = db_adapter.find_first_object_by(AzureVirtualMachine, name=virtual_machine_name, deployment=dm) vm.status = status db_adapter.commit() return vm
def contain_azure_virtual_machine(cloud_service_name, deployment_name, virtual_machine_name): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) dm = db_adapter.find_first_object_by(AzureDeployment, name=deployment_name, cloud_service=cs) return db_adapter.count_by(AzureVirtualMachine, name=virtual_machine_name, deployment_id=dm.id) != 0
def setup_db(): """Initialize db tables make sure database and user correctly created in mysql in case upgrade the table structure, the origin table need be dropped firstly """ Base.metadata.create_all(bind=engine) # init REQUIRED db data. # reserved user res_u = db_adapter.get_object(User, ReservedUser.DefaultUserID) if res_u is None: db_adapter.add_object_kwargs(User, id=ReservedUser.DefaultUserID, create_time=get_now()) # default super admin if db_adapter.get_object(User, ReservedUser.DefaultSuperAdmin) is None: db_adapter.add_object_kwargs( User, id=ReservedUser.DefaultSuperAdmin, name="admin", nickname="admin", password="******") # default admin privilege if db_adapter.find_first_object_by(AdminHackathonRel, user_id=ReservedUser.DefaultSuperAdmin, hackathon_id=-1) is None: db_adapter.add_object_kwargs(AdminHackathonRel, user_id=ReservedUser.DefaultSuperAdmin, hackathon_id=-1, role_type=ADMIN_ROLE_TYPE.ADMIN)
def delete_azure_deployment(cloud_service_name, deployment_slot): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) db_adapter.delete_all_objects_by(AzureDeployment, slot=deployment_slot, cloud_service_id=cs.id) db_adapter.commit()
def setup_db(): """Initialize db tables make sure database and user correctly created in mysql in case upgrade the table structure, the origin table need be dropped firstly """ Base.metadata.create_all(bind=engine) # init REQUIRED db data. # reserved user res_u = db_adapter.get_object(User, ReservedUser.DefaultUserID) if res_u is None: db_adapter.add_object_kwargs(User, id=ReservedUser.DefaultUserID, create_time=get_now()) # default super admin if db_adapter.get_object(User, ReservedUser.DefaultSuperAdmin) is None: db_adapter.add_object_kwargs(User, id=ReservedUser.DefaultSuperAdmin, name="admin", nickname="admin", password="******") # default admin privilege if db_adapter.find_first_object_by(AdminHackathonRel, user_id=ReservedUser.DefaultSuperAdmin, hackathon_id=-1) is None: db_adapter.add_object_kwargs(AdminHackathonRel, user_id=ReservedUser.DefaultSuperAdmin, hackathon_id=-1, role_type=ADMIN_ROLE_TYPE.ADMIN)
def commit_azure_virtual_machine(name, label, status, dns, public_ip, private_ip, cloud_service_name, deployment_name, experiment_id, virtual_environment): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) dm = db_adapter.find_first_object_by(AzureDeployment, name=deployment_name, cloud_service=cs) vm = db_adapter.add_object_kwargs(AzureVirtualMachine, name=name, label=label, status=status, dns=dns, public_ip=public_ip, private_ip=private_ip, deployment=dm, experiment_id=experiment_id, virtual_environment=virtual_environment) db_adapter.commit() return vm
def test_host_ports(self): mock_cache = Mock() mock_cache.host_ports = [] for i in range(0, 29): OssDocker.host_ports.append(i) mock_cache.host_ports.append(i) mock_cache.host_ports.append(10001) docker1 = OssDocker() return_port = docker1.get_available_host_port(db_adapter.find_first_object_by(DockerHostServer, id=1), 1) self.assertEqual(10001, return_port) self.assertListEqual(mock_cache.host_ports, OssDocker.host_ports) docker2 = OssDocker() mock_cache.host_ports = [10002] return_port = docker2.get_available_host_port(db_adapter.find_first_object_by(DockerHostServer, id=1), 2) self.assertEqual(10002, return_port) self.assertListEqual(mock_cache.host_ports, OssDocker.host_ports)
def commit_azure_deployment(name, slot, status, cloud_service_name, experiment_id): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) db_adapter.add_object_kwargs(AzureDeployment, name=name, slot=slot, status=status, cloud_service=cs, experiment_id=experiment_id) db_adapter.commit()
def test_host_ports(self): mock_cache = Mock() mock_cache.host_ports = [] for i in range(0, 29): OssDocker.host_ports.append(i) mock_cache.host_ports.append(i) mock_cache.host_ports.append(10001) docker1 = OssDocker() return_port = docker1.get_available_host_port( db_adapter.find_first_object_by(DockerHostServer, id=1), 1) self.assertEqual(10001, return_port) self.assertListEqual(mock_cache.host_ports, OssDocker.host_ports) docker2 = OssDocker() mock_cache.host_ports = [10002] return_port = docker2.get_available_host_port( db_adapter.find_first_object_by(DockerHostServer, id=1), 2) self.assertEqual(10002, return_port) self.assertListEqual(mock_cache.host_ports, OssDocker.host_ports)
def setup_db(): # initialize db tables # make sure database and user correctly created in mysql # in case upgrade the table structure, the origin table need be dropped firstly Base.metadata.create_all(bind=engine) # init db : add a super admin account superadmin = db_adapter.find_first_object_by(AdminUserHackathonRel, admin_email=ADMIN.DEFAULT_SUPER_ADMIN_EMAIL, hackathon_id=ADMIN.SUPER_ADMIN_GROUP_ID) if superadmin is None: db_adapter.add_object_kwargs(AdminUserHackathonRel, admin_email=ADMIN.DEFAULT_SUPER_ADMIN_EMAIL, hackathon_id=ADMIN.SUPER_ADMIN_GROUP_ID, state=AdminUserHackathonRelStates.Actived, remarks='super admins', create_time=datetime.utcnow()) db_adapter.commit()
def setup_db(): # initialize db tables # make sure database and user correctly created in mysql # in case upgrade the table structure, the origin table need be dropped firstly Base.metadata.create_all(bind=engine) # init db : add a super admin account superadmin = db_adapter.find_first_object_by( AdminUserHackathonRel, admin_email=ADMIN.DEFAULT_SUPER_ADMIN_EMAIL, hackathon_id=ADMIN.SUPER_ADMIN_GROUP_ID) if superadmin is None: db_adapter.add_object_kwargs( AdminUserHackathonRel, admin_email=ADMIN.DEFAULT_SUPER_ADMIN_EMAIL, hackathon_id=ADMIN.SUPER_ADMIN_GROUP_ID, state=AdminUserHackathonRelStates.Actived, remarks='super admins', create_time=datetime.utcnow()) db_adapter.commit()
def contain_azure_deployment(cloud_service_name, deployment_slot): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) return db_adapter.count_by(AzureDeployment, slot=deployment_slot, cloud_service_id=cs.id) != 0
def get_hackathon_list(self, name=None): if name is not None: return db_adapter.find_first_object_by(Hackathon, name=name).json() return map(lambda u: u.json(), db_adapter.find_all_objects(Hackathon))
def contain_azure_deployment(cloud_service_name, deployment_slot): cs = db_adapter.find_first_object_by(AzureCloudService, name=cloud_service_name) return db_adapter.count_by( AzureDeployment, slot=deployment_slot, cloud_service_id=cs.id) != 0