How can i add space to openvz to existing container? - virtualization

this command adding 50G to existing container or it's create container?
vzctl set 111 --diskspace 50G:50G --save

your command is setting the soft- and hard- diskspacelimit of the existing container: 111 to 50G.
For creating a container use vzctl create or prlctl create.

Related

javaspace(Apache river) cannot initialize outrigger script

I need to use jini (Apache river) to set up JavaSpaces service. The problem is I cannot start the space service script while the net.jini.core.lookup.ServiceRegistrar works well.
Here are the output I'm getting:
Any help?
It the missing class path that needs to be add to start up
set %apphome%=M:\river-apps\
%Javahome%\java -Djava.security.policy=%apphome%config\policy.all -jar %apphome%lib\start.jar %apphome%config\start-outrigger-group.config

Deploying Dotnet Core Entity framework migrations

I am working on a fresh .netcore api project. I am trying to deploy the application using octopus.
I need help on executing the migrations from command line and I am not getting a lot of help. If some one can help me it will really help.
Here is what I have tried so far:
I have taken help of the following link to come up with a solution but it does not really work for me.
https://www.benday.com/2017/03/17/deploy-entity-framework-core-migrations-from-a-dll/
I had to make few modifications to the script in order to set the dll paths right.
Here is how it is looking now
set EfMigrationsNamespace=%Dummy.WebAPI
set EfMigrationsDllName=%Dummy.WebAPI.deps.dll
set EfMigrationsDllDepsJson=%Dummy.WebAPI.deps.json
set EfMigrationsStartupAssembly=%Dummy.Data.dll
set DllDir=%cd%
set PathToNuGetPackages=%USERPROFILE%\.nuget\packages
set PathToEfDll=%PathToNuGetPackages%\microsoft.entityframeworkcore.tools\1.1.1\tools\netcoreapp1.0\ef.dll
ECHO %PathToEfDll%
dotnet exec --depsfile .\%EfMigrationsDllDepsJson% --additionalprobingpath %PathToNuGetPackages% %PathToEfDll% database update --assembly .\%EfMigrationsDllName% --startup-assembly .\%EfMigrationsStartupAssembly% --project-dir . --content-root %DllDir% --data-dir %DllDir% --verbose --root-namespace %EfMigrationsNamespace%
However the script throws index oput of bound error which is very confusing to me. Here is the exception.
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at Microsoft.DotNet.Cli.CommandLine.CommandLineApplication.ParseOption(Boolean isLongOption, CommandLineApplication c
ommand, String[] args, Int32& index, CommandOption& option)
at Microsoft.DotNet.Cli.CommandLine.CommandLineApplication.Execute(String[] args)
at Microsoft.EntityFrameworkCore.Tools.Program.Main(String[] args)
Index was outside the bounds of the array.
Any clue to this error? Or if I should take any other approach?
It seems that the dotnet exec command is not build correctly, seeing as it has problems parsing your commands.
I'm using dotnet core 2-preview and had to change the batch file slightly. I now works for me:
set EfMigrationsNamespace=%1
set EfMigrationsDllName=%1.dll
set EfMigrationsDllDepsJson=%1.deps.json
set DllDir=%cd%
set PathToNuGetPackages=%USERPROFILE%\.nuget\packages
set PathToEfDll=%PathToNuGetPackages%\microsoft.entityframeworkcore.tools\2.0.0-preview2-final\tools\netcoreapp2.0\ef.dll
dotnet exec --depsfile .\%EfMigrationsDllDepsJson% --additionalprobingpath %PathToNuGetPackages% %PathToEfDll% database update --assembly .\%EfMigrationsDllName% --startup-assembly .\%EfMigrationsDllName% --project-dir . --data-dir %DllDir% --verbose --root-namespace %EfMigrationsNamespace%

How to use ros::pluginlib to load multi-library

I am trying to use ros::pluginlib to load a plugin called A_Plugin which has been registered to ROS Package System correctly. One thing to note is that A_Plugin depends on Opensplice DDS, and it need to link the DDS libraries "libddskernel.so" ,"libdcpsisocpp.so". In CmakeLists.txt file, I write like this:
```
add_library(A_Plugin
src/aplugin.cpp
)
target_link_libraries(A_Plugin
$ENV{OSPL_HOME}/lib/libddskernel.so
$ENV{OSPL_HOME}/lib/libdcpsisocpp.so
)
```
It can be registered to ROS package system correctly, but when I use pluginlib::ClassLoader to load A_plugin, I got the following errors:terminate called after throwing an instance of 'pluginlib::CreateClassException'what(): MultiLibraryClassLoader: Could not create object of class type test::A_Plugin as no factory exists for it. Make sure that the library exists and was explicitly loaded through MultiLibraryClassLoader::loadLibrary(). How can I solve this problem? Thanks!
I had a similar problem, turns out I was missing the plugin class declaration in the *.cpp file. I included it and it worked fine. The declaration should be something like:
PLUGINLIB_DECLARE_CLASS(rqt_example_cpp, MyPlugin, rqt_example_cpp::MyPlugin, rqt_gui_cpp::Plugin)
This can be seen in the example from the rqt tutorial github repo, line 62:
https://github.com/lucasw/rqt_mypkg/blob/master/rqt_example_cpp/src/rqt_example_cpp/my_plugin.cpp

How to create containers and add agents into it in JADE?

