This is way not something we need to worry about now, but chx brought this up in the meta issue, and I'm a big stickler for documentation. ;)

From grepping through, it looks like there are a quite a few places where the testbot code makes hard-coded assumptions about cvs. Should be pretty trivial to update them, though. Tagging as Novice. :)

The two modules to keep an eye on are http://drupal.org/project/project_issue_file_test (server, runs on qa.drupal.org and manages the queue of patches) and http://drupal.org/project/project_issue_file_review (client, runs on drupal.org and pushes results to the issue queue).

CommentFileSizeAuthor
#8 git-post-commit.txt738 bytesdeekayen

Comments

marvil07’s picture

subscribing

sdboyer’s picture

Title: Update testbot to Git » Update testbot to Git (phase 2)
Component: GIT » Git
Status: Postponed » Active
Issue tags: +git phase 2

Adding tag and un-postponing. This must happen before we can make the switch. This is probably a Novice issue for phase 2, but phase 3 will be a lot more complicated.

chx’s picture

while changing the cvs command strings to git clone is indeed a novice task , testing this is .... not exactly novice :D

sdboyer’s picture

Title: Update testbot to Git (phase 2) » Update testbot to Git
Project: Drupal.org infrastructure » Project Issue File Review
Version: » 6.x-2.x-dev
Component: Git » Code
Priority: Normal » Critical

Sorta a meta-issue for making sure PIFR is ready for migration day.

boombatower’s picture

Status: Active » Closed (works as designed)

Two things. PIFT runs on d.o, PIFR runs on qa.d.o and workers.

PIFR already works fine on cvs, svn, bzr, and git (respective example projects: d.o, business, examiner, just in testing). I think I need to tweak the git backend for something I found recently, but shouldn't be anything hardcoded. Only stuff that assumes CVS is on d.o since project does and it has to use what project uses, but that doesn't involve hard coded cvs strings since it just reads out of cvs module stuff. That should be related to any ports of using versioncontrol api with project nothing new.

boombatower’s picture

Status: Closed (works as designed) » Active

Well I'll leave open until I look at that git thing I mentioned, but minor.

sdboyer’s picture

OK good, I don't understand how the whole PIF... stack works. Sorry, we were just reorganizing the whole queue today :)

deekayen’s picture

StatusFileSize
new738 bytes

Just dumping this off since I worked on it a bit. It's a git version of the integration script for project_issue_file_review/util/vcs. I haven't even tried it yet, but it follows the same format as the svn-post-commit script. Note, the git post-commit.sample file uses #!/bin/sh instead of #!/usr/bin/php -q as this attached script does.

boombatower’s picture

Assigned: Unassigned » boombatower
Status: Active » Fixed

Forgot about this issue...oh well I committed the fix.


Index: client/review/vcs/git.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/project_issue_file_review/client/review/vcs/git.inc,v
retrieving revision 1.4
diff -u -p -r1.4 git.inc
--- client/review/vcs/git.inc	7 Apr 2010 02:38:28 -0000	1.4
+++ client/review/vcs/git.inc	16 Nov 2010 20:18:42 -0000
@@ -14,9 +14,10 @@
 class pifr_client_vcs_git extends pifr_client_vcs {
 
   public function checkout($directory, $url, $branch) {
-    $url = escapeshellarg("$url/$branch.git");
+    $url = escapeshellarg($url);
+    $branch = escapeshellarg($branch);
     $directory = escapeshellarg($directory);
-    return pifr_client_review::exec("git clone $url $directory");
+    return pifr_client_review::exec("git clone -b $branch $url $directory");
   }
 
   public function annotate($file) {

Status: Fixed » Closed (fixed)
Issue tags: -Novice, -git phase 2

Automatically closed -- issue fixed for 2 weeks with no activity.