ginkgo-ext: Fix data-race in Writer
ginkgo-ext: Fix data-race in Writer

`ginkgoext.Writer` is used as the output buffer behind
`ginkgoext.GinkgoPrint`. `GinkgoPrint` can be called from multiple
go routines concurrently. For example, `kubectl.validateCilium`
spawns `cilium{Status,Controllers,Health}PreFlightCheck` in three
separate go routines, all of which call `ginkgoext.By`, which calls
`ginkgoext.GinkgoPrint` which calls `ginkgoext.Writer.Write`.

This hopefully fixes a spurious panic which observed in
https://jenkins.cilium.io/job/Cilium-PR-K8s-newest-kernel-4.9/719,
as the "slice bounds out of range" panic seems to be a common
failure when `bytes.Buffer.Write` is called unsychronized from
different go routines.

```
09:55:43 STEP: Performing Cilium controllers preflight check
panic: runtime error: slice bounds out of range [532609:532604]

goroutine 871 [running]:
bytes.(*Buffer).Write(0x2f09ca0, 0xc0006f4000, 0x2e, 0x4000, 0x2e, 0x0, 0x0)
	/usr/local/go/src/bytes/buffer.go:174 +0x101
github.com/cilium/cilium/test/ginkgo-ext.(*Writer).Write(0xc000373b00, 0xc0006f4000, 0x2e, 0x4000, 0x2eca680, 0xc000210c58, 0x40be5b)
	/home/jenkins/workspace/Cilium-PR-K8s-newest-kernel-4.9/k8s-1.18-gopath/src/github.com/cilium/cilium/test/ginkgo-ext/writer.go:46 +0xb2
fmt.Fprintln(0x1f3aaa0, 0xc000373b00, 0xc000210ca8, 0x1, 0x1, 0xc000221b90, 0x2d, 0x2d)
	/usr/local/go/src/fmt/print.go:265 +0x8b
github.com/cilium/cilium/test/ginkgo-ext.GinkgoPrint(0xc000221b90, 0x2d, 0x0, 0x0, 0x0)
	/home/jenkins/workspace/Cilium-PR-K8s-newest-kernel-4.9/k8s-1.18-gopath/src/github.com/cilium/cilium/test/ginkgo-ext/scopes.go:178 +0xa7
github.com/cilium/cilium/test/ginkgo-ext.By(0x1c9e224, 0x1e, 0x0, 0x0, 0x0)
	/home/jenkins/workspace/Cilium-PR-K8s-newest-kernel-4.9/k8s-1.18-gopath/src/github.com/cilium/cilium/test/ginkgo-ext/scopes.go:170 +0x12f
github.com/cilium/cilium/test/helpers.(*Kubectl).ciliumHealthPreFlightCheck(0xc00099fa40, 0x1f392a0, 0xc000652120)
	/home/jenkins/workspace/Cilium-PR-K8s-newest-kernel-4.9/k8s-1.18-gopath/src/github.com/cilium/cilium/test/helpers/kubectl.go:3496 +0x7a
github.com/cilium/cilium/test/helpers.(*Kubectl).validateCilium.func3(0xc0000645a0, 0xc000206470)
	/home/jenkins/workspace/Cilium-PR-K8s-newest-kernel-4.9/k8s-1.18-gopath/src/github.com/cilium/cilium/test/helpers/kubectl.go:3386 +0x2e
golang.org/x/sync/errgroup.(*Group).Go.func1(0xc00074cd80, 0xc000796bc0)
	/home/jenkins/workspace/Cilium-PR-K8s-newest-kernel-4.9/k8s-1.18-gopath/src/github.com/cilium/cilium/vendor/golang.org/x/sync/errgroup/errgroup.go:57 +0x59
created by golang.org/x/sync/errgroup.(*Group).Go
	/home/jenkins/workspace/Cilium-PR-K8s-newest-kernel-4.9/k8s-1.18-gopath/src/github.com/cilium/cilium/vendor/golang.org/x/sync/errgroup/errgroup.go:54 +0x66

Ginkgo ran 1 suite in 3m21.079336902s
Test Suite Failed
```

Signed-off-by: Sebastian Wicki <db043b2055cb3a47b2eb0b5aebf4e114a8c24a5a@isovalent.com>

tklauser/cilium,cilium-team/cilium,tgraf/cilium,tgraf/cilium,tgraf/cilium,tgraf/cilium,michi-covalent/cilium,michi-covalent/cilium,cilium/cilium,cilium-team/cilium,michi-covalent/cilium,cilium/cilium,tklauser/cilium,cilium/cilium,tgraf/cilium,tklauser/cilium,michi-covalent/cilium,cilium/cilium,tklauser/cilium,michi-covalent/cilium,cilium/cilium,tgraf/cilium,tklauser/cilium