Welcome to the SRP Forum! Please refer to the SRP Forum FAQ post if you have any questions regarding how the forum works.

Faster OI deployment

Hi,


Perhaps I am doing this wrong, but every time i want to deploy something, I need to

1. Create the RDK
2. Save the RDK somewhere
3. Open the target app and then import the RDK

Can I just do all of this from one GUI, as below?


Comments

  • You're doing it the right way.

    If I'm not mistaken, you're in a uniqueish scenario where development and production are at the same physical location so you have direct access to both/all systems.
    Keep in mind, the nature of the more usual arrangement where development occurs at a development house, the rdk is created once and then distributed to multiple client sites to be deployed/installed to each of their separate systems.
    I think that gives it some context as to why the existing approach makes sense.

    That said, I imagine you could create your own deployment utility whereby, in your environment, you could streamline to all occur from one interface but I doubt the effort would be worth the seconds you'd save.
  • as I have to deploy updates many times every day, this would save a lot of time.
  • How important is it to save your Repository View records? If not important, you can use the Check Out tool to deploy directly into another copy of OpenInsight.
  • It's not important. What is the Check Out tool?
  • If you go to the main IDE menu, you'll see Development. If you dropdown this menu you'll see a Check-out / Retry Check-out menu. This is an early attempt to do what GIT does now. In its day it was innovative but it has been severely neglected and is mostly forgotten by OI developers. Yet, it has its uses for quick deployment from one OI to another OI.
  • I'm not sure if you are aware of this feature, but the SRP Editor allows you to quickly add the currently open tab item (i.e., stored procedure, insert, or even record/dictionary) into an existing Repository View. Just press F6 and you'll see a list of Views that you can select to add or remove from.
  • yeah I know about that. It would be good if you could then click a button to deploy the rdk to an environment. Anyway, that's what I will try to do.
  • Josh,

    I feel your discomfort when having to use the RDK window and have pondered the same question as you over the years for various projects. Here are two things that might help.

    1. This code was provided to me during a support request when I inquired how an RDK could be extracted / generated using code instead of having to go into the RDK deployment definition and click the 'Extract' button. https://gist.github.com/jbratu/626f8fcfde48b7832138c7c76583bbbb
    It was explained to me that the extract button does a variety of things with callbacks to update the progress bar and isn't a simple function to call for building an RDK. The Gist code above was a quick way to take an SYSLIST record of routines and build a compatible RDK record. I did not use this routine so your mileage may vary.

    2. Since my pain point was going through the RDK window and selecting routines and events from the tree control I opted to build some code to create an RDK view (list of stored procedures, windows, quick events, etc) that could easily be deployed by clicking the 'Extract' button. The code is available here https://gist.github.com/jbratu/ac4bc54e46545fdbf0b91be42be00e5f

    The code may not be feature complete but was useful for me to track what was included in an RDK view, and easily add stored procedures, windows, and quick events. It probably doesn't support other repository types without some work.

    Bonus idea ....

    In one situation where I automatically wanted to deploy RDKs into an OpenInsight system, I modified the system's startup routine to look for command-line arguments that were passed to oinsight.exe upon launch. The command-line arguments would trigger a non-interactive startup window which would install the RDK specified in the command line arguments using the RDKInstall function and then close OpenInsight. The result was you could launch OI with a command like:

    OINSIGHT.EXE /AP=MYAPP /UN=APPADMIN /PW=YOURPASS /DV=0 /HE=0 /DEPLOYRDK=C:\MyRDKs\ThisOne /DEPLOY-POST-COMMAND=MY_POST_RDK_STORED_PROC

    Depending on the types of RDKs being installed this could be a little risky because the RDK process doesn't provide a lot of feedback or ability to rollback in case the RDK process fails.
  • Thanks for that. This should help.
Sign In or Register to comment.