github.com/jaylevin/jenkins-library@v1.230.4/resources/metadata/mtaBuild.yaml (about)

     1  metadata:
     2    name: mtaBuild
     3    description: Performs an mta build
     4    longDescription: |
     5      Executes the SAP Multitarget Application Archive Builder to create an mtar archive of the application.
     6      ### build with depedencies from a private repository
     7      1. For maven related settings refer [maven build dependencies](./mavenBuild.md#build-with-depedencies-from-a-private-repository)
     8      2. For NPM related settings refer [NPM build dependencies](./npmExecuteScripts.md#build-with-depedencies-from-a-private-repository)
     9  spec:
    10    inputs:
    11      params:
    12        - name: mtarName
    13          type: string
    14          description: "The name of the generated mtar file including its extension."
    15          scope:
    16            - PARAMETERS
    17            - STAGES
    18            - STEPS
    19          mandatory: false
    20          default:
    21        - name: mtarGroup
    22          type: string
    23          description: "The group to which the mtar artifact will be uploaded. Required when publish is True."
    24          scope:
    25            - PARAMETERS
    26            - STAGES
    27            - STEPS
    28          mandatory: false
    29          default:
    30        - name: version
    31          aliases:
    32            - name: artifactVersion
    33          type: string
    34          description: Version of the mtar artifact
    35          scope:
    36            - PARAMETERS
    37            - STAGES
    38            - STEPS
    39          resourceRef:
    40            - name: commonPipelineEnvironment
    41              param: artifactVersion
    42        - name: extensions
    43          type: string
    44          description: "The path to the extension descriptor file."
    45          scope:
    46            - PARAMETERS
    47            - STAGES
    48            - STEPS
    49          mandatory: false
    50          default:
    51          aliases:
    52            - name: extension
    53        - name: jobs
    54          type: int
    55          description: "Configures the number of Make jobs that can run simultaneously. Maximum value allowed is 8"
    56          scope:
    57            - PARAMETERS
    58            - STAGES
    59            - STEPS
    60          mandatory: false
    61          default:
    62          aliases:
    63            - name: jobs
    64        - name: platform
    65          type: string
    66          description: "The target platform to which the mtar can be deployed."
    67          scope:
    68            - PARAMETERS
    69            - STAGES
    70            - STEPS
    71          mandatory: false
    72          default: CF
    73          possibleValues:
    74            - CF
    75            - NEO
    76            - XSA
    77        - name: applicationName
    78          type: string
    79          description: "The name of the application which is being built. If the parameter has been provided and no `mta.yaml` exists, the `mta.yaml` will be automatically generated using this parameter and the information (`name` and `version`) from 'package.json` before the actual build starts."
    80          scope:
    81            - PARAMETERS
    82            - STAGES
    83            - STEPS
    84          mandatory: false
    85          default:
    86        - name: source
    87          type: string
    88          description: "The path to the MTA project."
    89          scope:
    90            - PARAMETERS
    91            - STAGES
    92            - STEPS
    93          mandatory: false
    94          default: "./"
    95        - name: target
    96          type: string
    97          description: "The folder for the generated `MTAR` file. If the parameter has been provided, the `MTAR` file is saved in the root of the folder provided by the argument."
    98          scope:
    99            - PARAMETERS
   100            - STAGES
   101            - STEPS
   102          mandatory: false
   103          default: "./"
   104        - name: defaultNpmRegistry
   105          type: string
   106          description: "Url to the npm registry that should be used for installing npm dependencies."
   107          scope:
   108            - GENERAL
   109            - PARAMETERS
   110            - STAGES
   111            - STEPS
   112          mandatory: false
   113          aliases:
   114            - name: npm/defaultNpmRegistry
   115          default:
   116        - name: projectSettingsFile
   117          type: string
   118          description: "Path or url to the mvn settings file that should be used as project settings file."
   119          scope:
   120            - GENERAL
   121            - PARAMETERS
   122            - STAGES
   123            - STEPS
   124          mandatory: false
   125          aliases:
   126            - name: maven/projectSettingsFile
   127        - name: globalSettingsFile
   128          type: string
   129          description: "Path or url to the mvn settings file that should be used as global settings file"
   130          scope:
   131            - GENERAL
   132            - PARAMETERS
   133            - STAGES
   134            - STEPS
   135          mandatory: false
   136          aliases:
   137            - name: maven/globalSettingsFile
   138        - name: m2Path
   139          type: string
   140          description: Path to the location of the local repository that should be used.
   141          scope:
   142            - GENERAL
   143            - STEPS
   144            - STAGES
   145            - PARAMETERS
   146          mandatory: false
   147          aliases:
   148            - name: maven/m2Path
   149        - name: installArtifacts
   150          type: bool
   151          description: "If enabled, for npm packages this step will install all dependencies including dev dependencies. For maven it will install all artifacts to the local maven repository. Note: This happens _after_ mta build was done. The default mta build tool does not install dev-dependencies as part of the process. If you require dev-dependencies for building the mta, you will need to use a [custom builder](https://sap.github.io/cloud-mta-build-tool/configuration/#configuring-the-custom-builder)"
   152          scope:
   153            - GENERAL
   154            - STEPS
   155            - STAGES
   156            - PARAMETERS
   157        - name: mtaDeploymentRepositoryPassword
   158          type: string
   159          description: Password for the alternative deployment repository to which mtar artifacts will be publised
   160          scope:
   161            - GENERAL
   162            - PARAMETERS
   163            - STAGES
   164            - STEPS
   165          secret: true
   166          resourceRef:
   167            - name: commonPipelineEnvironment
   168              param: custom/mavenRepositoryPassword
   169            - name: commonPipelineEnvironment
   170              param: custom/repositoryPassword
   171            - name: mtaDeploymentRepositoryPasswordId
   172              type: secret
   173            - type: vaultSecretFile
   174              name: mtaDeploymentRepositoryPasswordFileVaultSecretName
   175              default: mta-deployment-repository-passowrd
   176        - name: mtaDeploymentRepositoryUser
   177          type: string
   178          description: User for the alternative deployment repository to which which mtar artifacts will be publised
   179          scope:
   180            - GENERAL
   181            - PARAMETERS
   182            - STAGES
   183            - STEPS
   184          resourceRef:
   185            - name: commonPipelineEnvironment
   186              param: custom/mavenRepositoryUsername
   187            - name: commonPipelineEnvironment
   188              param: custom/repositoryUsername
   189        - name: mtaDeploymentRepositoryUrl
   190          type: string
   191          description: Url for the alternative deployment repository to which mtar artifacts will be publised
   192          scope:
   193            - GENERAL
   194            - PARAMETERS
   195            - STAGES
   196            - STEPS
   197          resourceRef:
   198            - name: commonPipelineEnvironment
   199              param: custom/mavenRepositoryURL
   200            - name: commonPipelineEnvironment
   201              param: custom/repositoryUrl
   202        - name: publish
   203          type: bool
   204          description: pushed mtar artifact to altDeploymentRepositoryUrl/altDeploymentRepositoryID when set to true
   205          scope:
   206            - STEPS
   207            - STAGES
   208            - PARAMETERS
   209          default: false
   210          aliases:
   211            - name: mta/publish
   212        - name: profiles
   213          type: "[]string"
   214          description: Defines list of maven build profiles to be used. profiles will overwrite existing values in the global settings xml at $M2_HOME/conf/settings.xml
   215          scope:
   216            - PARAMETERS
   217            - GENERAL
   218            - STAGES
   219            - STEPS
   220        - name: buildSettingsInfo
   221          type: string
   222          description: build settings info is typically filled by the step automatically to create information about the build settings that were used during the mta build . This information is typically used for compliance related processes.
   223          scope:
   224            - STEPS
   225            - STAGES
   226            - PARAMETERS
   227          resourceRef:
   228            - name: commonPipelineEnvironment
   229              param: custom/buildSettingsInfo
   230    outputs:
   231      resources:
   232        - name: commonPipelineEnvironment
   233          type: piperEnvironment
   234          params:
   235            - name: mtarFilePath
   236            - name: custom/mtaBuildToolDesc
   237            - name: custom/mtarPublishedUrl
   238            - name: custom/buildSettingsInfo
   239        - name: reports
   240          type: reports
   241          params:
   242            - filePattern: "**/TEST-*.xml"
   243              type: junit
   244            - filePattern: "**/cobertura-coverage.xml"
   245              type: cobertura-coverage
   246            - filePattern: "**/jacoco.xml"
   247              type: jacoco-coverage
   248    containers:
   249      - image: devxci/mbtci-java11-node14