metadata:
  name: abapAddonAssemblyKitCheckPV
  description: This step checks the validity of a Addon Product Version.
  longDescription: |
    This step checks by calling AAKaaS whether the Addon Product Version in the addonDescriptor configuration file specified via addonDescriptorFileName (e.g. addon.yml) does exist or is a valid successor of an existing Product Version.
    It resolves the dotted version string into version, support package stack level and patch level and writes it to the addonDescriptor structure in the Piper commonPipelineEnvironment for usage of subsequent pipeline steps.
    <br />
    For Terminology refer to the [Scenario Description](https://www.project-piper.io/scenarios/abapEnvironmentAddons/).
spec:
  inputs:
    secrets:
      - name: abapAddonAssemblyKitCredentialsId
        description: CredentialsId stored in Jenkins for the Addon Assembly Kit as a Service (AAKaaS) system
        type: jenkins
    params:
      - name: abapAddonAssemblyKitEndpoint
        type: string
        description: Base URL to the Addon Assembly Kit as a Service (AAKaaS) system
        scope:
          - PARAMETERS
          - STAGES
          - STEPS
          - GENERAL
        mandatory: true
        default: https://apps.support.sap.com
      - name: username
        type: string
        description: User for the Addon Assembly Kit as a Service (AAKaaS) system
        scope:
          - PARAMETERS
          - STAGES
          - STEPS
        mandatory: true
        secret: true
      - name: password
        type: string
        description: Password for the Addon Assembly Kit as a Service (AAKaaS) system
        scope:
          - PARAMETERS
        mandatory: true
        secret: true
      - name: addonDescriptorFileName
        type: string
        description: File name of the YAML file which describes the Product Version and corresponding Software Component Versions
        mandatory: true
        default: addon.yml
        scope:
          - PARAMETERS
          - STAGES
          - STEPS
          - GENERAL
      - name: addonDescriptor
        type: string
        description: Structure in the commonPipelineEnvironment containing information about the Product Version and corresponding Software Component Versions
        mandatory: false
        scope:
          - PARAMETERS
          - STAGES
          - STEPS
        resourceRef:
          - name: commonPipelineEnvironment
            param: abap/addonDescriptor
  outputs:
    resources:
      - name: commonPipelineEnvironment
        type: piperEnvironment
        params:
          - name: abap/addonDescriptor
