Search in sources :

Example 71 with Service

use of org.ovirt.engine.sdk4.Service in project ovirt-engine-sdk-java by oVirt.

the class FollowVmLinks method main.

public static void main(String[] args) throws Exception {
    // Create the connection to the server:
    Connection connection = connection().url("https://engine40.example.com/ovirt-engine/api").user("admin@internal").password("redhat123").trustStoreFile("truststore.jks").build();
    // Get the reference to the service that manages virtual machines:
    VmsService vmsService = connection.systemService().vmsService();
    // Find the virtual machine:
    Vm vm = vmsService.list().search("name=myvm").send().vms().get(0);
    // When the server returns a virtual machine it will return links to related objects, like the cluster,
    // template and permissions something like this:
    // 
    // <link href="/api/vms/123/permissions" rel="permissions"/>
    // ...
    // <cluster id="123" href="/api/clusters/123"/>
    // <template id="456" href="/api/templates/456"/>
    // 
    // The SDK provides a "followLink" method that can be used to retrieve the complete content of these related
    // objects.
    Cluster cluster = connection.followLink(vm.cluster());
    Template template = connection.followLink(vm.template());
    List<Permission> permissions = connection.followLink(vm.permissions());
    // Now we can use the details of the cluster, template and permissions:
    System.out.printf("cluster: %s\n", cluster.name());
    System.out.printf("template: %s\n", template.name());
    for (Permission permission : permissions) {
        System.out.printf("role: %s\n", permission.role().id());
    }
    // Close the connection to the server:
    connection.close();
}
Also used : Vm(org.ovirt.engine.sdk4.types.Vm) Connection(org.ovirt.engine.sdk4.Connection) Permission(org.ovirt.engine.sdk4.types.Permission) Cluster(org.ovirt.engine.sdk4.types.Cluster) VmsService(org.ovirt.engine.sdk4.services.VmsService) Template(org.ovirt.engine.sdk4.types.Template)

Example 72 with Service

use of org.ovirt.engine.sdk4.Service in project ovirt-engine-sdk-java by oVirt.

the class ImportGlanceImage method main.

public static void main(String[] args) throws Exception {
    // Create the connection to the server:
    Connection connection = connection().url("https://engine40.example.com/ovirt-engine/api").user("admin@internal").password("redhat123").trustStoreFile("truststore.jks").build();
    // Get the root of the services tree:
    SystemService systemService = connection.systemService();
    // Find the Glance storage domain that is available for default in any oVirt installation:
    StorageDomainsService sdsService = systemService.storageDomainsService();
    StorageDomain sd = sdsService.list().search("name=ovirt-image-repository").send().storageDomains().get(0);
    // Find the servie that manages the Glance storage domain:
    StorageDomainService sdService = sdsService.storageDomainService(sd.id());
    // Find the service that manages the images available in that storage domain:
    ImagesService imagesService = sdService.imagesService();
    // The images service doesn't support search, so in roder to find an image we need to retrieve all of them and
    // do the filtering explicitly:
    List<Image> images = imagesService.list().send().images();
    Image image = null;
    for (Image i : images) {
        if (Objects.equals(i.name(), "CirrOS 0.3.4 for x86_64")) {
            image = i;
            break;
        }
    }
    // Find the service that manages the image that we found in the previous step:
    ImageService imageService = imagesService.imageService(image.id());
    // Import the image:
    imageService.import_().importAsTemplate(true).template(template().name("mytemplate")).cluster(cluster().name("mycluster")).storageDomain(storageDomain().name("mydata")).send();
    // Close the connection to the server:
    connection.close();
}
Also used : StorageDomainsService(org.ovirt.engine.sdk4.services.StorageDomainsService) StorageDomainService(org.ovirt.engine.sdk4.services.StorageDomainService) StorageDomain(org.ovirt.engine.sdk4.types.StorageDomain) SystemService(org.ovirt.engine.sdk4.services.SystemService) Connection(org.ovirt.engine.sdk4.Connection) ImagesService(org.ovirt.engine.sdk4.services.ImagesService) Image(org.ovirt.engine.sdk4.types.Image) ImageService(org.ovirt.engine.sdk4.services.ImageService)

Example 73 with Service

use of org.ovirt.engine.sdk4.Service in project ovirt-engine-sdk-java by oVirt.

the class DataCentersServiceTest method testGetObjectFromDataCenterService.

/**
 * Test we don't get null data center service for existing data center id and correct object
 */
@Test
public void testGetObjectFromDataCenterService() {
    DataCenterService dcService = dataCentersService.dataCenterService("123");
    DataCenter dc = dcService.get().send().dataCenter();
    assertEquals("123", dc.id());
    assertEquals("testdc", dc.name());
    assertNull(dc.description());
}
Also used : DataCenter(org.ovirt.engine.sdk4.types.DataCenter) DataCenterService(org.ovirt.engine.sdk4.services.DataCenterService) Test(org.junit.Test)

Example 74 with Service

use of org.ovirt.engine.sdk4.Service in project ovirt-engine-sdk-java by oVirt.

