Announcement

Collapse
No announcement yet.

Best Practices for Staging in Dev Environment and Moving to Live Environment

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Best Practices for Staging in Dev Environment and Moving to Live Environment

    Hello everyone,
    We have just set up a development environment (on a Miva hosted server). It is a subdomain of our main site. We do fairly heavy customization of the theme and want to be able to test the changes in our dev environment before ‘pushing’ them to the live site. My question is this, once the modifications have been tested and confirmed on the dev environment, what are your best practices for moving those changes to the live site? I am fairly new to the Miva ecosystem so any help is appreciated.
    Just so I am clear, let me give you a scenario. Let’s say I’m asked to make several theme modifications to the BASK, OSEL, and OPAY pages. Those changes touch the Template, Basket Contents, Content sections on each page. Once testing is done, what is the best way to move those changes to the live system. Are these code modifications database entries? Do I need to make a complete copy of the dev files and database and export / import them into the live site (this seems like over-kill)?
    I am absolutely sure many of you already have a best-practice for doing your staging and pushing to live, so I would love to hear how you handle it. We are on Miva 9.00064

    #2
    The way we do it is, saving the framework on both sites (current and staging server). You can find it under Home > User Interface > Frameworks. When changing only a couple templates save those on the staging server. IMPORTANT Any changes to the CSS should be saved in a separate file on the staging server. You can join them later and it is just a precaution. Next step would be ftp downloading the staging server framework (should be here > /subdomains/dev/httpdocs/mm5/frameworks) and upload it thru Miva admin on the current site. Last step is activating the new framework and voila!

    Issues are usually files not referenced (script, css) and copying them manually is the easiest way.
    Andreas Toman
    PCINET, LLC

    Miva Merchant Design, Development, Integration & Support
    We built over 200 Miva Merchant stores!
    Miva shopping cart design & integration service and see our Portfolio!


    e-mail: [email protected]
    web: www.pcinet.com
    LinkedIn: Andreas Toman
    phone: (786) 250-2056 (Miami, FL)

    Comment


      #3
      Concur as well. This is probably the easiest way to do it at the moment if you have large scale changes. There is one alternative method available for small to medium scale changes (pretty much anything up to using 'different' modules and data settings (for example shipping rules). Our Developer Sandbox module lets you create protected areas within any template whose changes ONLY effect those who have been given permission to view the Sandbox. (So, for example, you can add other staffers who'll be helping to test, or a boss, or client, etc.). When everyone is happy, you can make the changes live with one click...and, should you miss something, revert the changes back with a single click. Once everything is running smoothly, you can remove the 'un-sandboxed' changes at your leisure.

      If you (or anyone else) provides us with a semi-detailed plan, we'd be happy to show you how (and if) you should deploy the sand boxes.

      http://www.phosphormedia.com/product/pm_sandbox.html
      Bruce Golub
      Phosphor Media - "Your Success is our Business"

      Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
      phosphormedia.com

      Comment


        #4
        Darn it, I forgot of this beautiful module! This allows you to apply changes without a staging server :)
        Andreas Toman
        PCINET, LLC

        Miva Merchant Design, Development, Integration & Support
        We built over 200 Miva Merchant stores!
        Miva shopping cart design & integration service and see our Portfolio!


        e-mail: [email protected]
        web: www.pcinet.com
        LinkedIn: Andreas Toman
        phone: (786) 250-2056 (Miami, FL)

        Comment


          #5
          Yea, so many modules, so little time...
          Bruce Golub
          Phosphor Media - "Your Success is our Business"

          Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
          phosphormedia.com

          Comment


            #6
            ... and you are coming out with a new membership module, right :)
            Andreas Toman
            PCINET, LLC

            Miva Merchant Design, Development, Integration & Support
            We built over 200 Miva Merchant stores!
            Miva shopping cart design & integration service and see our Portfolio!


            e-mail: [email protected]
            web: www.pcinet.com
            LinkedIn: Andreas Toman
            phone: (786) 250-2056 (Miami, FL)

            Comment


              #7
              when clients start leaving us some breathing room, but its in development.
              Bruce Golub
              Phosphor Media - "Your Success is our Business"

              Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
              phosphormedia.com

              Comment


                #8
                Perfect. Thank you for the insight. We have a dedicated dev subdirectory, so I think this is the right approach. I am going to test the process this afternoon.

                The one oddity that I have noticed, is that even after making a change to a template file on dev (say, OCST) or even a theme-specific content section (checkout-summary), the date/time on the framework .pkg file does not change. I guess I thought that the template files were part of the framework .pkg file you referenced. Being a linux guy, I kind of thought the date/time stamp on the .pkg file would update if something in the framework changed. I may be missing something though. I will know a lot more once I try it this afternoon. The nice thing (I think) about this approach is if I give the framework a versioning name (IE a different name - say levels-readytheme1-1-0 and it breaks hard-core, I can just revert back to the previous (working) framework.

                Comment


                  #9
                  Framework Packages are an 'export/import' tool. Its not dynamic. You'd have to create the package (export) everytime you make a change to the templates if you wanted them to be up to date.
                  Bruce Golub
                  Phosphor Media - "Your Success is our Business"

                  Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
                  phosphormedia.com

                  Comment


                    #10
                    Ok, so what Andreas said isn’t exactly correct then? His instructions lead me to the framework .pkg file. I don’t see an export option for frameworks under the Export Data section of the Data Management interface.

                    Comment


                      #11
                      What I meant wasn't that Frameworks where under import/export, but that framework packages are essentially import/export routines meaning they have to be run explicitly. Framework Management is under Menu | User Interface
                      Bruce Golub
                      Phosphor Media - "Your Success is our Business"

                      Improve Your Customer Service | Get MORE Customers | Edit CSS/Javascript/HTML Easily | Make Your Site Faster | Get Indexed by Google | Free Modules | Follow Us on Facebook
                      phosphormedia.com

                      Comment


                        #12
                        I see it now. So, it looks like the process details above is fine - but (importantly), you have to 'save' the framework on the dev site first. Then, continue on in the process as detailed.

                        Comment

                        Working...
                        X