Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

heroku-cli-deploy

Package Overview
Dependencies
Maintainers
113
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

heroku-cli-deploy

Deploy WAR and JAR files to Heroku

  • 0.4.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
113
Created
Source

Heroku Deploy War/Jar Build Status CircleCI

This project is a Heroku CLI plugin for deploying WAR files. It can also be used to deploy executable JAR files.

If you are using Maven, see the Heroku Maven plugin, which is a more robust method of WAR and JAR file deployment.

Prerequisites

You will require the following:

Getting started

1. Make sure Java 7 or higher is installed

Run the following command to confirm:

$ java -version
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)

2. Install the heroku-deploy CLI plugin

Use the following command to install the heroku-deploy plugin:

$ heroku plugins:install heroku-cli-deploy

3. Create a Heroku application

Use the following command to create a new application on Heroku

$ heroku create

4. Create a WAR file

You can use any method to generate a WAR file. You can use maven,ant or simply export your application from your IDE as a WAR file.

The only requirement is that the WAR file is a standard Java web application and adheres to the standard web application structure and conventions.

5. Deploy your WAR

In order to deploy your WAR use the following command:

$ heroku war:deploy <path_to_war_file> --app <app_name>
Uploading my-app.war....
---> Packaging application...
    - app: my-app
    - including: webapp-runner.jar
    - including: my-app.war
---> Creating build...
    - file: slug.tgz
    - size: 1MB
---> Uploading build...
    - success
---> Deploying...
remote:
remote: -----> Fetching custom tar buildpack... done
remote: -----> JVM Common app detected
remote: -----> Installing OpenJDK 1.8... done
remote: -----> Discovering process types
remote:        Procfile declares types -> web
remote:
remote: -----> Compressing... done, 50.3MB
remote: -----> Launching... done, v5
remote:        https://my-app.herokuapp.com/ deployed to Heroku
remote:
---> Done

If you are in an application directory, you can use the following command instead:

heroku deploy:war <path_to_war_file>

6. View your app on Heroku

Use the following command to open the application on the browser:

heroku open

You can learn how to customize the deploy (such as including files and setting Tomcat options) in Configuring WAR Deployment with the Heroku Toolbelt.

Executable JAR Files

You can also use this tool to deploy executable JAR files. To do so, run a command like this:

$ heroku deploy:jar <path_to_jar> --app <appname>

Available options include:

 -j, --jar FILE         # jar or war to deploy
 -v, --jdk VERSION      # 7 or 8. defaults to 8
 -o, --options OPTS     # options passed to the jar file
 -i, --includes FILES   # list of files to include in the slug

Customizing your deployment

You can customize the command used to run your application by creating a Procfile in the same directory as your run the heroku deploy:jar command. For example:

web: java -cp my-uberjar.jar com.foo.MyMain opt1 opt2

You can view your current Procfile command by running heroku ps.

Running locally

You can run your WAR file locally the way it is run on Heroku by executing this command:

$ heroku war:run <path_to_war>

Development

To run the tests:

$ bash bin/test

To update the heroku-deploy-complete.jar:

$ bash update.sh <version>

For a list of versions see Maven Central.

To publish this plugin:

$ npm version <version>
$ npm publish

Keywords

FAQs

Package last updated on 29 Aug 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc