Skip to content
`cf maven-push` maven artifacts to cloud foundry
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
testdata
.gitignore
README.md
args.go
args_test.go
build.sh
command.go
command_test.go
download.go
download_test.go
install.sh
main.go
main_test.go
manifest.go
manifest_test.go
manifest_validation.go
manifest_validation_test.go
maven.go
maven_test.go

README.md

cf maven-push plugin

Want to deploy a specific version of a maven artifact to cloud foundry but don't have a local copy? Use cf maven-push.

cf maven-push is a drop in replacement for cf push that:

  • downloads the maven artifact to a temp file based on the manifest
  • calls cf push with the arguments passed to cf maven-push (with an updated path to the artifact)

A manifest file (with a single application in the manifest) is required to use this plugin.

Does not yet support variable substitution (at least for the maven portion of the manifest).

usage

short version: $ cf maven-push -f my-manifest.yml <any other args to pass to 'cf push'>

long version:

cf maven-push [-f MANIFEST_PATH] [--maven-repo-url REPO_URL] [--maven-group-id GROUP_ID] [--maven-artifact-id ARTIFACT_ID]
[--maven-version VERSION] [--maven-classifier CLASSIFIER] [--maven-extension EXTENSION] [--maven-repo-username REPO_USERNAME]
[--maven-repo-password REPO_PASSWORD] [--remote-manifest-url MANIFEST_URL] [--remote-manifest-username MANIFEST_USERNAME]
[--remote-manifest-password MANIFEST_PASSWORD] <cf push flags>

or with an explicit app name

cf maven-push APP_NAME [-f MANIFEST_PATH] [--maven-repo-url REPO_URL] [--maven-group-id GROUP_ID] [--maven-artifact-id ARTIFACT_ID]
[--maven-version VERSION] [--maven-classifier CLASSIFIER] [--maven-extension EXTENSION] [--maven-repo-username REPO_USERNAME]
[--maven-repo-password REPO_PASSWORD] [--remote-manifest-url MANIFEST_URL] [--remote-manifest-username MANIFEST_USERNAME]
[--remote-manifest-password MANIFEST_PASSWORD] <cf push flags>

example manifest

---
applications:
- name: my-application
  memory: 1G
  maven:
    repo-url: https://repo.maven.apache.org/maven2/
    group-id: com.group.my
    artifact-id: my-artifact
    version: 1.0.0

all manifest options

repo-url (required)

group-id (required)

artifact-id (required)

version (required)

extension (optional, default .jar)

classifier (optional, default none)

repo-username (optional, default none)

repo-password (optional, default none)

remote-manifest-url (optional, default none)

remote-manifest-username (optional, default none)

remote-manifest-password (optional, default none)

remote manifests

If your manifest file lives on a remote server (like your artifact does), you can retrieve a copy by specifying the url it is hosted at (and optionally basic auth credentials).

installation

Install from the community plugin repository

cf install-plugin -r CF-Community "maven-push"

or download from the releases page

$ cf install-plugin path/to/maven-push/binary

You can’t perform that action at this time.