1
0
mirror of https://github.com/SAP/jenkins-library.git synced 2024-12-12 10:55:20 +02:00
sap-jenkins-library/resources/metadata/gctsCreateRepository.yaml
Siarhei Pazdniakou 46bafc40a3
Improve validation of configuration (#3125)
* Implemented validation for the option possibleValues

* Has been added the option mandatoryIf to config with validation

* Fixed issues found during code review

* improved golang template

* Fixed tests. Added validation for mandatoryIf option

* Fix typo

* Fixed tests

* Validation was refactored. Added options

* Added default value for parameters with possibleValues option

* Validation was moved after the configuration resolution

* Canceled some default values

Co-authored-by: Sven Merk <33895725+nevskrem@users.noreply.github.com>
Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
2021-10-01 12:49:05 +02:00

99 lines
2.9 KiB
YAML

metadata:
name: gctsCreateRepository
description: Creates a Git repository on an ABAP system
longDescription: |
Creates a local Git repository on an ABAP system if it does not already exist.
spec:
inputs:
secrets:
- name: abapCredentialsId
description: Jenkins credentials ID containing username and password for authentication to the ABAP system on which you want to create the repository
type: jenkins
params:
- name: username
type: string
description: Username to authenticate to the ABAP system
scope:
- PARAMETERS
- STAGES
- STEPS
mandatory: true
secret: true
resourceRef:
- name: abapCredentialsId
type: secret
param: username
- name: password
type: string
description: Password to authenticate to the ABAP system
scope:
- PARAMETERS
- STAGES
- STEPS
mandatory: true
secret: true
resourceRef:
- name: abapCredentialsId
type: secret
param: password
- name: repository
type: string
description: Specifies the name (ID) of the local repository on the ABAP system
scope:
- PARAMETERS
- STAGES
- STEPS
mandatory: true
- name: host
type: string
description: Specifies the protocol and host address, including the port. Please provide in the format `<protocol>://<host>:<port>`. Supported protocols are `http` and `https`.
scope:
- PARAMETERS
- STAGES
- STEPS
mandatory: true
- name: client
type: string
description: Specifies the client of the ABAP system to be addressed
scope:
- PARAMETERS
- STAGES
- STEPS
mandatory: true
- name: remoteRepositoryURL
type: string
description: URL of the corresponding remote repository
scope:
- PARAMETERS
- STAGES
- STEPS
- name: role
type: string
description: Role of the local repository. Choose between 'TARGET' and 'SOURCE'. Local repositories with a TARGET role will NOT be able to be the source of code changes
scope:
- PARAMETERS
- STAGES
- STEPS
possibleValues:
- SOURCE
- TARGET
default: SOURCE
- name: vSID
type: string
description: Virtual SID of the local repository. The vSID corresponds to the transport route that delivers content to the remote Git repository
scope:
- PARAMETERS
- STAGES
- STEPS
- name: type
type: string
description: Type of the used source code management tool
scope:
- PARAMETERS
- STAGES
- STEPS
default: GIT
possibleValues:
- GIT