Deploy to Cloud Authentication Fails

When deploying to cloud using eApps on Jelastic, the deploy task fails - authentication failed: error 403 is returned from the rest API, the sign-in method. I contacted eApps support, and they said that the authentication must be done through a POST, not GET.

Is there something I can do as a workaround for now?

Hi,
At first, thank you for reporting the problem. We have created a YouTrack issue. See the link on the right.
You can use another Jelastic provider. For instance Mirhosting or Layershift (they are tested for compatibility).
As a workaround, you can manually deploy the application to eApps using Jelastic administrative panel ([url=https://app.jelastic.eapps.com/]https://app.jelastic.eapps.com/[/url]).
Let me explain how Studio works:

  1. When you launch “Run->Deploy to cloud” two Gradle tasks are executed: jelasticBuildWar and jelasticDeployWar.
  2. After jelasticBuildWar is completed “ready for Jelastic” WAR appears in the ${projectRoot}/build/distribution/war folder.
  3. Then jelasticDeployWar uploads the WAR to Cloud. If it fails, you are still able to deploy the WAR onto any Tomcat or Jetty.
    Deploy the WAR to the previously created (by CUBA Studio) environment using Jelastic administrative panel and it should work without any additional setup.
    Regards.

Thank you for the workaround steps. I had thought the deploy step would be more complicated, but I am glad to know it is quite straightforward.

For some reason, though, it isn’t working after I deployed the WAR using the Jelastic admin panel. The log seems to be complaining about JDBC not being found.
I have the checkbox for “Include JDBC driver” checked in Studio under the Cloud tab.
Did I miss something?

eapps-deployment.log (8.2K)

Update: I tried deploying to one of the providers you listed to be tested for compatibility (LayerShift, specifically). It is also failing on the same JDBC errors.

Hi,

Try to add the following to the dependencies of the buildscript section in the build.gradle file:
classpath 'com.jelastic:jelastic-public-j2se:5.0.6’
For instance, it would look like the follows:

buildscript {
    ext.cubaVersion = '6.6.3'
    repositories {
        maven {
            ...
        }
    }
    dependencies {
        classpath "com.haulmont.gradle:cuba-plugin:$cubaVersion"
        classpath 'com.jelastic:jelastic-public-j2se:5.0.6'
    }
}

Regards,
Gleb

Hi.
The issue is fixed in the platform version 6.6.4.

Can verify that the issue is fixed in 6.6.4 - I am successfully deploying to eApps.

Thanks CUBA.Platform team for that fix, by the way. Very happy that things are working.

:ticket: See the following issue in our bug tracker:

https://youtrack.cuba-platform.com/issue/PL-9671