I too have added a

  git submodule init;git submodule update

to my build scripts -but I'm not calling a rake task directly and I'm using the git-enabled branch of CC.rb from Ben Burkert instead of the Thoughtworks one.

Seems like git submodules need some love in both cases. I would hope that the submodules would be init/updated as part of the scm updating process...

-Chris


On 3 Sep 2008, at 9:11, Matt Wynne wrote:

On 3 Sep 2008, at 12:11, Jay Levitt wrote:

I'm new to both CCrb and git. I pulled down the latest from the master thoughtworks repository on github, and after a few quick tweaks, I had a CCrb instance and running on mod_passenger. I added a project, a few more tweaks, it built. So far, so good!

Here, though, are the things I'm not clear on...

1. When I set up my new project, I added it as

./cruise add projectname --repository [EMAIL PROTECTED]:projectname.git -- source-control git

Where do these parameters get stored? I don't see any external managment of them. They go into the Project model, but there's no database.yml, so from there, I'm lost Are they a side effect of CRUISE_DATA_ROOT/projects having a subfolder named for each project?

Exactly. If you look at the code in app/model/Project, it just looks at the sub-folders of CRUISE_DATA_ROOT/projects and tries to load a project from each one. Cruise is basically using the file-system as its database, which is actually pretty neat - you can delete old build, for example, just by deleting the build-* folder in your project's folder.


2. To get my project to build the first time, I had to manually do a "git submodule init;git submodule update"in the project's work directory, to pull down the plugins from the master. Is this something that CCrb should be doing? I'd imagine it could need redoing over time, as the upstream versions change, but I'm not sure what part of the process should be doing that.

We just started using sub-modules yesterday, and I just added a rake task to the :cruise task that does a system call to git submodule init/update on every build, just in case. I'm not sure if that's the most appropriate approach, but it's what we're doing for now.


3. Now that it's built... it built once, said it was happy, and that's it. I can do a manual build via the web interface, and it works, but it doesn't pull any new code down from the master (which is on the same server, as username git). The automatic build, which is supposed to poll every 20 seconds for updates, doesn't seem to have done anything; here again, I'm hampered by not knowing what to look for. The logs don't contain the string "git" at all. Where is that pull supposed to occur?

Sorry, can't help you with this one - ours works fine. I guess you need to check that the builder processes are running under an account with sufficient permission on your git repo folders. How exactly did you reference the repository? If you're on the same machine you can use file paths which might make things simpler:

e.g. ./cruise add projectname --repository /home/git/projectname -- source-control git

Thanks for any pointers..

Jay Levitt

_______________________________________________
Cruisecontrolrb-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/cruisecontrolrb-users


HTH

cheers,
Matt
----
http://blog.mattwynne.net
http://songkick.com

In case you wondered: The opinions expressed in this email are my own and do not necessarily reflect the views of any former, current or future employers of mine.

_______________________________________________
Cruisecontrolrb-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/cruisecontrolrb-users


Chris Hapgood
[EMAIL PROTECTED]




_______________________________________________
Cruisecontrolrb-users mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/cruisecontrolrb-users

Reply via email to