Download the PHP package promet/drupal7-framework without Composer

On this page you can find all versions of the php package promet/drupal7-framework. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package drupal7-framework

Promet Drupal 7 Framework

This is an example of a starting point for developing the "Promet Way".

You can most easily start your Drupal project with this baseline by using Composer:

Running this command will download the latest release of this project to a new directory called your_project_name and invoke composer install inside it, which will trigger additional scripts to create a working Drupal root in the www subdirectory from the packages downloaded with composer.

We reference a custom composer repository in composer.json here. This repository was created by traversing the list of known projects on drupal.org using drupal/parse-composer, and has the package metadata for all the valid packages with a Drupal 7 release, including Drupal itself.

We use drupal/tangler to create the Drupal root by reacting to the install and update events, and a custom installer provided by drupal/drupal-library-installer-plugin to handle placing ckeditor in the libraries directory of the resulting Drupal application. Also, we render a settings.php file from cnf/config.yml using winmillwill/settings_compile, which assures us that an operator without php familiarity but with knowledge of the different tunables in settings.php will be able to update different deployments of the application without needing to kludge anything.

As you add modules to your project, just update composer.json and run composer update. You will also need to pin some versions down as you run across point releases that break other functionality. If you are fastidious with this practice, you will never accidentally install the wrong version of a module if a point release should happen between your testing, and client sign off, and actually deploying changes to production. If you are judicious with your constraints, you will be able to update your contrib without trying to remember known untenable versions and work arounds -- you will just run composer update and be done.

This strategy may sound a lot like drush make, but it's actually what you would get if you took the good ideas that lead to drush make, and then discarded everything else about it, and then discarded those good ideas for better ideas, and then added more good ideas.

See:

Project Customization

You may want to customize a couple of things about your box first. The scripts are built to take most of the work out of configuration. There are pretty much two things you may want to do:

Change the Project Name

By editing the project variable, you can give your project a custom name. Note that this will affect several other configurations in the build as well, including what the base module will be called and what folder the site will live in.

Change the VM IP

You can edit the IP variable if you want to run more than one VM at a time.

Getting Started Developing

Vagrant provision currently does a full site install.

To update without rebuilding, run build/update.sh from the project root in the vagrant box.

It is also worth noting, if you are working on an existing site, that the default install script allows you to provide a reference database in order to start your development. Simply add a sql file to either of the following:

Use

IMPORTANT

This project uses the drop_ship module to handle the reusable part of deployment, so everything will get disabled if you don't define dependencies. The DROPSHIP_SEEDS environment variable (see directly below) should consist of only the top level project module and environment specific modules.

DROPSHIP_SEEDS=drupalproject:devel

Easy Development with Vagrant

We have a Vagrantfile that references a Debian 7 box with php 5.4 and apache2 and mysql. Once you have installed Vagrant, you can begin development like so:

The Build and Deployment Scripts

You may have noticed that provisioning the Vagrant box causes build/install.sh to be invoked, and that this causes all of our modules to be enabled, giving us a starting schema.

You should note that build/install.sh really just installs Drupal and then passes off to build/update.sh, which is the reusable and non-destructive script for applying updates in code to a Drupal site with existing content. This is the tool you can use when testing to see if your changes have been persisted in such a way that your collaborators can use them:

You should see a lot of errors if, for example, you failed to provide an update hook for deleting a field whose fundamental config you are changing. Or, perhaps you've done the right thing and clicked through the things that should be working now and you see that it is not working as expected. This is a great time to fix these issues, because you know what you meant to do and your collaborators don't!

The actual application of updates, including managing the enabled modules, firing their update hooks, disabling things that should not be enabled and reverting features is handled by drupal/drop_ship, which uses (a fork of) kw_manifests for providing an extensible set of deployment tasks that have dependencies on one another.

Because manifests can't receive commandline arguments, we pass information to them with Environment Variables and we provide an env.dist from which to create a .env file that our scripts will then source. This allows an operator with access to the target environment to update these tunables out of channel so that you can deploy any arbitrary revision to any environment.

Particularly, the list of modules used to generate the dependency graph of all the things we should enable resides in the DROPSHIP_SEEDS environment variable. You may notice that it's a list of one and that it's a poorly named do-nothing module with nothing besides dependencies. In real life, you would name this module something relevant to your project and it would be responsible for over-arching functionality or the application, like providing the minimal set of modules to generate the dependencies of everything that must be enabled for the application to work properly. You can think of this like an install profile that doesn't suck, because it's not a singleton, so with care, you can embed your whole project in another project that uses this workflow.

See:

Testing Locally

All the testing that happens in an automated way can be done the same way on your virtual machine. Simply run this command from your the project folder and it will do coding standard testing:

./build/drupalcs.sh

Or run this command that will do behat testing:

./build/runtests.sh

TODO


All versions of drupal7-framework with dependencies

PHP Build Version
Package Version
Requires ckeditor/ckeditor Version dev-full/stable
composer/composer Version ~1.0@alpha
drupal/drupal Version 7.*
drupal/tangler Version ~0.1.9
drupal/admin_menu Version 7.*
drupal/ckeditor Version 7.*
drupal/context Version 7.*
drupal/ctools Version 7.*
drupal/drop_ship Version 1.*
drupal/drupal-library-installer-plugin Version ~0.1
drupal/date Version 7.*
drupal/diff Version 7.*
drupal/entity Version 7.*
drupal/entityform Version 7.*
drupal/features Version 7.2.*
drupal/feeds Version 7.*
drupal/job_scheduler Version 7.*
drupal/kw_manifests Version 1.*
drupal/module_filter Version 7.*
drupal/omega Version 7.4.*
drupal/panels Version 7.*
drupal/registry_rebuild Version 7.*
drupal/rules Version 7.*
drupal/strongarm Version 7.*
drupal/views Version 7.*
drush/drush Version 6.*
winmillwill/settings_compile Version ~2.1.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package promet/drupal7-framework contains the following files

Loading the files please wait ....