Skip to Content
Technical Articles

Bulk Deploy & Undeploy CPI Artifacts

It’s the possibility of thoughts & imagination coming to life, that keep life & (work) interesting”

Yes, folks recently working for customer I was given task to train user to deploy and undeploy CPI artifacts, and all they were interested in undeploying all the artifacts for some task and then deploy all when task is done.

Consider a use case some one setting up artifacts on 2 data centers for 24*7 availability, who wants to undeploy all artifacts when there is planned downtime on one data center and deploy the artifacts in the back up data center for time being. How tedious it becomes for the users to navigate through individual artifacts and manage them.

 

With this thought I started wondering the ways to make it possible and hence came up with a solution with easy to handle screen.

 

 

 

The solution can be implemented by uploading the the simple i flow developed and take care of following 2 points

  1. Configure CPI_HOST_NAME for all receivers
    • if CPI url is https://XXXXX-tmn.hci.us2.hana.ondemand.com/itspaces, then CPI_HOST_NAME = XXXXX-tmn.hci.us2.hana.ondemand.com
  2. There are multiple receivers so configure host in all receivers

 

 

 

  • All the URLs use Basic authentication with CPI S-user id (role ESBMessaging.send is necessary for S-User)
  • Please create a keyStore for BASIC AUTHENTICATION with CPI S-User and Enter it in the parameter – Credential Name

 

 

 

  • Once the Iflow is deployed the URL to call is  http/MangeIflows

 

 

And at the end here is the artifact zip which can be uploaded and configured to be used.

 

Download the Artifact Here!!

 

 

Please leave your valuable feedback and as always will reach you all with next blog!!

17 Comments
You must be Logged on to comment or reply to a post.
  • Hi Vikas,

    nice tool and thanks for sharing it. This looks pretty useful. Two thoughts on it and the article:

    • Regarding the tool: Could you add a “select all” or “select all on current page” button?
    • Regarding the article:
      • Could you make the images clickable? That would improve the readability.
      • Could you explain in some sentences how the tool works technically/what happens in background?

    Best regards,
    Raffael

    • Hi Vikas Kumar Singh ,

      I had some time to try your tool now. First: nice application design. Seems like my CPI dashboard was able to inspire you. 🙂 Second: There’s a “bug” in the release. In the HTML code (I decoded the Base64 string) in line 96 you still have a complete url with the domain of your runtime tenant. I think the url variable in line 96 should contain only a relative path like “/http”. Otherwise it’s only runnable on your tenant.

      Besides that – one more wish. Could you please externalize the credential name also? “SAP_CPI_BASIC” may not fit to all users naming conventions. By externalizing the credential name as parameter, users could use your tool without disrespecting their specific naming conventions.

      Keep up the great work!

      Best regards,
      Raffael

      • HI Raffael,

         

        Thank you so much for your feedback, much appreciated. I was on vacation since last one and half week and couldn’t catch up with the comments. Yes I have incorporated the complete URL problem and updated the GIT link.

        And yes you are right, I have externalized the parameter for credentials as well

         

        Regards,

        Vikas

  • Hi Vikas,

     

    Very nice tool and thanks for sharing it, super usefull.

    I’ve uploaded into our CPI here, but i’m having a CORS issue while the jQuery request try to call the other endpoints.

    That’s the message that it’s returning at the console: “Access to XMLHttpRequest at ‘https://XXXXhana.ondemand.com/http/getRunTimeIflows’ from origin ‘https:///XXXXhana.ondemand.com’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource.”

    I’ve read some articles and maybe there is a issue with this parameter Access-Control-Allow-Origin.

    Have you already experienced this issue?

     

    Best Regards,

    Bruno Almeida

  • Hi Vikas,

     

    Nice blog…

    I am trying to upload your artifact but getting below error –>

     

    “Upload of the resource failed. Integration flow project must contain a manifest file.”

    Can you please share how to fix this?

     

     

    Regards,

    Rashmi