DAST

Events happening in the community are now at Drupal community events on www.drupal.org.
allisterbeharry's picture

Writing to Apache conf files in DAST build scripts

Just a development snapshot before the 0.2 release - Download http://www.abeharry.info/stuff/DAST-0.2-dev.tar.gz

Unpackage anywhere like usr/share/DAST There is an httpd.conf in DAST/src/tests/etc/tasks/. Now run from DAST:

./bin/dast -f ./src/tests/etc/tasks/eApacheHttpdConfTaskTest.xml

The httpd.conf will be updated with new directives, sections, and embedded sections.

This snapshot has all dependencies bundled so don't download the dast-deps package. You must not place this snapshot in the same location as earlier releases

Read more
allisterbeharry's picture

Diving into Phing II

This is the second in a series of articles on Phing the fantastic PHP application build framework which DAST extends. Although DAST will come with quite a number of ready-made scripts, its real power lies in providing the foundation for Drupal developers, testers, admins and distro maintainers to quickly and easily create their own build scripts. A distro builder may choose to bundle their build script which painlessly downloads the required modules, sets up the user's database, and runs basic smoke tests to verify the Drupal web site on the user's web server is ready to use. DAST applies the concept of a software project build to creating Drupal sites and has a wide range of uses - See the upcoming article "10 cool Drupal things to do with DAST."

In Part I I looked at the basic structure of a Phing build file - projects, targets, and tasks. I posted a use case http://groups.drupal.org/node/4477 which is now implemented as the dast-patch build file for automating creating patch test-beds. In Part III we'll look at how this build file was implemented using the stuff we've covered before. First I'll wrap up this dive into basic Phing with a a description of properties and types which are present in every useful build file, mappers and filter chains which are used for file I/O, and the ever-important conditional execution and iteration. Remember Phing is a feature complete implementation of Ant - all concepts in Phing are identical to their Ant counterparts, so if you're familiar with writing Ant build files, using Phing will be easy like Sunday morning.

Read more
allisterbeharry's picture

DAST Week 8+9 update

Just a short update on what I'm working on right now
1. LAMP config - each build script derived from the base site-configure script can specify server config directives - I'm using the Pear::Config (http://pear.php.net/package/Config/) for writing and reading from the Apache conf, MySQL and PHP configuration files

Read more
allisterbeharry's picture

DAST Midterm update

With the midpoint of the summer passed, it's time to evaluate how things stand so far and then looking forward to what should be done next. The first three objectives I listed at the start have been accomplished.

  1. A command-line toolkit for automatically downloading specific versions of Drupal code and building the site-code tree; consisting of:
    1.1 A schema for describing a Drupal site deployment with the following information:
    a) CVS revision of core .inc and .php files
    b) CVS revisions of core module files
    c) Name and CVS revisions of contrib- modules
Read more
allisterbeharry's picture

DAST release avaiable on d.o

The first release of DAST is available on d.o: http://drupal.org/project/DAST. See the INSTALL.txt and README.txt - you'll need to download additional dependencies from http://www.abeharry.info/stuff/dast-deps.tar.gz or http://www.abeharry.info/stuff/dast-deps.zip A guide to using the dast-patch build file is available here: http://groups.drupal.org/node/5124 I'd appreciate feedback from anybody who wants to try it out - for what the project is trying to accomplish see here: http://groups.drupal.org/node/3913 .

Read more
allisterbeharry's picture

DAST Week 4 update

I've spent the past week coding the DAST patch tester - I really want to get this released with patch testing becoming a huge priority right now and new features like Chad's delete API only having a week left to be evaluated before the D6 code-freeze. I want to get this out today - I'll post another update later.

Read more
allisterbeharry's picture

DAST Week 3 update

This week I started coding on a Phing build file to implement the patch testing process I outlined in http://groups.drupal.org/node/4477 Right now I'm still punching out the code to get this working and I will commit it and release for testing by tomorrow. (June 20th)

Read more
allisterbeharry's picture

Testing patches - a DAST use case

So I volunteered to help test the MSSQL database driver for 5.x and 6.x-dev. Right now Souvent22 is trying to stabilize the install script. So the routine for everybody is:

while (mssql install path != stable) {
1. Checkout DRUPAL-5-1 HEAD
2. Apply mssql patch
3. Delete all the stuff in the test vdir and put in the fresh HEAD
4. drop everything in the SQL Server test database
5. Go to Drupal install page
}

Now after a few iterations this is going to become tedious. So this is what will eventually replace it:

Read more
allisterbeharry's picture

Diving into Phing I

Like I said on the the DAST wiki page http://groups.drupal.org/node/3913 DAST is an implementation of a automated build process for Drupal sites. "Build process" is not a term you hear normally associates with websites, but any dynamic web page needs software which renders the final markup and script which gets delivered in the user's browser. A site running on Drupal is a complex piece of software. Building a Drupal site is complex enough to require a tool to automate the process, especially if you're a developer or tester. One important advantages of having a tool to automate the build process, in addition to lessening the toil of overworked Drupalites, is that it is a repeatable process - you can't forget to do something when building a site which leaves you cursing 1.5 hours later when you finally figure out what you forgot to do. DAST will build a Drupal site exactly the same way every time.

The process of creating a Drupal site can be viewed as a pipeline where code assets and configuration move through different stages until the final build output is successfully produced. The software which provides the framework for constructing this pipeline is Phing (PHng Is Not Gnu make) http://www.phing.info

Read more
Subscribe with RSS Syndicate content