I am interested in integrating Aegir Devshop with the BOA project

Is it possible?
Is it easy?
Has anyone done it?

I will post my notes as I progress


omega8cc’s picture

Project: Barracuda » Octopus
Component: Miscellaneous » Code
Status: Active » Closed (duplicate)
niccolox’s picture

OK, thanks for the pointers. I should of checked the Octopus issues.

However, a question

Is it possible to have each BOA site to have a GIT URL that Devshop can initialize a project with?

Am unsure how to create a GIT repo in BOA for each site?

snlnz’s picture

change to the sites directory: cd /platform/sites/foo.bar/
git init ; chmod 775 .git -R ; git config receive.denyCurrentBranch ignore ; git add . ; git commit -am "initial commit"

I found you can't push changes without the permissions of the .git directory being group writable, and though I'm no git expert I also couldn't push changes without setting "config receive.denyCurrentBranch ignore". Once this was done all worked fine.

Note: the current site owner defined in the aegir front end is the only user account that can update the repo for some reason. FYI.

Then you can clone the repo like this:
git clone octopus.ftpuser@servername:/platform/sites/foo.com/.git foo.com

We use this work around for theme updates rather than ftp with no version control.

niccolox’s picture

Was wondering if it was possible to rsync down a platform to say /static and create a new folder called /static/2.08/boa-platforms/platforms which had a git URL / repo

Then, once Devshop supports 2.x, I could GIT into Devshop and back to BOA

And from /static/2.08/boa-platforms/platformsx could then migrate using Aegir UI. Perhaps gitignore is needed here

Would be ideal if DevShop could be loaded with all BOA platforms.

Can imagine also creating a GIT repo for each platform manually and later via scripts

Thinking out loud. But after using the pagan god squad hosting platform I know now local host > Dev > test > live can be sôooooo much smoother :-)

niccolox’s picture

Thanks for the response. Must of been posting while you responded.

I was wondering whether what I am really asking is "please ADD gitorious or gitlab or gitolite to BOA?" :-) omfg !

Or perhaps, adding the Gerritt .war into Jetty... I think I might try that after the workaround above

Thanks again

snlnz’s picture

#4 sounds interesting, I'm currently testing devshop as well so I'd happily collaborate efforts with you.
#5 Not sure what you mean?

niccolox’s picture

#4 but how do I get the platform from BOA to DevShop? And then have sites within the platform? GIT submodules?

#5 there are two kinds of platforms in BOA. Managed platforms which come downstream from Drupal.org via scripts for install ands updates. The second kind is custom and lives in the static directory. How do I access the managed platforms via GIT?

snlnz’s picture

#4 The recommended workflow is to use .make files to build your platforms. So do a drush generate-make platform.make
Edit your file to suite and use this to build your new devshop platform. We manage all of our custom platforms via .make files as to allow updates to be very simple. Change one version number and re-build a platform then clone sites one by one to test them on the newer code and migrate if all works how it should. Is that what you are trying to achieve?

#5 If you mean to clone? As I mentioned you'd need to initialize the empty repo at the platform directory level first.
git clone octopus.ftpuser@servername:/data/disk/o1/static/platform_custom/.git

niccolox’s picture

Wow, thanks.

Does that workflow apply to a BOA managed platform site? What if I want to develop using the BOA managed platform Commerce Kickstart. How do I get that actual code? I know I could download from d.o the equivalent version, but how do I get the managed code from within BOA? I remember getting an rsync snippet that could de symlink and provide the full codebase for localhost type development.

Are you saying I should generate a make for the platform?

The nice thing about pantheon is there is a smooth workflow from GIT localhost to hosted Dev and then web ui work flow from Dev to test to live

Anyway, I will look into you're info and tips etc and see if I can make sense of it all

niccolox’s picture

I guess the hard thing is getting a boa platform into devshop. Not just a site, the actual platform.

Assuming you get the boa platform into devshop and build sites with it, how do you put those sites back into boa?

Devshop seems to want to consume entire platforms, but boa doesn't want to provide them.

Boa wants to import sites folders only, but devshop wants to give up platforms only

Do we use gitignore?

Am I making sense?

niccolox’s picture

There is the remote_import aegir module from Stephen Jones that is included in BOA. That might work for getting sites from devshop to boa.

But I am not sure devshop can use a boa platform as a basis for development as there is no GIT repo accessible for the platform.

Anyway, need to investigate

niccolox’s picture

I think this will pull down a local copy of a boa platform

rsync -avzuqL --ignore-errors -e ssh user.ftp@host.ip:/full/path/to/platform/root /local/path/

Came via email support omega8cc a while ago