I've created Tomcat7 application on openshift but now I want to change it to JBoss Application Server 7. Is it possible without recreating app (delete T7 and then create JB AS 7)?
Unfortunately no, you will have to delete your gear and redeploy with a JBoss Application Server cartridge. However the war files shouldn't need to be altered.
It should be noted that you can archive the app's deployments and deploy the resulting artifact to another application. So, for your use case, you would:
Create an archive of your current application using rhc snapshot save --deployment (passing -a <app name> if not in that application's git repo directory).
Create a new application of the desired type.
Deploy the archive created in step 1 to the new application using rhc deploy --ref <path to archive> (passing -a <app name> if not in that application's git repo direcory).
You could use this approach to test your app on another flavor of JBoss.
Related
I need to make some files executable after AWS elastic-beanstalk unzip my uploaded zipped file. I need elastic-beanstalk automatically do chmod before the application can work properly such as:
sudo chmod 755 /var/www/html/mybin/executablefile1
sudo chmod 755 /var/www/html/mybin/executablefile2
How to do this properly?
You can write the commands you want to execute (including chmod) in container_commands section of your .ebextensions:
Container commands run after the application and web server have been set up and the application version archive has been extracted, but before the application version is deployed.
Alternatively, you can also use one of deployment platform hooks. For example your custom script in postdeploy:
Files here run after the Elastic Beanstalk platform engine deploys the application and proxy server. This is the last deployment workflow step.
Is there a way to trigger a re-deploy when I push an image to docker hub? I used S2I to build an image, put it up on docker hub, and did a deployment from there. How can I trigger a new deployment when I push a new image to docker hub?
Perhaps there is a better way? I created a wildfly image with the changes to the standalone.xml I needed. Then I used S2I to build my local source into a runnable wildfly application image, which is what I pushed and deployed. I'm trying to get around having to go through a github repository.
I'm thinking I could create an application with the customer wildfly image that I created and use the direct from IDE option to the application, but what if I want to use the command line?
You can set a scheduled flag on the image stream to have a remote registry periodically polled. This will only work though if the OpenShift cluster has been configured globally to allow that. If using OpenShift Online I don't believe that feature is enabled.
https://docs.openshift.com/container-platform/latest/dev_guide/managing_images.html#importing-tag-and-image-metadata
If you want to avoid using a Git repository, you can use a binary input build instead. This allows you to push files direct from your local computer. This means you can compile binary artifacts locally and push them into the S2I build done by OpenShift.
https://docs.openshift.com/container-platform/latest/dev_guide/builds/build_inputs.html#binary-source
I have installed Cygnus and I have it properly running with MYSQL. I would like to send the data which arrive to Cygnus through the notifications from Orion Context Broker, to a REST server.
I need to create a new Sink that processes the data that come from Orion, create the POST requests and run them. In order to do this, I have to create new Java files and I have to put these files in (according to "Adding new sinks development guide"):
fiware-connectors/flume/src/main/java/es/tid/fiware/fiwareconnectors/cygnus/sinks
and:
fiware-connectors/flume/src/main/java/es/tid/fiware/fiwareconnectors/cygnus/backends/<my_backend_classes>/
But I can not find these places. I installed Cygnus through the yum install command, so I do not know how to locate the places where I have to place these new java files.
Could you help me with this? Thanks in advance
Installing Cygnus by RPM will not install the sources. For that, you have to clone the Github repo (the git tool must be installed as well):
$ git clone https://github.com/telefonicaid/fiware-cygnus.git
That will clone the master branch, which is currently synchronized with the release 0.7.1.
Then, once you have added your new sink, you will have to build and install Cygnus from sources (your altered ones) as explained here.
I need to configure Hudson using SVN and ANT . I need to deploy the war file at my server. Please navigate to the proper help. As I could not find any proper help for this. Do I need to use any plug-in? Or I can do with ANT script? Please suggest a way.
Create a new free-style software project job.
Configure that job.
Under Source Code Management section, select Subversion and configure your repositories and local workspace
Under Build section, select Add build step and select Invoke Ant
If your SVN checkout has build.xml in the root with default target, you don't need anything else. Else configure the Ant targets and the location of the build file
(Optional) Archive the artifacts of the build with Archive the artifacts under Post-build Actions, in your case probably **/*.war
Use Deploy Plugin to publish the war file to remote server.
I am migrating from DotCloud to Elastic Beanstalk.
Using DotCloud, they clearly explained how to set up Python Worker, and how to use supervisord.
Moving to Elastic Beanstalk, I am lost on how I could do that.
I have a script myworker.py and want to make sure it is always running. How?
Elastic Beanstalk is just a stack configuration tools over EC2, ELB and autoscaling.
One approach you can use, is create your own AMI, but since October last year, there is another approach that probably will be more suitable for your needs: ebextensions.
.ebextension is just a directory in your application, that get's detected once your application has been loaded by AWS.
Here is the full documentation: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers.html
With Amazon Linux 2 you need to use the .platform folder to supply elastic beanstalk with installation scripts.
We recommend using platform hooks to run custom code on your environment instances. You can still use commands and container commands in .ebextensions configuration files, but they aren't as easy to work with. For example, writing command scripts inside a YAML file can be cumbersome and difficult to test.
So you should add a prebuild hook (example) into a .platform folder to install supervisor and a postdeploy hook (example) to restart supervisor after each deployment.
There is an ini file (example) used in the script; which is made for laravel specific.
Make sure that the .sh files from the .platform folder are executable before deploying your project:
$ chmod +x .platform/hooks/prebuild/*.sh
$ chmod +x .platform/hooks/postdeploy/*.sh