2

I'm trying to check out the Mylyn project from Eclipse. However, I can't use Eclipse to check out the projects and am having to do it via the command line. I'm behind a firewall so am basing my attempt on http://wiki.eclipse.org/CVS_Howto#CVS_and_firewalls.

I'm not very familiar with CVS.

When I run my CVS command, it fails to connect:

cvs -td :pserver:anonymous@proxy.eclipse.org:443/cvsroot/tools checkout mylyn
  -> main: Session ID is w4PO5KiMwQmaD6uu
  -> main loop with CVSROOT=/cvsroot/tools
  -> safe_location( where=(null) )
  -> open_connection_to_server (:pserver:anonymous@proxy.eclipse.org:443/cvsroot/tools)
  -> Connecting to proxy.eclipse.org(206.191.52.48):443.
cvs [checkout aborted]: unrecognized auth response from proxy.eclipse.org: SSH-1.99-OpenSSH_4.2

Can anyone tell me what I'm doing wrong?

Zoe
  • 27,060
  • 21
  • 118
  • 148
Jeff James
  • 21
  • 1
  • 2
  • port 443 can also be blocked when being behind firewall. Did you try through the port 80? – VonC Apr 08 '10 at 16:20
  • Actually, for port 80, try `cvs -td :pserver:anonymous@dev.eclipse.org/cvsroot/tools checkout mylyn` (note the `dev.eclipse.org` instead of *`proxy`*`.eclipse.org`) – VonC Apr 08 '10 at 16:26
  • cvs -td :pserver:anonymous@dev.eclipse.org:80/cvsroot/tools checkout mylyn -> main: Session ID is t7i0pe2Bb4jZ49uu -> main loop with CVSROOT=/cvsroot/tools -> safe_location( where=(null) ) -> open_connection_to_server (:pserver:anonymous@dev.eclipse.org:80/cvsroot/tools) -> Connecting to dev.eclipse.org(206.191.52.50):80. cvs [checkout aborted]: unrecognized auth response from dev.eclipse.org: HTTP/1.1 400 Bad Request ( The data is invalid. ) I get the same using proxy.eclipse.org. Without the :80, it hangs trying to connect to port 2401 (blocked) – Jeff James Apr 08 '10 at 17:21
  • @Jeff the thing is: I don't see "mylyn" in http://dev.eclipse.org/viewcvs/index.cgi/. Still, try with proxy.eclipse.org:80 instead of dev.eclipse.org (see http://www.eclipse.org/forums/index.php?t=msg&th=71411&start=0&S=c4517f315683fe680107145385956cae at the bottom of that page) – VonC Apr 08 '10 at 17:36
  • sorry about formatting - how do I add multi line code formatting? `backquote` doesn't work over multiple lines. – Jeff James Apr 08 '10 at 17:37
  • See also http://wiki.eclipse.org/Mylyn_Contributor_Reference#Checkout: I don't know yet how to checkout with CVS in command line a psf file directives... – VonC Apr 08 '10 at 17:41
  • Also try to replace `mylyn` by `org.eclipse.mylyn`, just in case. (http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.mylyn/?root=Tools_Project) – VonC Apr 08 '10 at 17:44
  • The URL to view the code is http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.mylyn/?root=Tools_Project – Jeff James Apr 08 '10 at 17:46
  • 'org.eclipse.mylyn' doesn't work either - same error. :o( I looked at the contributor page. I think psf files are an Eclipse only thing, and I can't use Eclipse to do the checkout. :o( – Jeff James Apr 08 '10 at 17:50
  • @Jeff: and with `proxy.eclipse.org:80`? – VonC Apr 08 '10 at 17:54
  • Still the same issue as before - 'cvs [checkout aborted]: unrecognized auth response from proxy.eclipse.org: HTTP/1.1 400 Bad Request ( The data is invalid. )' – Jeff James Apr 08 '10 at 18:01
  • @Jeff: darn... psf it is. Let's dig in. – VonC Apr 08 '10 at 18:05
  • @Jeff: http://wiki.eclipse.org/PSF: Project Set Files: this should be simple directives with the right CVS addresses: https://bugs.eclipse.org/bugs/show_bug.cgi?id=265847 could have come in handy... Could you test that script and the resulting generated ant script which should checkout every CVS repo mentioned in a psf file? – VonC Apr 08 '10 at 18:16
  • @VonC: Thanks foryour help - I'll have to look at this on Monday now. – Jeff James Apr 08 '10 at 18:40
  • @Jeff: all right, I have written an answer summarizing what we have found out so far. – VonC Apr 08 '10 at 19:44

2 Answers2

1

Getting Mylyn is actually tricky:

  1. there are a lot of Mylyn modules and sub-modules: see here for the full list
  2. as mentioned in this thread, proxy.eclipse.org:80 should work (not dev.eclipse.org)
  3. but 'mylyn' does not exist when you look at the main CVS/SVN eclipse repos

The only official way to get the code is through Eclipse, loading a PSF (Project Set File)

See Mylyn contributor page:

Checkout

The Mylyn CVS repository contains the following branches.
Each can be checked via saving the linked .psf file locally, and then using File -> Import -> Team Project Set.
Use username "anonymous" and an empty password.
If you are only interested in parts of Mylyn, the additional projects can be deleted after the import.
After the checkout you should have no errors or warnings from the Mylyn projects.

Note: these project sets specify anonymous pserver access

Direct links:

Now, the only way to manually checkout those projects is through bug 265847:

Given a .psf file (project set file) defining projects to check out from cvs/svn into the workspace, generate an ant script so that the checkout process can be scripted.

You can try this script and generate the appropriate ant build script to checkout all the appropriate Mylyn CVS repos.


All that being said, that leaves the issue of the firewall.
The best best is to use port 80

cvs -td :pserver:anonymous@proxy.eclipse.org:80/cvsroot/tools checkout mylyn

but since 'mylyn' might not be a valid CVS repo node, I would recommend using one that actually exists to validate the possibility to access and import a CVS repo content behind your firewall.

If your firewall need authentication, that means CVS will have to use some kind of URI authentication scheme, potentially using Passive Mode

Passive mode is similar in that it also uses two TCP connections to implement the four unidirectional channels.
However, in passive mode the client connects to the server to create the second TCP connection.
Passive mode can be useful when the client is behind a firewall that allows outbound connections, but denies most incoming connections.
To select passive mode, use the option '-P -'.
Passive mode cannot be used through a SOCKS proxy server.

VonC
  • 1,262,500
  • 529
  • 4,410
  • 5,250
1

This works for me behind my company firewall:

cvs "-d:pserver;proxy=myproxy.company.com;proxyport=99999:anonymous@dev.eclipse.org:/cvsroot/tools" co org.eclipse.mylyn

Gabe
  • 11
  • 2