Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??
I have certainly done the deal where I stage and deploy at distinct vhosts on the same server. But its not ideal.

Having to deploy to both a staging server and a production server actually offers an opportunity to strengthen your Makefile.PL and other deployment tools.

On my desktop, where my sandbox has grown to over 620mb over the past few years, it is easy to overlook dependencies. Some of my early releases of new modules get plenty of red marks from the smoke testers because my Makefile.PL failed to list all the code I was relying on without being being conscious that it was underneath what I was doing.

Cloud providers like rackspacecloud or aws let you spin up a fresh server in a matter of moments (and for pennies an hour) where you get to build everything from scratch. Its an excellent environment in which to work out the details of your deployment code. And automating those builds helps to flush out the bugs.

CGI::App can have you monitoring cpan builds for days it seems, but even that can be nearly automated if you configure cpan appropriately to follow dependencies.

And every now and then, you can take your staging server, shut it down and spin up a new instance with which to test everything again. If you are careful to copy your /etc/shadow and other key config files from /etc, you can migrate your testbed from one staging server to another, without losing your team in the process.

And everytime you do so, you will flush out issues you manually worked through last time, but will automate this time for the next time. After a few iterations of that, you'll have pretty strong deployment code.

-- Hugh

if( $lal && $lol ) { $life++; }
if( $insurance->rationing() ) { $people->die(); }

In reply to Re: advice sought on perl web dev setup by hesco
in thread advice sought on perl web dev setup by punkish

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    Domain Nodelet?
    and the web crawler heard nothing...

    How do I use this?Last hourOther CB clients
    Other Users?
    Others making s'mores by the fire in the courtyard of the Monastery: (6)
    As of 2024-07-24 00:47 GMT
    Find Nodes?
      Voting Booth?

      No recent polls found

      erzuuli‥ 🛈The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.