0

I created a Drupal 7 site on my localhost. I installed some modules, created some content types and fields, changed some preferences, etc. and also entered some real test data. (I want this data to be preserved when I will copy the site to the production server.)

When the first alpha release will be ready I am going to copy the site to a production server in Internet.

I like the idea to make the software behind my site open source. This way I could be able to receive patches from other developers. (And also the possibility exists that somebody may use my engine for his other site.)

How to manage development of my site?

If it would be a framework, I would be able to do it with SVN or Git for all files + database change scripts. But Drupal also has an admin interface, which I don't know how to put under version control.

Also, how to release an open source package? I need include there some database creation script. Should I just export my DB? (only structure no data?) and put some SQL script into my .tar.gz?

Detailed description of deployment of an open source package for Drupal would be welcome.

Also: Could anyone explain how to use "Features" package in this situation?

1

To migrate your database (including the configuration of the admin interface) from the staging to production server, check out the Backup and Migrate module.

RE: your question about "Open source":

Unless your configuration is something really special, with a specific target audience and use case, it may not be worth your while making your configuration, etc. available for others, but YMMV.

If you want to do this, you should create a Drupal Distribution and release it on Drupal.org/project/distributions along with the 600 or so distributions already available there. Like all other Drupal projects, you use git to interact with the repository, and you also need to be a git-vetted user if you want to create a non-sandbox distribution.

You build a distribution by first exporting its features (including custom cck, templates and Views using the Features module. Then turn this into a distribution using the Profiler library to create an install profile. Finally, you package the distribution with the Drush Make packager (part of Drush).

0

I like the idea to make the software behind my site open source. This way I could be able to receive patches from other developers. (And also the possibility exists that somebody may use my engine for his other site.)

You can simply create some modules that implement the functionalities present in your site, and make the code available in a git repository. That is what is done for the custom code necessary to run Drupal.org, which is part of the Drupal.org customizations project hosted on Drupal.org. If those modules can be helpful for other users, you can host them on Drupal.org; otherwise, any git that is publicly accessible is fine too.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.