erlang:upload

Full name:

eu.lindenbaum:maven-erlang-plugin:2.1.0:upload

Description:

This Mojo uploads a project onto a remote node. In case of application projects this includes remote loading of the compiled application modules, loading of the application resource file using application:load/1 and uploading the project's private resources making them available using code:priv_dir/1. To achieve this the temporary upload directory is added to the remote node's code path. The modules will be purged once as if c:c/1 would have been called on a shell. In case of a release project the release package ( .tar.gz) will be uploaded in the remote nodes releases directory ready to be unpacked and installed using the release_handler.

Note: Uploading of releases will require that the remote erlang process has write access to its releases directory.

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: runtime.
  • Since version: 2.0.0.
  • Invokes the execution of the lifecycle phase package prior to executing itself.
  • Executes in its own lifecycle: upload.

Required Parameters

Name Type Since Description
remote String 2.0.0

The name of the node to upload the compiled code to.

Note: The cookie of the remote node has to be set accordingly using the cookie parameter.


Optional Parameters

Name Type Since Description
cookie String 2.0.0 The cookie to use for the java and the backend node.
erlCommand String 2.0.0 The erlang command used to start an erlang backend node. The path must exist and the destination must be executable. If the given command does not fullfill these requirements erl is used (assuming the command is part of the hosts PATH). The path must not contain any arguments.
withDependencies boolean 2.0.0 Setting this to true will also upload all modules from the (maven) dependencies on the remote node. This parameter is ignored when uploading release projects.
Default value is: false.

Parameter Details

cookie:

The cookie to use for the java and the backend node.
  • Type: java.lang.String
  • Since: 2.0.0
  • Required: No
  • Expression: ${cookie}

erlCommand:

The erlang command used to start an erlang backend node. The path must exist and the destination must be executable. If the given command does not fullfill these requirements erl is used (assuming the command is part of the hosts PATH). The path must not contain any arguments.
  • Type: java.lang.String
  • Since: 2.0.0
  • Required: No
  • Expression: ${erlCommand}

remote:

The name of the node to upload the compiled code to.

Note: The cookie of the remote node has to be set accordingly using the cookie parameter.

  • Type: java.lang.String
  • Since: 2.0.0
  • Required: Yes
  • Expression: ${remote}

withDependencies:

Setting this to true will also upload all modules from the (maven) dependencies on the remote node. This parameter is ignored when uploading release projects.
  • Type: boolean
  • Since: 2.0.0
  • Required: No
  • Expression: ${withDependencies}
  • Default: false