It was accessing the wrong field and using "memory available" for "networks".
This reverts commit 29f80b0. This commit was not needed because the Accounting DB is normally already created.
The feature added to select different networks for each instance type was only allowing one network. Make it possible to configure both the public and the private network.
Corrupted instances have shutdown capabilities disabled. When --shutdown --all is called, it would stop at the first Corrupted instance with the following message: RemoteException occurred in server thread; nested exception is: java.rmi.RemoteException: Shutdown is currently disabled Catch the exception and continue to the next instance. A warning is printing in the logs and a message is returned to the user. Also add a --force argument to nimbus-admin to activate the trash operation for instances that didn't shut down properly.
…ed access to the system due to quota or resource limits
VMM failure can sometimes leave VMs in corrupted or cancelled state, with the service node trying to destroy them repetitively even if they already disappeared from the VMM. The --cleanup option in nimbus-admin now allows an administrator to clean up the service of VMs without performing any action on VMMs. Allocated IPs are released, memory is given back to the VMM node, and VM information is removed from the persistence database. WARNING: administrators should make sure all VMM resources are actually free'd (VM is terminated, images are removed, ebtables rules are deleted...) before doing a cleanup, as the service will not perform these operations.
VMs which expired but failed to be destroyed (for example when the VMM is offline) were not included in the nimbus-admin output because the destroy tentative threw an exception which removed them from the list. With this commit the exception is thrown only when the destroy action has succeeded. Closes #113.
In 19a8658, we moved customization task file transfer from propagate to start in order to support customization of virtual machines without propagation. However, this file transfer mechanism is also used to copy certificates needed for HTTPS propagation. This commit brings back the file transfer before propagate while keeping it before start as well. While this means files are sent twice to VMM nodes, this is not a big issue since those files are generally very small. Eventually, this could be fixed by specifying at which stage each file should be transferred.
Some Base64 implementations delimit encoded data with newlines. Unfortunately, the isBase64 function of Globus does not support them. Remove them prior to calling this function. Closes #110.
Avoid any security issues related to passing an arbitrary binary path to a script running under sudo.