Posted by steve.colson on July 22, 2009 at 3:41pm
Event type:
User group meeting
It is rapidly approaching the last Monday in July--scary, huh? You know what this means!
On Monday the 27th, at 7pm, we will be having our monthly Drupal meetup at Spark Central in Ann Arbor. While no hard topic is set yet, feel free to come with your ideas or post them as a comment to this thread. For starter ideas, feel free to check out the list of possible topics (http://groups.drupal.org/node/19315) and pick an interesting one.
See you all on Monday!
EDIT:
Drush it is—Mike was kind enough to confirm someone to present on Drush that has a lot of Drupal experience but hasn't been to the group yet. I'll see you all there!

Comments
Thanks for the heads up! I
Thanks for the heads up!
I marked Organic Groups as covered, since we talked about it last month (along with Panels; great discussion, btw). I also added Using multiple databases at the end in case anyone is knowledgeable in this area and wants to share.
I would be interested in discussing version control stuff. Mainly what the pros and cons are for using CVS for checking out modules as opposed to downloading them from their project pages. Also, anyone here uses Drush?
Drush rocks!! Monan can show you.
Once you have the Drupal basics down and realize how much sense CVS checkouts makes your next step is to devour Drush. If you are at the point where you are interested in Drush then you are wasting your time by not learning it. It will immediately save you time and send you down a wonderful path of automation and scripting.
Installing Drush from command line:
1. cd ~
2. cvs -z6 -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal-contrib checkout -r HEAD -d drush contributions/modules/drush
3. alias drush='~/drush/drush.php'
Downloading and enabling 18 modules in under one minute from command line:
1. cd /path/to/drupal
2. drush dl cck views devel imageapi imagecache imagefield filefield cvs_deploy nodewords path_redirect globalredirect google_analytics pathauto print quicktabs stringoverrides token xmlsitemap
3. drush enable cck views devel imageapi imagecache imagefield filefield cvs_deploy nodewords path_redirect globalredirect google_analytics pathauto print quicktabs stringoverrides token xmlsitemap
That is where it begins but not where it ends!!!
Drush help:
michael-hofmockels-macbook-pro-2:cba mhofmockel$ drush
Execute a drush command. Run
drush help [command]to view command-specific help.Examples:
drush dl cck zen Download CCK module and Zen theme.
drush --uri=http://example.com status Show status command for the
example.com multi-site.
drush help --pipe A space delimited list of commands
Options:
-r <path>, --root=<path> Drupal root directory to use
(default: current directory)
-l <uri> , --uri=<uri> URI of the drupal site to use (only
needed in multisite environments)
-v, --verbose Display extra information about the
command.
-d, --debug Display even more information,
including internal messages.
-q, --quiet Hide all output
-y, --yes Assume 'yes' as answer to all
prompts
-s, --simulate Simulate all relevant actions (don't
actually change the system)
-i, --include A list of paths to search for drush
commands
-c, --config Specify a config file to use. See
example.drushrc.php
-u, --user Specify a user to login with. May be
a name or a number.
-b, --backend Hide all output and return
structured data (internal use only).
-p, --pipe Emit a compact representation of the
command for scripting.
Commands:
help Print this help message. Use --filter to limit command
list to one command file (e.g. --filter=pm)
cron Run all cron hooks.
updatedb Execute the update.php process from the command line
status Provides a birds-eye view of the current Drupal
installation, if any.
script Run php script(s).
cache clear Clear all caches.
watchdog show Shows recent watchdog log messages. Optionally filter
for a specific type.
watchdog delete Delete all messages or only those of a specified type.
sync Rsync the Drupal tree to/from another server using ssh.
eval Evaluate arbitrary php code after bootstrapping Drupal.
enable Enable one or more modules.
disable Disable one or more modules.
uninstall Uninstall one or more modules.
statusmodules Show module enabled/disabled status
refresh Refresh update status information
updatecode Update your project code
update Update your project code and apply any database updates
required (update.php)
info Release information for a project
dl Download core Drupal and projects like CCK, Zen, etc.
test mail Run all tests and mail the results to your team.
test clean Delete leftover tables and files from prior test runs.
sql conf Print database connection details.
sql connect A string for connecting to the DB.
sql dump Exports the Drupal DB as SQL using mysqldump.
sql query Execute a query against the site database.
sql load Copy source database to target database.
sql cli Open a SQL command-line interface using Drupalâs
credentials.
generate users Creates users.
generate taxonomy Creates taxonomy.
generate content Creates content.
features List all the available features for your site.
features export Export a feature from your site into a module.
features update Update a feature module on your site.
features revert Revert a feature module on your site.
OK, I'm done.
Regards,
Michael Hofmockel
iMed Studios
Open Source || Open Access || Open Mind
Regards,
Michael Hofmockel
Open Source || Open Access || Open Mind
Hello
I'll be doing the presentation. I'm planning to talk about intallation, configuration, commands overview and package management with CVS and SVN. Of course ongoing QA will drive the presentation.
See you all tomorrow.
No more update.php!
One of the things I just recently discovered and confirmed is that "drush enable ..." also takes the trouble to run update.php for you, so you don't have to wait for all those stupid screens to reload (and don't need to bother to run "drush updatedb" from the command line, either, although it's not a bad idea once in a while when things are going bump!). Too bad I didn't start using this earlier. It also has features that completely replace my little Mysql.pl script that I relied on for so long.
Multiple Databases?
You mean like: http://switchbackcms.com/blog/refresh-part-deux-or-synchronizing-databas... ?
I'd rather talk about that...
I'll talk about Drush if you really want, but I need to get more up to speed... Things have been pretty severe since Camp!
What would people rather discuss?
Thanks!
Mike Monan
Switchback
Thanks for that post on
Thanks for that post on switchback, Mike, I just bookmarked it... Now the problem remains figuring out how am I going to split the keyspace in a live website that already has thousands of nodes.
The way I'm doing it, and it kinda works for me now, is by having the live website start the node id count at 100000, so that any changes, increments, and node creations I do on development can be happily incremented in their own sub-100000 world. And unless I hit the 100000 node mark on the development server, I'm covered. I doubt it'll ever happen in some of the websites I'm doing, but I'll give the even/odd technique a try and see how I like it.
Sounds good...
Sorry about the (very) slow response... But this sounds like a doable plan for sites that are in production already. Only issue would be if you were to run up against that level.
Splitting the keyspace for new sites is easy conceptually, but for existing sites, I think you need to determine if you think the site will last a very long time and either start at a certain ID# level and start splitting from there, or just do like what you're talking about doing (if you don't think that it will last forever). Basic engineering trade-offs, I guess!
Good luck!