Openshift DIY cartridge with Jetty and JDK8 - jetty

At the moment openshift has no official support of java 8.
There is only one working solution that I found: JDK 8 support for Wildfly 8.1 OpenShift cartridge
But wildfly is to heavy for my project, and a small (1Gb) gear is not enough for it. (I'm using a free plan)
So I'm trying to configure it on DIY manually using Jetty.
Maybe someone already managed to do it. If not I will share my results.
So the goal is to build (using maven) and deploy application using java 8 on openshift.

I did this.
So I can share this scripts.
Also I wrote a manual for it.
Hope this will help someone.
https://github.com/pkolmykov/jetty-openshift-java8

Related

Coldfusion - JEE Installation - JVM Arguments which and how?

We are trying to change how we manage our QA Enviroments.
Till now we have installed Coldfusion using the Adobe Installer that install a modified Tomcat.
We want to manage the QA server using CommandBox Tool that installs Coldfusion in JEE install mode using war file, but situation will be similar with any of the supported JEE Application Server. (EAP, Wildfly, Tomcat).
We have little experience in using Coldfusion in the JEE install mode then several questions arise regarding the JVM Settings.
Below the JVM Setting we got after install CF using the Adobe Standard installer, accessing the Coldfusion (CF) Administrator (here for a fresh installation of a CF2018):
--add-modules=java.xml.ws
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/sun.util.cldr=ALL-UNNAMED
--add-opens=java.base/sun.util.locale.provider=ALL-UNNAMED
--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
-Dcoldfusion.classPath={application.home}/lib/updates,{application.home}/lib,{application.home}/lib/axis2,{application.home}/gateway/lib/,{application.home}/wwwroot/WEB-INF/cfform/jars,{application.home}/wwwroot/WEB-INF/flex/jars,{application.home}/lib/oosdk/lib,{application.home}/lib/oosdk/classes
-Dcoldfusion.home={application.home}
-Dcoldfusion.jsafe.defaultalgo=FIPS186Random
-Dcoldfusion.libPath={application.home}/lib
-Dcoldfusion.rootDir={application.home}
-Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true
-Djava.awt.headless=true
-Djava.locale.providers=COMPAT,SPI
-Djava.security.auth.policy={application.home}/lib/neo_jaas.policy
-Djava.security.policy={application.home}/lib/coldfusion.policy
-Djava.util.logging.config.file={application.home}/lib/logging.properties
-Djdk.attach.allowAttachSelf=true
-Dorg.apache.coyote.USE_CUSTOM_STATUS_MSG_IN_HEADER=true
-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.JavaUtilLog
-Dsun.font.layoutengine=icu
-XX:+UseParallelGC
-XX:MaxMetaspaceSize=192m
-Xbatch
-Xdebug
-Xms256m
-Xmx1024m
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=6006
-server
Q1. the Coldfusion war have inside it the JVM settings (we have written above) and will apply it during deploy?
Q2. if answer to is no!, what are the settings that are applicable according the JEE Application Server used (i.e. some settings are ok for Tomcat but meaniless for wildfly).
We were able to find specific documentation from Adobe for Coldfusion 2018 (https://helpx.adobe.com/it/coldfusion/installing/coldfusion-2018-install-jee-configuration.html).
The number of settings is incredible low comparing with the standard one!:
-Djava.locale.providers=COMPAT,SPI
-Dcoldfusion.disablejsafe=true
-Djdk.attach.allowAttachSelf=true
-Djdk.serialFilter= !org.mozilla.**;!com.sun.syndication.**
We were not able to find similar documentationfor Coldfusion 2021 (latest release).
Till now trying to get help from Adobe has been produce not effective results.
Thanks in advance
Adobe isn't going to help you support an installation via CommandBox, you need to talk to Ortus Solutions about that. Every JVM setting available in CF Admin for Standard is not displayed in the UI for CF Enterprise. You're looking for the CF install folder for the instance you have (non-CB version), find a file called jvm.config.
https://www.cfguide.io/coldfusion-administrator/server-settings-java-jvm/
In ColdBox, you can set everything via the command line or use a server.json file to do that same configuration.
https://commandbox.ortusbooks.com/embedded-server/configuring-your-server/jvm-args
Here's an example from a CB install I have on a Mac where I'm running an older version of CF that requires an older JDK, but I've also set the heapSize.
{
"jvm": {
"javaHome": "/Library/Java/JavaVirtualMachines/jdk1.7.0_15.jdk/Contents/Home",
"heapSize": 1024
}
}
What I would suggest is
export your existing CF Admin settings to a .car file
log in to your ColdBox server's CF Admin
import the .car file
adjust all the settings (DSN, etc) for your QA server
go to the command line and install the CFConfig plugin
export all the CF Admin settings to a JSON file (instructions in their docs)
save that to a private repo or your secrets / passwords vault.
Join the BoxTeam Slack where you can find the CommandBox community and ask more questions.

Rethinkdb chef solo cookbook

Is there any RethinkDB chef solo cookbook that allows one to install latest rethinkdb on ubuntu 14.04 / AWS.
I tried couple options, however it didn't help.
https://github.com/vFense/rethinkdb-chef - how to install latest version?
https://github.com/sprij/rethinkdb-cookbook.git - source compilation takes hours
I would appreciate any help regarding this.
Thanks
Try the cookbook that is available from the community repository first:
https://supermarket.chef.io/cookbooks/rethinkdb
It claims to be integration tested on Ubuntu. If it doesn't work under chef-solo, then I'd advise you to switch to local mode chef client instead.
https://www.chef.io/blog/2013/10/31/chef-client-z-from-zero-to-chef-in-8-5-seconds/
PS
Also checkout Berkshelf for managing cookbook dependencies. It's a standard tool in the chefdk
I updated rethinkdb-chef to work with the latest version of RethinkDB as well as removed the network portion of the .kitchen.yml file. I validated that this does work on CentOS 6 and Ubuntu 14.04.
I still need to write tests as well as documentation. As per Marks answer, try to use the community supported version 1st. I created this cookbook, so that I can customize it as per my needs with vFense.

Developing in Adobe CQ5 with jetty?

We use maven to deploy the code changes to cq interner server / CRX Lite and the problem here is that it takes long time where the changes itself is often only one line code.
Has somebody experience with CQ5 with jetty and can give me a good Guide?
am not sure i understand the relationship with jetty (which ships as servlet container of latter versions of AEM/CQ5), but will answer to the code deployment part:
deploying a full content package (full content) should be done using
maven-content-package plugin for smaller deployments of content,
when you can't use integrated dev environments like sling eclipse dev
tools, i'd suggest you use the excellent repo command that basically zips the current folder and deploy it. I'm using it as an external tool command of intellij and it's really fast.
finally, if the deployment you're referring to is osgi deployment, maven sling plugin can help you with that (will still compile/package the whole osgi bundle though)

Capistrano for Django

Does anyone know of a good Django equivalent of Capistrano/Webistrano?
Fabric is a Python-based application deployment system. It can be used to deploy Django projects.
Capistrano (and therefore Webistrano) can be used for pretty much any deployment, so long as you use SSH. Capistrano is Rails-ready out-of-the-box but it can easily be configured to deploy PHP, Django, Java...whatever really.
Capistrano is a Ruby application so you'll need to have Ruby (and the required Gems) installed to run it.
Webistrano is a Rails application and you can run this locally or deploy it to a server if you wish.
I googled around for a simple formula, and then created my own at: http://www.sandelman.ca/mcr/blog/ruby-on-rails/deploying_django_applications_with_capistrano/

Mylyn & Redmine Integration

I'm trying to get Mylyn and Redmine work together so I can manage tasks right inside Eclipse. I saw this on redmine wiki http://www.redmine.org/wiki/redmine/HowTo_Mylyn but I think it's for the old version of Mylyn.
I can't find the Generic Web Connector plugin for Mylyn but there's this Web templates plugin. I think that one replaced the Generic Web Connector. But it's quite different from the screenshots posted at the Redmine wiki. There's no Task URL, New Task URL, etc.
Here is what you are looking for:
http://sourceforge.net/projects/redmin-mylyncon/
A Mylyn connector specially for RedMine. It works fine with eclipse ganymede.
The update site is: http://redmin-mylyncon.sourceforge.net/update-site/N/
Here are the steps to perform integration between Eclipse Mylyn and Redmine.
I assume that Eclipse, Mylyn and Redmine are already installed, the latter somewhere in $REDMINE_HOME. Tested with Eclipse 3.7 and Redmine 1.2.1.
Summarily, you need to install an Eclipse plugin AND a Redmine plugin.
Go to $REDMINE_HOME/vendor/plugins and run
git clone git://redmin-mylyncon.git.sourceforge.net/gitroot/redmin-mylyncon/redmine-mylyn-connector
(Re)start the server, and in Redmine under Administration/Plugins the Mylyn Connector Plugin should be listed
Again in Redmine, under Administration/Settings/Authentication, check the "Enable REST web service" field
In Eclipse, install the Eclipse connector via its update site
http://redmin-mylyncon.sourceforge.net/update-site/N/
Create your repository and check that it connects, then you are good to go!
See this manual.
http://wiki.eclipse.org/index.php/Mylyn_Extensions
Eclipse Menu.
Help -> Software Updates ... -> Add Site...
http://download.eclipse.org/tools/mylyn/update/incubator
http://www.redmine.org/projects/redmine/wiki/HowTo_Mylyn
http://danmunn.github.com/redmine_mylyn_connector/
https://github.com/danmunn/redmine_mylyn_connector
As of july 2012 now there is a new dedicated Redmine-Mylyn-Connector under active development for Redmine 2.x! (Got to admit, I haven't tested it yet.)
I am in the process of testing the 1.x connector that can be found on sourceforge, I will edit this post once I am done.
EDIT:
The update-site for the mylyn-plugin from the link in the accepted posting works.
As well as the mylyn-connector for the redmine installation. (Tested with 1.3.2 installation, don't forget to restart the web server after installing it. ;))
But both things aren't working out... once the mylyn-connector is installed, the web-interface is not working anymore. ;(
EDIT2:
The special connector works with 2.x and Mylyn finally looks proper.
http://danmunn.github.com/redmine_mylyn_connector/ the redmine server plugin.
http://kenjiru.ro/blog/2012/02/install-the-redmine-mylyn-connector-for-eclipse another server plugin link and the eclipse connector plugin
Will look like this.
As of yesterday, Sven has taken down the update site (if you go there, you'll find nothing) since someone reported him to Sourceforge (see https://sourceforge.net/tracker/?func=detail&aid=3441532&group_id=228995&atid=1075435).
So, there are NO binaries available now for Eclipse. Does anyone know of alternative ways to get these plugins? I have no clue how to compile.
The GIT and SVN repositories are there, but again as I sad, I'm not a java programmer. Can anyone offer Sven a site where he can store the binaries as an Update?
For retrieve redmine mylyn connector
https://github.com/ljader/redmine-mylyn-plugin
In eclipse juno 4.2
"Install new software" and as local archive like in this post :
How to install plugin for Eclipse from .zip
Also a good read from redmine.
HowTo connect a Mylyn repository to Redmine:
http://www.redmine.org/wiki/1/HowTo_Mylyn
download.eclipse.org/tools/mylyn/update/incubator wont work anymore, for the new update sites look at http://www.eclipse.org/mylyn/downloads/
The Web Connector could be found via http://download.eclipse.org/mylyn/incubator/3.5