Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

3) Setup for large filesystems on github

$ git lfs install

4) Setup for HTTP tunneling (required for gitlab.cern.ch)

$ git config --global http.proxy http://localhost:8888

Info

All off these steps only need to be done once per unix account

...

Temporary Tunneling at SLAC

The tricky part is you need to tweak your .ssh/config file to do the checkout but this will impact your other checkouts. So you need to add the following lines to .ssh/config and then comment them out after you do the checkout:

  • Connect to github via proxy

$ Host github.com

$ User git

$ ProxyCommand ssh ppa-pc87444 /usr/bin/nc %h %p

Prerequest Access to rhel6-64.

 

GitHub Access

Setup ssh-key as described above. Append the following lines to ~/.ssh/config:

 
Host github.com
    User git
    ProxyCommand ssh USER@rhel6-64.slac.stanford.edu  -W %h:%p

 

Code Block
languagebash
# Log into server
$ ssh rdusr219

# Source environment script
$ source /u1/DUNE/setup_env.csh

# Start the SOCKS2HTTP
$ HttpTunnelStart
Then hit enter key

# perform all your github pull/push/clone operations
$ git .......

# Stop the SOCKS2HTTP before logging out 
$ HttpTunnelStop


...

Temporary Tunneling at CERN (

...

np04-srv-011)


NEWS (2017-08-29) HttpTunnel is not required anymore. Proxy server is set after sourcing setup.sh.

 

Prerequest Access to lxplus.

...

    User git
    ProxyCommand ssh USER@lxplusUSER@lxplus.cern.ch -W %h:%p

 

GitHub LFS Access

Code Block
languagebash
# Log into server
$ ssh pddaqnp04-gen02srv-ctrl0011

# Source environment script
$ source /nfs/daqsw/rce/setup_env.sh
 
# StartFor thedevelopment SOCKS2HTTPversion
$ HttpTunnelStartsource /nfs/sw/rce/setup.sh dev

# perform all your github pull/push/clone operations
$ git .......

# Stop the SOCKS2HTTP before logging out 
$ HttpTunnelStop

 

 

Currently git-lfs (v2.0.x)  supports HTTP/HTTPS access only. SOCK5 proxy is on the v2.1 roadmap.

https://github.com/git-lfs/git-lfs/milestone/7

 

A possible solution is to setup a SOCK5 tunnel to lxplus via ssh, and convert SOCKS to HTTP using polipo on the daq machine.

https://github.com/jech/polipo

An excitable can be found at pddaq-gen02:/daq/rce.

 

Notes

  • modify USER to your lxplus username
  • if you login to the daq machine as pdusernp04daq, you still have to use your own lxplus username in the ssh config.
  • for password-less operations, you can create a kerberos ticket by "kinit USER@CERN.CH" (replace USER to your lxplus username).

...