Lesson Proposal: How to create a local test environment - June 17

You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!
add1sun's picture
public
add1sun - Sun, 2007-05-20 14:53

Note: this lesson has been postponed due to technical problems - it is now scheduled for June 17!

OK, this has been asked for a bunch of times and is a really important step for doing development work. With code freeze approaching we would also like to get as many people helping with patch testing as possible as well. To do that you need a test site. But wait, people have different OS! What will you teach? We will cover each OS - Mac, Linux and Windows with a break between each.

Here is "the plan" - please edit or add comments

Mac Instructor: add1sun
Linux Instructor: samtresler
Windows Instructor: flk

The lesson will cover the basics of installing an AMP (Apache, MySQL, PHP) stack on your local machine. We will then go on to show installing and using a CVS client to checkout the latest Drupal. There will also be general discussion on:

  • how to organize your test environment
  • some of the tools that different devs use for various tasks
    -- devel module and using generate to give you test content

  • Linux:

    • useful shell scripts (e.g. http://acko.net/blog/handy-drupal-core-development )
    • mentioning the important IDEs/Editors: vim, quanta, kate (at least that's what I use)
    • maybe a quick benchmarking intro (note by add1sun: i think this might be too much to fit in with everything else and maybe it is better in the applying and testing patches class)

Some handy reference type links:
http://drewish.com/node/68
http://www.geologyrocks.co.uk/node/1032
http://www.blkmtn.org/node/309


Great Idea! Looking forward

alanburke@drupal.org - Mon, 2007-05-21 09:54

Great Idea!
Looking forward to the screencast(s) [can't make the live shows]

How about showing how to use Eclipse for checking out/testing/patching, making patches etc.
It's cross-platform [and open-source], so would cover all 3 environments.

Thanks
Alan

Eclipse sounds great.

MikeyLikesIt's picture
MikeyLikesIt - Tue, 2007-05-22 21:31

I've heard a lot of talk about Eclipse, people at OSCMS recommending it to me as a solution and such. I'd love a lesson on how to set it up and use it with drupal.


I've Previously Posted

mpare's picture
mpare - Tue, 2007-05-22 21:42

I've previously posted on using Eclipse IDE. http://groups.drupal.org/node/2663 Since then I have used Eclipse and have also quit using Eclipse. Though Eclipse can be a valuable resource be prepared, it comes with mammoth bloat. I hear Zend Studio is an interesting application, http://www.zend.com/. I have now reverted back to using textmate, text wragler, firefox/firebug, though those are not the same thing at all as an IDE haha. I guess an IDE is right for certain situations and not for others and in the end left to personal preference. I think the big thing that these apps have going for them is php debugging which is essential for complex applications or possibly for attacking some of drupal's inc files. I would be interested still in seeing a full workflow for one of the popular IDE's but I think a perfect solution is still left to the dream world.

Peace,

Matthew Pare

Pare Technologies
info at paretech dot com
www.paretech.com

Did you figure out how to do something? Document it on Drupal.org!


Eclipse PHP Development Tool

Fatweasel's picture
Fatweasel - Tue, 2007-05-22 21:54

Right now Eclipse has a PHP Development Tool (plug-in). Not a drupal plug-in. Zend will eventually sell their IDE as an Eclipse plug-in.

I'm new to drupal but from what I've seen so far is that Drupal is not about Php as much as it is knowing the drupal API.

The great advantage of Eclipse is the the drupalers could develop a drupal plug-in that extends Zend or PHPeclipse ... maybe this should be a drupal project? The EclipseDrupal plug-in?


Basic Apache Configuration

flobruit's picture
flobruit - Tue, 2007-05-22 18:16

I'm aware that learning how to configure an apache server is far beyond what is doable, it would be nice to have a quick overview of the best way to do some of the modifications required by some modules.

I'm thinking specifically of enabling mod-rewrite for clean URL's; I was able to get it working with the handbook pages (on a default apache configuration from ubuntu), but it was a confusing process and I'm not sure that my resulting configuration was really optimal.


enabling mod-rewrite for clean URL's

Fatweasel's picture
Fatweasel - Tue, 2007-05-29 02:05

> enabling mod-rewrite for clean URL's

Would be a nice mini-lesson.


Hmm I will like to know about

dipen's picture
dipen - Wed, 2007-05-23 01:24

This lesson is about setting up testbed drupal installation for development, So I guess I will like to know about :

  1. How To apply a patch ?
  2. Any developer module I need to know about ? I read about devel module in victore kane's class notes (Lesson #1) on form API and I liked it .. Maybe You can tell us how to use it in detail ? Or maybe the lesson isnt about it!! I Understand !!
  3. Any way to have api documentation offline ? We all know about woderful http://api.drupal.org but is there anyway that can be accessed offline or as part of a module in drupal ?
  4. Obviously, which IDE to use ? I use JEdit and it cant be called a IDE in fact but thats that !!

In short as being new to drupal, I will like to know tips, tricks and tools which help me to learn fast without wasting time in managing cvs or lookin for function definition...

thanks ..
Dipen Chaudhary


Yup, we will cover applying

add1sun's picture
add1sun - Thu, 2007-05-24 00:54

Yup, we will cover applying and testing patches the following week once everyone gets a chance to set up a test env. I added devel to the list since that is a must for sure.

Yes, you can get a local API by using the API module. We'll see about the API but I think that is too much for this lesson. i don't want to throw too many things in and overwhelm people.

I'll respond re: IDEs in a new comment since many folks are asking about this one.


IDE thingy was more of a personal question

dipen's picture
dipen - Thu, 2007-05-24 05:48

hi,
I think there is no need to devote any substancial amount of time to IDE and please no not in depth, All i was expecting was names of IDE and which one is preffered by community that's it and if there is any drupal plugin to any available IDE like eclipse. It will take 3-5 min of class time.
But I think that can be resolved in poll or new post as I mentioned in that new post of urs!

thanks
Dipen Chaudhary


I wrote up (mainly note

geologyrocks@drupal.org's picture
geologyrocks@dr... - Wed, 2007-05-23 16:00

I wrote up (mainly note form) how I set up my work environment for developing drupal sites. This might be useful to people here. You can find the blog post here:
http://www.geologyrocks.co.uk/node/1032

This is still work in progress (and I'm still figureing out some issues), but works pretty well so far.


http://www.geologyrocks.co.uk


What I need to learn - Windows

magdelaine@drupal.org's picture
magdelaine@drup... - Fri, 2007-05-25 15:05

OK, I'm not sure exactly what the scope is here of what you have in mind for this class, but here is what I have been wrangling with in setting up a Windows test environment:

  • I work on multiple computers; primarily a laptop and a desktop. I have talked to webchick about setting up SVN to do version control in general but I'm wondering; do people use SVN and CVS? How does this work and what is the best way to organize it on multiple machines?
  • How closely matched do your production environments/development environments need to be? (Often productions environments exist on different shared hosting; each with its own versions of PHP, MySQL, Apache, etc.) If you had to choose one element of those three to match as closely as possible, which would it be? The reason I ask this is because I rely on pre-configured packages due to ease of installation. I found I could install Apache, PHP, and MySQL individually just fine, but I had to revert to using a "package installer" like Xampp because I could not, for the life of me, get phpMyAdmin installed correctly (and sorry, I don't know enough to use command-line MySQL yet).I could use either some advice on which package to choose or instruction on setting up phpMyAdmin.

If the above is relevant I will can add it to the wiki; but I'm sorry to say that though this lesson is exactly what I need, I have a prior engagement that day that will take me out of town and I won't be able to participate. :(


I've been there.

mlsamuelson's picture
mlsamuelson - Fri, 2007-06-01 18:50

I wish I could volunteer to teach, but I'm maxed out at the moment and Sundays don't work for me..

However I can share my own resolutions for the issues you've touched on, and hopefully I'm not hijacking the thread and instead am providing info that can help with the Windows session.

SVN and CVS - not really a Windows topic, but you can use the two together. Generally it would work like this: you'd use CVS for all the interfacing with the Drupal repository, and then SVN for your own local control. So let's say you've got a project developing a site in Drupal. You get Drupal via CVS, and then you do you custom work on a theme and maybe a custom module or two. Then, you can use SVN locally (and yes, it's a snap to install on Windows and use on Windows if you have Apache installed) to do version control on either your whole project or just your custom modules and themes. See, using SVN this way, you avoid the conflict you'd have if you were trying to do CVS version control on Drupal since it already has CVS metadata associated with it.

Matching production and development environments - of course you want them as close as possible, but if you have to pick one aspect of the WAMP stack to "sync," I'd say pick PHP. PHP on Windows can be a bit buggy depending on your version (I'm a fan of 4.4.2, but haven't tried any of the PHP 5.2.x flavors yet) so testing with matching versions is desirable.

You mentioned issues with getting PHPmyAdmin to work. On Windows, I use SQLyog Community Edition (the open source edition). It's a desktop GUI program for connecting to and managing multiple MySQL servers and works great in place of PHPmyAdmin.

Where is the wiki you mentioned adding this info to? Perhaps I'm being dense, but I don't find any links to it... I'd be happy to add my thoughts to a wiki on this subject, as I've spent a fair amount of time finding workarounds related to WAMP environments.

michael


Status of this lesson

ghankstef - Thu, 2007-06-28 14:53

Did this lesson happen - and did i get recorded?

No, it didn't happen

add1sun's picture
add1sun - Thu, 2007-06-28 15:46

There were too many technical problems which I dare say still need to be resolved before this week's lesson. Basically Skypecast is not working for Mac users , especially for hosting them, so the dojo needs to come upi with another audio solution.

I am going to try to just make videos of what we were going to cover (on all three OS) next week. As soon as I have anything useful I will post back here.