What I did?
Created application
rhc app create map https://cartreflect-claytondev.rhcloud.com/reflect?github=openshift-cartridges/openshift-wildfly-cartridge
Configure it to be binary deployment
rhc app configure -a <your application's name> --deployment-type binary
Then I did
mkdir binary-deployment && cd binary-deployment/ && mkdir -p build-dependencies/.m2 repo/deployments dependencies/jbosseap/deployments
Copied war file
cp ~/code/IdeaProjects/others/tweetstream/target/tweetstream.war repo/deployments
created tar.gz
tar -zcvf tweetstream-archive.tar.gz binary-deployment
which can be seen as
drwxr-xr-x 5 harith Y\Domain Users 170 Jul 20 18:26 binary-deployment
-rw-r--r-- 1 harith Y\Domain Users 6124729 Jul 20 18:27 tweetstream-archive.tar.gz
Now when I deploy it, I see
Deployment of file '/Users/harith/Downloads/tmp/tweetstream-archive.tar.gz' in progress for application map ...
Starting deploy for binary artifact
Stopping gear
Stopping wildfly cart
Creating new deployment directory
Preparing deployment
Preparing build for deployment
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `LIBARCHIVE.creationtime'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.dev'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.ino'
/bin/tar: Ignoring unknown extended header keyword `SCHILY.nlink'
Deployment id is b7d53465
Distributing deployment
Distribution status: success
Activating deployment
Deploying WildFly
Starting wildfly cart
Timed out waiting for http listening port
Activation status: failure
Activation failed for the following gears:
undefined method `values' for nil:NilClass
Error deploying local file. You can try to deploy manually with:
ssh -t 53cc68dfe0b8cd921f000035@map-tweetstream.rhcloud.com 'oo-binary-deploy'
SSH command finished with exit status = 255
What am I doing wrong?
The layout of your tweetstream-archive.tar.gz
does not match the one of an OpenShift deployment archive. For WildFly the correct layout would be:
build_dependencies/
dependencies/
jbosseap/
deployments/
tweetstream.war
repo/
.openshift/ # optional
That is the WAR file has to be in the directory dependencies/jbosseap/deployments
and the binary-deployment
directory must not be part of the archive. See also: https://www.openshift.com/kb/kb-e1088-how-to-deploy-pre-compiled-java-applications-war-and-ear-files-onto-your-openshift-gear