All-in-one bash installers (see BARRACUDA.sh.txt and OCTOPUS.sh.txt) to install and/or upgrade Aegir Hosting Systems for Drupal.

This project has been maintained previously on GitHub: https://github.com/omega8cc/nginx-for-drupal

You can install one Aegir Master Instance on your server using Barracuda and any number of Aegir Satellite Instances using Octopus installer.

Barracuda is the main script for the base/core Aegir Hosting System install and upgrades, including OS env, main Aegir instance, but no platforms will be added there to keep it compatible with all existing and future installs, when you don't need any ready to use platforms and instead you are using the system for managing your own imported platforms/sites.

Octopus is an Aegir + Platforms installer (you can interactively choose the platforms you wish to install on the instance) and updater only. It allows to install new versions of platforms with clean directory structure, with code shared between all created instances, so one vanilla Octopus instance is using only ~18 MB, while most of the code, which is almost 400 MB total, is shared.

There is also Tuner script available (see BOND.sh.txt) for easy system tuning for development and switching it back easily to the standard production settings.

Full description has been posted in the project sandbox: http://drupal.org/sandbox/omega8cc/1072508

Comments

claar’s picture

Status: Needs review » Reviewed & tested by the community

+1 from me -- I see only good things coming from hosting this at d.o. The code doesn't appear to be in need of review, as it's a codebase that already has an alpha release. Marking as RBTC to get higher up's opinions.

rfay’s picture

Status: Reviewed & tested by the community » Needs review

@claar, the application process still needs to be done. The review process is outlined in http://drupal.org/node/539608. Will appreciate your review.

rfay’s picture

It seems to me that when applying for full project approval, one should submit a module or a theme. Am I wrong here?

rfay’s picture

Status: Needs review » Closed (won't fix)

Just to clarify, omega8cc,

1. We definitely want you to have full project access and value you as a contributor.
2. We definitely want Barracuda hosted as a full project on Drupal.org

but...

3. The idea of the "Full project" application is to review a module or a theme and see that it meets expectations for community code. That lets us deal with matters of security, style, and community acceptance.

so...

I'm going to mark this closed (won't fix) and ask you to submit a regular module or theme for review. Then once you get approved, you can promote your many contributions from sandbox to full project.
Sorry for the hassle.

-Randy

rfay’s picture

And if I'm off-base here somebody correct me.

zzolo’s picture

Status: Closed (won't fix) » Needs work

Note, this is a duplicate of #1054254: omega8cc [omega8cc], but we are continuing with this one and closing the other.

@rfay, there is good concern to not go forward with this application. But we may as well address this sort of issue now. Here's the two options I see.

1) @omega8cc continues with this specific project application, and someone that has expertise in this area does the review. Maybe someone from the Aegir team.
2) @omega8cc starts a new application with a more traditional module that can be reviewed by a larger audience.

@omega8cc, please let us know how you want to proceed.

@claar, thanks for the basic review. But we do need a full review either way. If the code is perfect, still comment how you have looked at it, some of the positive things, and possibly some ideas when taking it forward. The goal is for it to be clear on this issue that you, as a reviewer, have done a thorough job. Please refer to the following page and sub pages for reviewing: http://drupal.org/node/636570

omega8cc’s picture

Thank you for comments.

Projects like Drush and Aegir (and related to them Barracuda) still suffer from lack of "other" category on d.o, as you are forced to choose either module, or theme or install profile. This caused already some serious issues in the past, including Aegir project moving away from d.o due to existing (still partially) restrictions to its own GIT repository.

I don't plan (at least now) to develop any "standard" module or theme or install profile, even to conform existing structural restrictions and pass the initial test, because all of my work is in 100% on the Drupal-Drush-Aegir *meta* level and simply doesn't fit into any existing project category.

I'm also the long term Aegir contributor and supporter. I contributed Nginx support part in Aegir and I'm accepted as an Aegir project Nginx part co-maintainer.

I asked sdboyer on #Aegir IRC before d.o GIT migration if it will be OK to submit a project like Barracuda and he encouraged me to do it.

Also, many Barracuda users asked me many times about possibility to move the project home from GitHub to Drupal.org, so they could use excellent issue queue here instead of crappy GitHub issue queue, so while I have no problem in maintaining the project still on GitHub and Gitorious, it could benefit many Drupal/Barracuda users if we will be allowed to maintain the project on d.o.

I think I will ask Aegir devs to chime in to help review this application.

Thank you for your help.

claar’s picture

My goal was to get the ball rolling on this application -- it looks like I succeeded :) Thanks for the input, all.

I've read and thought about the review process in relation to this application, and I agree with zzolo's statement:

But we may as well address this sort of issue now.