the class RegisterVm method main.

public static void main(String[] args) throws Exception {
    // Create the connection to the server:
    Connection connection = connection().url("https://engine/ovirt-engine/api").user("admin@internal").password("redhat123").trustStoreFile("truststore.jks").build();
    // Get the reference to the "StorageDomains" service:
    StorageDomainsService storageDomainsService = connection.systemService().storageDomainsService();
    // Find the storage domain with unregistered VM:
    StorageDomain sd = storageDomainsService.list().search("name=mysd").send().storageDomains().get(0);
    // Locate the service that manages the storage domain, as that is where the action methods are defined:
    StorageDomainService storageDomainService = storageDomainsService.storageDomainService(sd.id());
    // Locate the service that manages the VMs in storage domain:
    StorageDomainVmsService storageDomainVmsService = storageDomainService.vmsService();
    // Find the the unregistered VM we want to register:
    List<Vm> unregisteredVms = storageDomainVmsService.list().unregistered(true).send().vm();
    Vm vm = null;
    for (Vm x : unregisteredVms) {
        if ("myvm".equals(x.name())) {
            vm = x;
            break;
        }
    }
    // Locate the service that manages virtual machine in the storage domain, as that is where the action methods
    // are defined:
    StorageDomainVmService storageDomainVmService = storageDomainVmsService.vmService(vm.id());
    // Register the VM into the system:
    storageDomainVmService.register().vm(vm().name("exported_myvm")).cluster(cluster().name("mycluster")).vnicProfileMappings(vnicProfileMapping().sourceNetworkName("mynetwork").sourceNetworkProfileName("mynetwork").targetVnicProfile(vnicProfile().name("mynetwork"))).reassignBadMacs(true).send();
    // Close the connection to the server:
    connection.close();
}
Also used : StorageDomainsService(org.ovirt.engine.sdk4.services.StorageDomainsService) StorageDomainService(org.ovirt.engine.sdk4.services.StorageDomainService) StorageDomain(org.ovirt.engine.sdk4.types.StorageDomain) Vm(org.ovirt.engine.sdk4.types.Vm) Connection(org.ovirt.engine.sdk4.Connection) StorageDomainVmsService(org.ovirt.engine.sdk4.services.StorageDomainVmsService) StorageDomainVmService(org.ovirt.engine.sdk4.services.StorageDomainVmService)

Example 75 with Service

use of org.ovirt.engine.sdk4.Service in project ovirt-engine-sdk-java by oVirt.

the class RemoveHost method main.

public static void main(String[] args) throws Exception {
    // Create the connection to the server:
    Connection connection = connection().url("https://engine40.example.com/ovirt-engine/api").user("admin@internal").password("redhat123").trustStoreFile("truststore.jks").build();
    // Find the service that manages hosts:
    HostsService hostsService = connection.systemService().hostsService();
    // Find the host:
    Host host = hostsService.list().search("name=myhost").send().hosts().get(0);
    // Find the service that manages the host:
    HostService hostService = hostsService.hostService(host.id());
    // If the host isn't down or in maintenance then move it to maintenance:
    if (host.status() != HostStatus.MAINTENANCE) {
        hostService.deactivate().send();
    }
    // Remove the host:
    hostService.remove().send();
    // Close the connection to the server:
    connection.close();
}
Also used : HostService(org.ovirt.engine.sdk4.services.HostService) Connection(org.ovirt.engine.sdk4.Connection) HostsService(org.ovirt.engine.sdk4.services.HostsService) Host(org.ovirt.engine.sdk4.types.Host)

Aggregations

Connection (org.ovirt.engine.sdk4.Connection)55 Vm (org.ovirt.engine.sdk4.types.Vm)26 VmsService (org.ovirt.engine.sdk4.services.VmsService)25 Connector (org.eclipse.jst.server.tomcat.core.internal.xml.server40.Connector)22 Service (org.eclipse.jst.server.tomcat.core.internal.xml.server40.Service)22 CoreException (org.eclipse.core.runtime.CoreException)18 VmService (org.ovirt.engine.sdk4.services.VmService)15 ArrayList (java.util.ArrayList)12 StorageDomain (org.ovirt.engine.sdk4.types.StorageDomain)12 StorageDomainsService (org.ovirt.engine.sdk4.services.StorageDomainsService)11 SystemService (org.ovirt.engine.sdk4.services.SystemService)10 ServerPort (org.eclipse.wst.server.core.ServerPort)9 StorageDomainService (org.ovirt.engine.sdk4.services.StorageDomainService)7 HostService (org.ovirt.engine.sdk4.services.HostService)6 HostsService (org.ovirt.engine.sdk4.services.HostsService)6 Disk (org.ovirt.engine.sdk4.types.Disk)6 Test (org.junit.Test)5 DataCenterService (org.ovirt.engine.sdk4.services.DataCenterService)5 DataCentersService (org.ovirt.engine.sdk4.services.DataCentersService)5 Cluster (org.ovirt.engine.sdk4.types.Cluster)5