Search code examples
javaopenshiftwildfly-8

OpenShift: Can not deploy binary application on wildfly


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?


Solution

  • 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