I'm just a beginner at JADE. I would like to know how to create containers other than the main container and add multiple agents into it. A full code of creation would be appreciated.
Thanks!
As stated in Tafadzwa Chikudo answer, the usual way to start a container is by launching jade.Boot from the command line (or in a shell script).
But it is also possible to do it inside another Java program, using the "JADE in-process interface" (package jade.wrapper, class jade.core.Runtime).
For instance, the following code creates a "peripheral" container (connecting to a main container on localhost) and launch one agent in it.
//Get the JADE runtime interface (singleton)
jade.core.Runtime runtime = jade.core.Runtime.instance();
//Create a Profile, where the launch arguments are stored
Profile profile = new ProfileImpl();
profile.setParameter(Profile.CONTAINER_NAME, "TestContainer");
profile.setParameter(Profile.MAIN_HOST, "localhost");
//create a non-main agent container
ContainerController container = runtime.createAgentContainer(profile);
try {
AgentController ag = container.createNewAgent("agentnick",
"my.agent.package.AgentClass",
new Object[] {});//arguments
ag.start();
} catch (StaleProxyException e) {
e.printStackTrace();
}
A Peripheral container can be started as follows
java jade.Boot -container -host x.x.x.x -agents z:package.agent;y:package.agent
where x.x.x.x is ip of main contaner, z is the name you give to the first agent, y is the name you give to the second agent and package is the package that contains the agents in a jar file

TrueVFS net.java.truevfs.access.TFile.TFile.rm() is unable to remove the file

TrueVFS is unable to remove the file after unmount and throws the following exception.
java.nio.file.DirectoryNotEmptyException: tar:file:/D:/tmp/0554de32-5a95-4b58-a05d-d12effa68abc.tar!/
at net.java.truevfs.kernel.impl.ArchiveFileSystem.unlink(ArchiveFileSystem.scala:326)
at net.java.truevfs.kernel.impl.BasicArchiveController.unlink(BasicArchiveController.scala:222)
at net.java.truevfs.kernel.impl.DefaultManager$BackController.net$java$truevfs$kernel$impl$CacheController$$super$unlink(DefaultManager.scala:39)
at net.java.truevfs.kernel.impl.CacheController$class.unlink(CacheController.scala:105)
at net.java.truevfs.kernel.impl.DefaultManager$BackController.net$java$truevfs$kernel$impl$SyncController$$super$unlink(DefaultManager.scala:39)
at net.java.truevfs.kernel.impl.SyncController$$anonfun$unlink$1.apply$mcV$sp(SyncController.scala:100)
at net.java.truevfs.kernel.impl.SyncController$$anonfun$unlink$1.apply(SyncController.scala:98)
at net.java.truevfs.kernel.impl.SyncController$$anonfun$unlink$1.apply(SyncController.scala:98)
at net.java.truevfs.kernel.impl.SyncController$class.net$java$truevfs$kernel$impl$SyncController$$apply(SyncController.scala:119)
at net.java.truevfs.kernel.impl.SyncController$class.unlink(SyncController.scala:98)
at net.java.truevfs.kernel.impl.DefaultManager$BackController.net$java$truevfs$kernel$impl$LockController$$super$unlink(DefaultManager.scala:39)
at net.java.truevfs.kernel.impl.LockController$$anonfun$unlink$1.apply$mcV$sp(LockController.scala:92)
at net.java.truevfs.kernel.impl.LockController$$anonfun$unlink$1.apply(LockController.scala:92)
at net.java.truevfs.kernel.impl.LockController$$anonfun$unlink$1.apply(LockController.scala:92)
at net.java.truevfs.kernel.impl.LockingStrategy.apply(LockingStrategy.scala:84)
at net.java.truevfs.kernel.impl.LockController$class.unlink(LockController.scala:92)
at net.java.truevfs.kernel.impl.DefaultManager$BackController.unlink(DefaultManager.scala:39)
at net.java.truevfs.kernel.impl.ArchiveControllerAdapter.unlink(ArchiveControllerAdapter.scala:35)
at net.java.truevfs.kernel.spec.FsDecoratingController.unlink(FsDecoratingController.java:111)
at net.java.truevfs.kernel.impl.FalsePositiveArchiveController$$anonfun$1.apply(FalsePositiveArchiveController.scala:132)
at net.java.truevfs.kernel.impl.FalsePositiveArchiveController$$anonfun$1.apply(FalsePositiveArchiveController.scala:131)
at net.java.truevfs.kernel.impl.FalsePositiveArchiveController$TryChild$.apply(FalsePositiveArchiveController.scala:195)
at net.java.truevfs.kernel.impl.FalsePositiveArchiveController.unlink(FalsePositiveArchiveController.scala:143)
at net.java.truevfs.access.TFile.rm(TFile.java:2216)
at net.java.truevfs.access.TFile.rm(TFile.java:2195
The tar file is successfully created, so no issues with that.
Here is what I am doing.
Configure the True VFS
TConfig config = TConfig.current();
config.setArchiveDetector(new TArchiveDetector("tar", new TarDriver()));
Create the tar
Unmount the tar
TVFS.umount(tarFile);
convert into bytes and send it.
Remove the file
tarFile.rm()
I also tried tarFile.rm_r() and plain java.io.File.delete(). But none of them are working.
Can some one please advice me what went wrong? Thanks in advance.
TrueVFS abstracts the TAR file into a virtual directory, so you can only remove it if it's empty. To recursively remove a (virtual) directory with all its members, just call TFile.rm_r(). You said you tried that, but maybe there was a side effect of your previous attempts, so I suggest to repeat it and see how far it gets you.

Resources