MidCOM3 to transition from Phing to pake
-
Henri Bergius
MidCOM3 to transition from Phing to pake
Sun October 25 2009 16:45:08 UTCHi,
One of the decisions from the Midgard Gathering is to transition to
pake for our PHP build scripts and other automation.
Pake is a Rake-like build tool maintained by our own Alexey
Zakhlestin. Some info:
http://blog.milkfarmsoft.com/2009/08/pake-php5-project-build-system/
http://wiki.github.com/indeyets/pake
MidCOM3 already has Pake commands for scaffolding components and
linking statics. The plan is to also implement the midgard2-installer
tools using Pake.
/Bergie
--
Henri Bergius
Motorcycle Adventures and Free Software
http://bergie.iki.fi/
Skype: henribergius
Jabber: henri.bergius@gmail.com
Microblog: http://www.qaiku.com/home/bergie/
My Royal Enfield Bullet 500 is for sale, see http://www.nettimoto.com/844397
_______________________________________________
dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev -
Re: [midgard-dev] MidCOM3 to transition from Phing to pake
Tue October 27 2009 12:35:07 UTCHi,
On Sun, Oct 25, 2009 at 6:42 PM, Henri Bergius <henri.bergius@iki.fi> wrote:
> One of the decisions from the Midgard Gathering is to transition to
> pake for our PHP build scripts and other automation.
Some notes about Midgard2 installer:
Will be done with PHP5 + Pake
Bundle installation
Check out bundle manifest from git
Read dependencies
Resolve dependencies (get their manifest files, build dependency tree)
Install components
Get bundle files
Import data
Use transaction that finishes when all imports are done
Check revised of the objects in database before importing
Throw exception and revert install in this case, except when run with "force"
$object->import();
Component installation
Check out component manifest from git
Read dependencies
Resolve dependencies (get their manifest files, build dependency tree)
Install PECL dependencies
Install PEAR dependencies
Install component dependencies -> component installation
Get component files
in new install:
git clone
git checkout <desired branch/tag>
in update:
git pull
git checkout <desired branch/tag>
Validate MgdSchema
Install MgdSchema and views
symlink to Midgard's directories
Install statics
symlink to static root
Clear MidCOM3 manifest cache
Create/update storage
use a transaction that we commit only after whole installation finishes
(maybe stop/start HTTP server)
(report installation to "popularity contest")
Bundle creation
Create directory for bundle (myapp.mgdbundle)
(maybe do a git init)
Export bundle manifest (component list)
(git add)
Export data
Check what MgdSchemas are to be exported
Build data dependency tree
Give sequence number to objects
Compare files to export to existing files in bundle, do moves if
GUIDs match, remove files that are not in export
Export to XML
(git add)
(maybe do a git commit)
Old installer code from Rambo in
http://trac.midgard-project.org/browser/trunk/external-tools/mvc_installer
Next: who will do what?
/Henri
--
Henri Bergius
Motorcycle Adventures and Free Software
http://bergie.iki.fi/
Skype: henribergius
Jabber: henri.bergius@gmail.com
Microblog: http://www.qaiku.com/home/bergie/
My Royal Enfield Bullet 500 is for sale, see http://www.nettimoto.com/844397
_______________________________________________
dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev -
Re: [midgard-dev] MidCOM3 to transition from Phing to pake
Tue October 27 2009 13:30:07 UTCHenri Bergius pisze:
> Hi,
Hi!
> Validate MgdSchema
> Install MgdSchema and views
> symlink to Midgard's directories
I think I already mentioned this. What about midgard_config being
responsible to install schemas and views? This way application doesn't
have to worry about schemas location.
Piotras
_______________________________________________
dev mailing list
dev@lists.midgard-project.org
http://lists.midgard-project.org/mailman/listinfo/dev
