No announcement yet.

Deployment - Separating Production Environment from Application Code

  • Filter
  • Time
  • Show
Clear All
new posts

  • Deployment - Separating Production Environment from Application Code

    I am looking for some advice from experienced ScriptCasers.

    I find the deployment process cumbersome - especially when uploading a 200MB+ _lib/prod folder.

    I also understand that I can upload just the changes to my application code, but I would like to separate production environment updates from code updates.

    The wasteful approach is to load application + production environment into each instance. So, if I have instances of V1, V2, V3 then I would have 3 full production environment installs - wasting 400MB+ of disk space and the time to upload. Ideally, I would have a folder, named _prod1 which contained the entire production environment at the same directory level as application instances (V1, V2, V3). So V1_1, V2_1, V3_1 would all look to _prod1 for their production environment. If I pushed a new production environment to say _prod2, then I could create a new application folder, V1_2 which would be application code version1 (V1) and production environment version 2 (_2).

    Is this possible? If yes, what are the advantages / disadvantages based on your experience? Thank you.

  • #2
    If you have your instances on one server then you are able to share the runtime environment. You have to do an advanced deploy to allow that, by doing so you can apply the directory where the runtime is stored.

    The advantage is that you save space, and you can always remove what you don't need. Especially the pdf stuff is taking a lot of diskspace as there are several versions of the same application deployed.

    The disadvantage is that if it is needed to upgrade your _lib you have to refresh all your other environments too.

    Albert Drent
    aducom software netherlands
    scriptcase partner, reseller, support and (turn-key) development /


    • #3

      Thank you. Great advice. I will investigate advanced deployment as you suggested. Right now I am having a lot of problems using typical deployment. Seems that my "secure" production environment passwords and database connections are not being saved. I am deploying to a linux environment. Are there any specific permissions required during install (I have not tried the 777 band aid yet)? Is a normal 0755 directory / 0644 file permission mask afterwards the proper runtime environment?


      PS. You contributions to this forum are a great benefit to the Scriptcase community. I hope NetMake appreciates you as we do


      • #4
        My way for the production system and updates is this:

        - create a app-folder: myapp.10
        - upload full deploy as .zip in that folder and unzip

        - upload updates (changed apps) as and unzip that. I have a update.php in the app-folder and unzip with update.php?id=x

        - for a new version i create a new app-folder: myapp.11
        - upload full deploy as .zip in that folder and unzip

        - upload updates (changed apps) as and unzip that. I have a update.php in the app-folder and unzip with update.php?id=x

        And so on ...

        Free Space on HDD is today not the problem, but you can delete myapp.10 if you release version 12 or so ...

        Best regards: - Reinhard -

        I use ScriptCase 8 Enterprise Edition, Version 8.(latest)


        • #5

          Thank you. If I understand your suggestion, you do a full deployment (application+production environment) with each release - even if the production environment does not change. I was finding it slow to change permissions on the production environment for configuration to work properly, and then adjusting permissions to make installation secure. I like the update.php idea. I will have to experiment more.