2020-03-20 19:20:52 +02:00
metadata :
name : nexusUpload
aliases :
- name : mavenExecute
deprecated : false
2020-04-11 12:56:44 +02:00
description : Upload artifacts to Nexus Repository Manager
2020-03-20 19:20:52 +02:00
longDescription : |
2020-04-11 12:56:44 +02:00
Upload build artifacts to a Nexus Repository Manager.
Supports MTA, npm and (multi-module) Maven projects.
MTA files will be uploaded to a Maven repository.
The uploaded file-type depends on your project structure and step configuration.
To upload Maven projects, you need a pom.xml in the project root and set the mavenRepository option.
To upload MTA projects, you need a mta.yaml in the project root and set the mavenRepository option.
To upload npm projects, you need a package.json in the project root and set the npmRepository option.
npm :
Publishing npm projects makes use of npm's "publish" command.
It requires a "package.json" file in the project's root directory which has "version" set and is not delared as "private".
To find out what will be published, run "npm publish --dry-run" in the project's root folder.
It will use your gitignore file to exclude the mached files from publishing.
Note : npm's gitignore parser might yield different results from your git client, to ignore a "foo" directory globally use the glob pattern "**/foo".
If an image for mavenExecute is configured, and npm packages are to be published, the image must have npm installed.
2020-03-20 19:20:52 +02:00
spec :
inputs :
secrets :
- name : nexusCredentialsId
description : The technical username/password credential for accessing the nexus endpoint.
type : jenkins
2020-03-31 15:16:18 +02:00
aliases :
- name : nexus/credentialsId
2020-03-20 19:20:52 +02:00
params :
- name : version
type : string
description : The Nexus Repository Manager version. Currently supported are 'nexus2' and 'nexus3'.
scope :
- PARAMETERS
- STAGES
- STEPS
mandatory : false
default : nexus3
2020-04-03 21:32:38 +02:00
possibleValues :
- nexus2
- nexus3
2020-03-31 15:16:18 +02:00
aliases :
- name : nexus/version
2020-03-20 19:20:52 +02:00
- name : url
type : string
description : URL of the nexus. The scheme part of the URL will not be considered, because only http is supported.
scope :
- PARAMETERS
- STAGES
- STEPS
mandatory : true
2020-03-31 15:16:18 +02:00
aliases :
- name : nexus/url
2020-04-11 12:56:44 +02:00
- name : mavenRepository
2020-03-20 19:20:52 +02:00
type : string
2020-04-11 12:56:44 +02:00
description : Name of the nexus repository for Maven and MTA deployments. If this is not provided, Maven and MTA deployment is implicitly disabled.
2020-03-20 19:20:52 +02:00
scope :
2020-04-11 12:56:44 +02:00
- PARAMETERS
- STAGES
- STEPS
2020-03-31 15:16:18 +02:00
aliases :
2020-04-11 12:56:44 +02:00
- name : nexus/mavenRepository
2020-03-31 15:16:18 +02:00
- name : nexus/repository
2020-04-11 12:56:44 +02:00
deprecated : true
- name : npmRepository
type : string
description : Name of the nexus repository for npm deployments. If this is not provided, npm deployment is implicitly disabled.
scope :
- PARAMETERS
- STAGES
- STEPS
aliases :
- name : nexus/npmRepository
2020-03-20 19:20:52 +02:00
- name : groupId
type : string
description : Group ID of the artifacts. Only used in MTA projects, ignored for Maven.
scope :
- PARAMETERS
- STAGES
- STEPS
2020-03-31 15:16:18 +02:00
aliases :
- name : nexus/groupId
2020-03-20 19:20:52 +02:00
- name : artifactId
type : string
description : The artifact ID used for both the .mtar and mta.yaml files deployed for MTA projects, ignored for Maven.
scope :
- PARAMETERS
- name : globalSettingsFile
type : string
description : Path to the mvn settings file that should be used as global settings file.
scope :
- GENERAL
- PARAMETERS
- STAGES
- STEPS
aliases :
- name : maven/globalSettingsFile
- name : m2Path
type : string
description : The path to the local .m2 directory, only used for Maven projects.
scope :
- GENERAL
- PARAMETERS
- STAGES
- STEPS
aliases :
- name : maven/m2Path
- name : user
type : string
2020-04-03 21:32:38 +02:00
description : Username for accessing the Nexus endpoint.
2020-03-20 19:20:52 +02:00
scope :
- PARAMETERS
- name : password
type : string
2020-04-03 21:32:38 +02:00
description : Password for accessing the Nexus endpoint.
2020-03-20 19:20:52 +02:00
scope :
- PARAMETERS
containers :
2020-04-11 12:56:44 +02:00
# To allow both maven and mta we require an image that contains both tools. If the user configures an image for mavenExecute that also needs to contain both.
- name : mvn-npm
image : devxci/mbtci:1.0.4
2020-03-20 19:20:52 +02:00
imagePullPolicy : Never