The previously deployed application is failing to push
search cancel

The previously deployed application is failing to push

book

Article ID: 294913

calendar_today

Updated On:

Products

Services Suite

Issue/Introduction

Symptoms:

A previously deployed Pivotal Web Services (PWS) application is encountering a failure when attempting to push (with no changes to the source code or dependencies) to the PWS.

Environment


Cause

While there are no changes to the application's source code and dependencies, it's likely that the software installed by the PWS buildpacks have changed since the application was last deployed (We are constantly keeping this software up-to-date). In order to run the applications on PWS platform, PWS buildpacks install additional software. This includes things like language runtimes (Java, Ruby, Python etc.) and server software (Apache Tomcat, Apache HTTPD, Nginx etc.). 

One example of this can be seen while deploying Ruby applications (Note: Python and Node.js are similar). The application uses Ruby version 2.2.1 which was the latest release at the time the application was originally deployed. Over the time, PWS buildpack has been updated and no longer contains Ruby version 2.2.1 (buildpacks only contain the latest two releases). Thus, the application will fail to stage.

Other similar issues can be seen when Pivotal updates and evolves the Cloud Foundry platform. An example of this can be seen with the release of the Diego on PWS. Most applications should make the transition to Diego fine, but in some cases, the behavior of the system changes and applications need to be updated to continue to run on PWS.

Resolution

Pivotal recommends that you:
  • Check the supported software versions of the buildpack prior to deploying the production upgrades. Check to see which languages and runtimes are supported by the current buildpacks by following the instructions in this article
  • Upgrade and test the application locally with the latest language runtimes regularly. The buildpacks track the latest releases of the languages, runtimes, and the servers required to run your applications and make sure that the application runs fine locally on the PWS. Refer to the article for more details.
  • Follow the practice of blue and green deployment. This allows you to push upgrades and test without taking down your website. Following this practice will minimize the impact of any problem in the future.