github.com/jaylevin/jenkins-library@v1.230.4/documentation/docs/steps/abapEnvironmentAssembleConfirm.md (about)

     1  # ${docGenStepName}
     2  
     3  ## ${docGenDescription}
     4  
     5  ## Prerequisites
     6  
     7  * A SAP BTP, ABAP environment system is available.
     8    * This can be created manually on Cloud Foundry.
     9    * In a pipeline, you can do this, for example, with the step [cloudFoundryCreateService](https://sap.github.io/jenkins-library/steps/cloudFoundryCreateService/).
    10  * Communication Scenario [“SAP BTP, ABAP Environment - Software Assembly Integration (SAP_COM_0582)“](https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/26b8df5435c649aa8ea7b3688ad5bb0a.html) is setup for this system.
    11    * E.g. a [Communication User](https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/0377adea0401467f939827242c1f4014.html), a [Communication System](https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/1bfe32ae08074b7186e375ab425fb114.html) and a [Communication Arrangement](https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/a0771f6765f54e1c8193ad8582a32edb.html) are configured.
    12    * This can be done manually through the respective applications on the SAP BTP, ABAP environment system,
    13    * or through creating a service key for the system on Cloud Foundry with the parameters {“scenario_id”: “SAP_COM_0582", “type”: “basic”}.
    14    * In a pipeline, you can do this, for example, with the step [cloudFoundryCreateServiceKey](https://sap.github.io/jenkins-library/steps/cloudFoundryCreateServiceKey/).
    15  * You have following options to provide the ABAP endpoint configuration:
    16    * The host and credentials the SAP BTP, ABAP environment system itself. The credentials must be configured for the Communication Scenario SAP_COM_0582.
    17    * The Cloud Foundry parameters (API endpoint, organization, space), credentials, the service instance for the ABAP service and the service key for the Communication Scenario SAP_COM_0582.
    18    * Only provide one of those options with the respective credentials. If all values are provided, the direct communication (via host) has priority.
    19  * The step needs information about the packages which should be assembled present in the CommonPipelineEnvironment.
    20    * For each repository/component version it needs the name of the repository, the version, splevel, patchlevel, namespace, packagename, package type, the status of the package, and optional the predecessor commit id.
    21    * To upload this information to the CommonPipelineEnvironment run prior to this step the steps:
    22      * [abapAddonAssemblyKitCheckCVs](https://sap.github.io/jenkins-library/steps/abapAddonAssemblyKitCheckCVs/),
    23      * [abapAddonAssemblyKitReserveNextPackages](https://sap.github.io/jenkins-library/steps/abapAddonAssemblyKitCheckPV/).
    24    * If one of the package is already in status released, the assembly for this package will not be executed.
    25  * The Software Components for which packages are to be assembled need to be present in the system.
    26    * This can be done manually through the respective applications on the SAP BTP, ABAP environment system.
    27    * In a pipeline, you can do this, for example, with the step [abapEnvironmentPullGitRepo](https://sap.github.io/jenkins-library/steps/abapEnvironmentPullGitRepo/).
    28  * The packages to be assembled need to be reserved in AAKaaS and the corresponding information needs to be present in CommonPipelineEnvironment. To do so run step [abapAddonAssemblyKitReserveNextPackages](https://sap.github.io/jenkins-library/steps/abapAddonAssemblyKitReserveNextPackages/) prior this step.
    29  
    30  ## ${docGenParameters}
    31  
    32  ## ${docGenConfiguration}
    33  
    34  ## ${docJenkinsPluginDependencies}
    35  
    36  ## Examples
    37  
    38  ### Configuration in the config.yml
    39  
    40  The recommended way to configure your pipeline is via the config.yml file. In this case, calling the step in the Jenkinsfile is reduced to one line:
    41  
    42  ```groovy
    43  abapEnvironmentAssembleConfirm script: this
    44  ```
    45  
    46  If you want to provide the host and credentials of the Communication Arrangement directly, the configuration could look as follows:
    47  
    48  ```yaml
    49  steps:
    50    abapEnvironmentAssembleConfirm:
    51      abapCredentialsId: 'abapCredentialsId',
    52      host: 'https://myABAPendpoint.com',
    53  ```
    54  
    55  Or by authenticating against Cloud Foundry and reading the Service Key details from there:
    56  
    57  ```yaml
    58  steps:
    59    abapEnvironmentAssembleConfirm:
    60      abapCredentialsId: 'cfCredentialsId',
    61      cfApiEndpoint : 'https://test.server.com',
    62      cfOrg : 'cfOrg',
    63      cfSpace: 'cfSpace',
    64      cfServiceInstance: 'myServiceInstance',
    65      cfServiceKeyName: 'myServiceKey',
    66  ```
    67  
    68  ### Input via the CommonPipelineEnvironment
    69  
    70  ```json
    71  {"addonProduct":"",
    72  "addonVersion":"",
    73  "addonVersionAAK":"",
    74  "addonUniqueID":"",
    75  "customerID":"",
    76  "AddonSpsLevel":"",
    77  "AddonPatchLevel":"",
    78  "TargetVectorID":"",
    79  "repositories":[
    80    {
    81      "name":"/DMO/REPO_A",
    82      "tag":"",
    83      "branch":"",
    84      "version":"",
    85      "versionAAK":"0001",
    86      "PackageName":"SAPK001001REPOA",
    87      "PackageType":"CPK",
    88      "SpLevel":"0000",
    89      "PatchLevel":"0001",
    90      "PredecessorCommitID":"cbb834e9e03cde177d2f109a6676901972983fbc",
    91      "Status":"P",
    92      "Namespace":"/DMO/",
    93      "SarXMLFilePath":""
    94    },
    95    {
    96      "name":"/DMO/REPO_B",
    97      "tag":"",
    98      "branch":"",
    99      "version":"",
   100      "versionAAK":"0002",
   101      "PackageName":"SAPK002001REPOB",
   102      "PackageType":"CPK",
   103      "SpLevel":"0001",
   104      "PatchLevel":"0001",
   105      "PredecessorCommitID":"2f7d43923c041a07a76c8adc859c737ad772ef26",
   106      "Status":"P",
   107      "Namespace":"/DMO/",
   108      "SarXMLFilePath":""
   109    }
   110  ]}
   111  ```