[Catalyst] From Development to Production.

Trevor Leffler tleffler at uw.edu
Wed Mar 2 18:54:59 GMT 2016

Yes, that.  But to be a tad verbose about it...

Use version control and branches (or whatever your VCS prefers).  Cut a 
new branch whenever you want to create a new "release" for production. 
This will let you switch from one branch to the next (upgrade) or back 
again if things blow up.

As a baby-step prior to doing builds and auto deployment, you can 
checkout your code from your production server(s).  While this is still 
a manual step, it's probably better than copying folders and files.

Once you're there, start looking into "builds."  Generally folks use 
some kind of Continuous Integration (CI) software that polls your VCS 
for recent commits and then "kicks off a build."  The simplest thing it 
might do is checkout the latest code revision and tar it up.  This 
tarfile is a "build artifact" ready for you to deploy (i.e. copy into 
production and untar).  Your work after this point is to figure out what 
else you'd like to happen during a build -- run tests? create 
documentation? do code inspections? -- and research how your build 
artifacts could be automatically deployed.

I'll echo Toomas in that there's a lot to learn here and keep you busy 
depending on how far you want/can take it.


On 03/02/2016 10:32 AM, Toomas Pelberg wrote:
> Go learn about version control and deployment automation, you can google
> these keywords and will likely be busy for the next few weeks ;-) it's a
> pretty wide and interesting reading
> ------------------------------------------------------------------------
> From: Andrew <mailto:catalystgroup at unitedgames.co.uk>
> Sent: ‎3/‎2/‎2016 20:17
> To: The elegant MVC web framework <mailto:catalyst at lists.scsys.co.uk>
> Subject: [Catalyst] From Development to Production.
> So, I'm trying to learn Modern Perl workflows,
> and I heard it's best to do all your development on a development server,
> rather than mess around with code live, on the production server.
> So let's say I've coded my Catalyst app on a dev server, and it's in a
> folder called MyApp....
> Do I just copy the MyApp folder to the Production Server?
> [Am likely to copy and paste the folder using Cyberduck].
> I mean, assuming the production server is setup to run it, and so forth...
> Let's for example say, I'd already published Version 1.0 of my website
> on the production server.
> And it's running from a MyApp directory on the production server.
> Then I code a version 2.0 on my development server, in a folder called
> MyApp, and I want to publish that....
> ...do I just again, copy MyApp from my development server, over to my
> production server?
> Obviously, new files would overwrite old ones.
> What about if version 2.0 saw me delete some old unused stuff, do I have
> to make a note of what they were,
> and go through the folder on the production server and delete them?
> Or is there some graceful way to sync the development and production
> versions of my code?
> What are other people doing?
> Grateful for any insights.
> Yours,
> Andrew.
> _______________________________________________
> List: Catalyst at lists.scsys.co.uk
> Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
> Dev site: http://dev.catalyst.perl.org/

More information about the Catalyst mailing list