Here's a small review of things I am able to review:

  1. Your Barracuda sandbox already has 141 commits. These commits have useful and concise commit messages, evidencing an experienced developer able to work with others. Consider adopting Drupal commit log best practices, and opening an issue related to each code change as you move forward, which fosters community participation and helps provide further context for changes.
  2. Your Barracuda sandbox contains a LICENSE.txt for GPL version 3. LICENSE.txt files are automatically added for you by the package handler, so this should be removed. and you must be willing to license your project under version 2 and later of the GPL to host your project at drupal.org. We hope this isn't a problem for you.
  3. We do not currently have code standards for bash scripts, so doing a code-style review is a bit subjective. However, there are some code consistency issues that should be addressed. For example, in Barracuda.sh.txt:
    • Most of the file is indented with two spaces, but tabs are used on lines 367-456, 831, 1259-1262 (in comment). Many other parts of the file from 853 to 1082 are indented with three spaces, and 391-397 use four spaces. The if statement on line 954 isn't indented at all. Drupal php uses two spaces as well, so I'd suggest standardizing on that.
    • Several sections of code seem like they'd benefit from a comment saying what that section does. For example, it isn't quickly clear to me what the section starting at line 2588 is for. Most sections are self-documenting, however

More later I hope! Thanks!

omega8cc’s picture

@claar Thanks for the review!

I hope to be able to use issue queue as described in #1.

Yes, I think it is not a problem to change the license to "GPL v2 or later". The file was included as GitHub doesn't do that for you.

As for code standards, I agree that using consistent indentation, removing (unintended) tabs, clearing trailing whitespaces etc. is an obvious requirement. Personally I use Drupal standards without even thinking about it, but many parts of the code were copied from my different older scripts and still require some spring cleaning.

And yes, I need to document it better also in the code, but some members of Barracuda community also are waiting for our migration to d.o to help with extended documentation.

Thanks again!

zzolo’s picture

Hey @omega8cc. So, it sounds like you want to continue with this.

Yes, it is kind of an issue that there are only a limited types of projects. This is a much bigger topic than this issue.

I still think we need to get someone that has a little more focused expertise in this area to do the review. This is not usually something we look for in this Full Project Application review, but I think this is appropriate for this specific issue.

@claar, what is your background or experience in this area?

claar’s picture

zzolo: While I have sufficient bash and programming knowledge to review such a project, I do not have sufficient time to devote to it due to its large size (11000+ lines of bash, 300+ lines of php, 250+ lines of make files, and these counts themselves are inaccurate due to the complexity of the project).

In fact, I suggest that this project is large enough that we should look to omega8cc's commit history on this project rather than looking at the whole project itself to determine whether to make her a vetted user.

This project is of the size that it needs a community of developers to improve it. It cannot and should not be (fully) polished in this project review process. But I do think it provides enough of an opportunity to evaluate omega8cc as a developer.

It would perhaps be reasonable and helpful to suggest polishing a file or two, such as BARRACUDA.sh.txt, to provide a review opportunity. I can help some with this, and I agree that it'd be nice to invite other Aegir developers to chime in.

But all of this is subjective and off-the-cuff -- our processes certainly don't embrace this sort of thing currently. But it's a reasonable extension, I think.

Omega8cc: Thanks for hanging in there while we figure all of this out. We very much value your contributions and want to make this as painless as possible while respecting (and adapting!) d.o. review processes.

greggles’s picture

My two cents: someone can submit any kind of project they want to get it reviewed. But this project is so ambitious and so hard to review (it requires configuring so many different things) that it may take forever to get someone to review it.

It could be quicker to submit one part of this (especially if it is a module or some drush code that the reviewers are familiar with) for review and once that part is approved you could create the full project. At that point you can add in all the other pieces assuming that you apply the same standards to those as was applied to the piece that got reviewed.

omega8cc’s picture

Status: Needs review » Needs work

I agree, after two months in the queue it looks it may take forever due to complexity of the project, so I will give up and submit one of my little features/module used in Barracuda/Octopus to extend Aegir front-end UI instead. I completely forgot I have this little thing, probably very easy to review.

omega8cc’s picture

Status: Needs work » Needs review

OK, I submitted this little feature here: http://drupal.org/sandbox/omega8cc/1140514

How should we proceed? Do I need to open another issue or can we continue here?

Thanks for your help.

rfay’s picture

Status: Needs work » Needs review

It's fine to continue here. Thanks for your patience.

claar’s picture

Title: Barracuda » Aegir Custom Settings

Awesome -- thanks, Grace.

I have a performed a code style review of your Aegir Custom Settings project and was unable to find any code-style issues. You follow Drupal indentation and commenting guidelines very well.

The only question/issue I have is that the .module file is empty except for

include_once('aegir_custom_settings.features.inc')

which implements several hooks, and the other .inc files in the project are not referenced anywhere. Why are these implementations not in the .module file, and what's with the extra .inc files? (I'm weak on features -- forgive me if this is standard and I'm missing something).

omega8cc’s picture

This is standard files structure for feature type module, as it is a "meta" module, which depends on the Features module.

rfay’s picture

Status: Needs review » Reviewed & tested by the community

OK, let's get this show on the road.

rfay’s picture

Status: Reviewed & tested by the community » Fixed

OK, Git vetted user role granted. Welcome, and thanks for your contributions (and your patience in this process).

Please review other applications so we can get this queue down.

omega8cc’s picture

Thank you!

I will help as much as I can.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.