Package org.jclouds.virtualbox.domain

Examples of org.jclouds.virtualbox.domain.VmSpec


            .build();

      StorageController ideController = StorageController.builder().name("IDE Controller").bus(StorageBus.IDE)
            .attachISO(0, 0, localIsoUrl).attachHardDisk(hardDisk).build();

      VmSpec vmSpecification = VmSpec.builder().id(currentImage.id).name(vmName).memoryMB(512)
            .osTypeId(getOsTypeId(currentImage.os_family, currentImage.os_64bit)).controller(ideController)
            .forceOverwrite(true).guestUser(currentImage.username).guestPassword(currentImage.credential)
            .cleanUpMode(CleanupMode.Full).build();

      NetworkAdapter networkAdapter = NetworkAdapter.builder().networkAttachmentType(NetworkAttachmentType.NAT)
            .tcpRedirectRule(providerSupplier.get().getHost(), NetworkUtils.MASTER_PORT, "", 22).build();

      NetworkInterfaceCard networkInterfaceCard = NetworkInterfaceCard.builder().addNetworkAdapter(networkAdapter)
            .slot(0L).build();

      NetworkSpec networkSpec = NetworkSpec.builder().addNIC(networkInterfaceCard).build();

      String installationSequence = currentImage.keystroke_sequence.replace("HOSTNAME", vmSpecification.getVmName());
      return MasterSpec.builder()
                       .vm(vmSpecification)
                       .iso(IsoSpec.builder()
                                   .sourcePath(localIsoUrl)
                                   .installationScript(installationSequence)
View Full Code Here


   protected void undoVm(String vmNameOrId) {
      IMachine vm = null;
      try {
         vm = manager.get().getVBox().findMachine(vmNameOrId);
         VmSpec vmSpec = new IMachineToVmSpec().apply(vm);
         int attempts = 0;
         while (attempts < 10 && !vm.getSessionState().equals(SessionState.Unlocked)) {
            attempts++;
            Uninterruptibles.sleepUninterruptibly(200, TimeUnit.MILLISECONDS);
         }
View Full Code Here

               .attachISO(0, 0, operatingSystemIso)
               .attachHardDisk(
                        HardDisk.builder().diskpath(adminDisk(masterName)).controllerPort(0).deviceSlot(1)
                                 .autoDelete(true).build()).attachISO(1, 0, guestAdditionsIso).build();

      VmSpec sourceVmSpec = VmSpec.builder().id(masterName).name(masterName).osTypeId("").memoryMB(512)
               .cleanUpMode(CleanupMode.Full).controller(ideController).forceOverwrite(true).build();

      IsoSpec isoSpec = IsoSpec
               .builder()
               .sourcePath(operatingSystemIso)
View Full Code Here

   public void testIsoPresent() {
      StorageController ideController = StorageController.builder().name("IDE Controller").bus(StorageBus.IDE)
               .attachISO(1, 0, "VBoxGuestAdditions_").build();

      VmSpec vmSpecification = VmSpec.builder().id("").name("").memoryMB(512).osTypeId("").controller(ideController)
               .forceOverwrite(true).cleanUpMode(CleanupMode.Full).build();

      InstallGuestAdditions installer = new InstallGuestAdditions(vmSpecification, "4.1.8");
      String scripts = installer.render(OsFamily.UNIX);
      assertEquals(scripts, "installModuleAssistantIfNeeded || return 1\n" + "mount -t iso9660 /dev/cdrom1 /mnt\n"
View Full Code Here

   }
  
   public void testIsoNotPresent() {
      StorageController ideController = StorageController.builder().name("IDE Controller").bus(StorageBus.IDE).build();

      VmSpec vmSpecification = VmSpec.builder().id("").name("").memoryMB(512).osTypeId("").controller(ideController)
               .forceOverwrite(true).cleanUpMode(CleanupMode.Full).build();

      InstallGuestAdditions installer = new InstallGuestAdditions(vmSpecification, "4.1.8");
      String scripts = installer.render(OsFamily.UNIX);
      assertEquals(scripts,
View Full Code Here

               .attachISO(0, 0, operatingSystemIso)
               .attachHardDisk(
                        HardDisk.builder().diskpath(adminDisk(instanceName)).controllerPort(0).deviceSlot(1)
                                 .autoDelete(true).build()).attachISO(1, 1, guestAdditionsIso).build();

      VmSpec instanceVmSpec = VmSpec.builder().id(instanceName).name(instanceName).osTypeId("").memoryMB(512)
               .cleanUpMode(CleanupMode.Full).controller(ideController).forceOverwrite(true).build();

      Injector injector = view.utils().injector();
      IsoSpec isoSpec = IsoSpec
               .builder()
View Full Code Here

      this.preconfigurationUrl = preconfigurationUrl;
   }

   @Override
   public IMachine apply(MasterSpec masterSpec) {
      VmSpec vmSpec = masterSpec.getVmSpec();
      IsoSpec isoSpec = masterSpec.getIsoSpec();
      String masterName = vmSpec.getVmName();
      IMachine masterMachine =
              checkNotNull(createAndRegisterMachineFromIsoIfNotAlreadyExists.apply(masterSpec), "master machine");
      // Launch machine and wait for it to come online
      machineController.ensureMachineIsLaunched(masterName);
      String installationKeySequence = isoSpec.getInstallationKeySequence().replace("PRECONFIGURATION_URL",
View Full Code Here

               .attachISO(0, 0, operatingSystemIso)
               .attachHardDisk(
                        HardDisk.builder().diskpath(adminDisk(instanceName)).controllerPort(0).deviceSlot(1)
                                 .autoDelete(true).build()).attachISO(1, 1, guestAdditionsIso).build();

      VmSpec instanceVmSpec = VmSpec.builder().id(instanceName).name(instanceName).osTypeId("").memoryMB(512)
               .cleanUpMode(CleanupMode.Full).controller(ideController).forceOverwrite(true).build();

      injector = view.utils().injector();
      IsoSpec isoSpec = IsoSpec
               .builder()
View Full Code Here

            throw e;
      }
   }

   private IMachine createMachine(IVirtualBox vBox, MasterSpec masterSpec) {
      VmSpec vmSpec = masterSpec.getVmSpec();
      String flags = "";
      List<String> groups = Lists.newArrayList();
      String group = "";
      String settingsFile = manager.get().getVBox().composeMachineFilename(vmSpec.getVmName(), group , flags , workingDir);

      IMachine newMachine = vBox.createMachine(settingsFile, vmSpec.getVmName(), groups, vmSpec.getOsTypeId(), flags);
     
      manager.get().getVBox().registerMachine(newMachine);
      ensureConfiguration(masterSpec);
      return newMachine;
   }
View Full Code Here

      ensureConfiguration(masterSpec);
      return newMachine;
   }

   private void ensureConfiguration(MasterSpec machineSpec) {
      VmSpec vmSpec = machineSpec.getVmSpec();
      NetworkSpec networkSpec = machineSpec.getNetworkSpec();
      String vmName = vmSpec.getVmName();

      // Change BootOrder
      Map<Long, DeviceType> positionAndDeviceType = ImmutableMap.of(1l, DeviceType.HardDisk);
      ensureMachineHasDesiredBootOrder(vmName, positionAndDeviceType);

      // Change RAM
      ensureMachineHasMemory(vmName, vmSpec.getMemory());

      Set<StorageController> controllers = vmSpec.getControllers();
      if (controllers.isEmpty()) {
         throw new IllegalStateException(missingIDEControllersMessage(vmSpec));
      }
      StorageController controller = controllers.iterator().next();
      ensureMachineHasStorageControllerNamed(vmName, controller);
View Full Code Here

TOP

Related Classes of org.jclouds.virtualbox.domain.VmSpec

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.