... or Why Pipelining Is Not That Easy
Golang Concurrency Patterns for brave and smart.
By @kachayev
... or Why Pipelining Is Not That Easy
Golang Concurrency Patterns for brave and smart.
By @kachayev
$ ssh -A vm
$ git config --global url."[email protected]:".insteadOf "https://github.com/"
$ cat ~/.gitconfig
[url "[email protected]:"]
insteadOf = https://github.com/
$ go get github.com/private/repo && echo Success!
Success!| func merge(a, b <-chan int) <-chan int { | |
| c := make(chan int) | |
| go func() { | |
| defer close(c) | |
| for a != nil || b != nil { | |
| select { | |
| case v, ok := <-a: | |
| if !ok { | |
| fmt.Println("a is done") | |
| a = nil |
| FROM ubuntu | |
| RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list | |
| RUN apt-get update | |
| RUN apt-get upgrade | |
| RUN apt-get install -y openssh-server supervisor | |
| ADD sshd.conf /etc/supervisor/conf.d/sshd.conf | |
| RUN mkdir -p /var/run/sshd |