googlearchive / k8s-service-catalog

[DEPRECATED] Commandline tool to manage Service Catalog lifecycle and GCP Service Broker atop Kubernetes Cluster
Apache License 2.0
69 stars 31 forks source link

Panic running `sc install` (OSX, against GKE 1.9 cluster) #187

Closed fabioy closed 6 years ago

fabioy commented 6 years ago

Installed sc from the https://github.com/GoogleCloudPlatform/k8s-service-catalog/releases (the osx 1.0.0.beta.2 version). Put all binaries in the path, but it panics when I try to install it on my GKE 1.9.6 cluster:

$  sc check
account: <redacted>
project: <redacted>
zone: us-west1-b
Dependency check passed. You are good to go.

$  sc install
account: <redacted>
project: <redacted>
zone: us-west1-b
Service Catalog could not be installed.
Error: error generating YAML files: error generating SSL artifacts : error generating ca: stdout:  stderr: failed MSpanList_Insert 0xa0f000 0x387011e1092d 0x0 0x0
fatal error: MSpanList_Insert

runtime stack:
runtime.throw(0x6bbbe0, 0x10)
    /usr/local/go/src/runtime/panic.go:530 +0x90 fp=0x7ffeefbff300 sp=0x7ffeefbff2e8
runtime.(*mSpanList).insert(0x9436e8, 0xa0f000)
    /usr/local/go/src/runtime/mheap.go:933 +0x293 fp=0x7ffeefbff330 sp=0x7ffeefbff300
runtime.(*mheap).freeSpanLocked(0x942ee0, 0xa0f000, 0x100, 0x0)
    /usr/local/go/src/runtime/mheap.go:809 +0x4be fp=0x7ffeefbff398 sp=0x7ffeefbff330
runtime.(*mheap).grow(0x942ee0, 0x8, 0x0)
    /usr/local/go/src/runtime/mheap.go:675 +0x2a0 fp=0x7ffeefbff3f0 sp=0x7ffeefbff398
runtime.(*mheap).allocSpanLocked(0x942ee0, 0x1, 0x0)
    /usr/local/go/src/runtime/mheap.go:553 +0x4e3 fp=0x7ffeefbff448 sp=0x7ffeefbff3f0
runtime.(*mheap).alloc_m(0x942ee0, 0x1, 0x15, 0x0)
    /usr/local/go/src/runtime/mheap.go:437 +0x119 fp=0x7ffeefbff478 sp=0x7ffeefbff448
runtime.(*mheap).alloc.func1()
    /usr/local/go/src/runtime/mheap.go:502 +0x41 fp=0x7ffeefbff4a8 sp=0x7ffeefbff478
runtime.systemstack(0x7ffeefbff4c8)
    /usr/local/go/src/runtime/asm_amd64.s:307 +0xab fp=0x7ffeefbff4b0 sp=0x7ffeefbff4a8
runtime.(*mheap).alloc(0x942ee0, 0x1, 0x10000000015, 0xee2f)
    /usr/local/go/src/runtime/mheap.go:503 +0x63 fp=0x7ffeefbff4f8 sp=0x7ffeefbff4b0
runtime.(*mcentral).grow(0x944ae0, 0x0)
    /usr/local/go/src/runtime/mcentral.go:209 +0x93 fp=0x7ffeefbff560 sp=0x7ffeefbff4f8
runtime.(*mcentral).cacheSpan(0x944ae0, 0x93d4e8)
    /usr/local/go/src/runtime/mcentral.go:89 +0x47d fp=0x7ffeefbff5a0 sp=0x7ffeefbff560
runtime.(*mcache).refill(0xa0b000, 0x15, 0x7ffeefbff608)
    /usr/local/go/src/runtime/mcache.go:119 +0xcc fp=0x7ffeefbff5d8 sp=0x7ffeefbff5a0
runtime.mallocgc.func2()
    /usr/local/go/src/runtime/malloc.go:642 +0x2b fp=0x7ffeefbff5f8 sp=0x7ffeefbff5d8
runtime.systemstack(0x7ffeefbff698)
    /usr/local/go/src/runtime/asm_amd64.s:307 +0xab fp=0x7ffeefbff600 sp=0x7ffeefbff5f8
runtime.mallocgc(0x180, 0x6558a0, 0x0, 0x800000000)
    /usr/local/go/src/runtime/malloc.go:643 +0x869 fp=0x7ffeefbff6d8 sp=0x7ffeefbff600
runtime.newobject(0x6558a0, 0x93da10)
    /usr/local/go/src/runtime/malloc.go:781 +0x42 fp=0x7ffeefbff700 sp=0x7ffeefbff6d8
runtime.malg(0x8000, 0x93df00)
    /usr/local/go/src/runtime/proc.go:2634 +0x27 fp=0x7ffeefbff738 sp=0x7ffeefbff700
runtime.mpreinit(0x93e760)
    /usr/local/go/src/runtime/os1_darwin.go:140 +0x1f fp=0x7ffeefbff750 sp=0x7ffeefbff738
runtime.mcommoninit(0x93e760)
    /usr/local/go/src/runtime/proc.go:494 +0x105 fp=0x7ffeefbff798 sp=0x7ffeefbff750
runtime.schedinit()
    /usr/local/go/src/runtime/proc.go:434 +0x79 fp=0x7ffeefbff7e0 sp=0x7ffeefbff798
runtime.rt0_go(0x7ffeefbff810, 0x4, 0x7ffeefbff810, 0x0, 0x4, 0x7ffeefbff9e0, 0x7ffeefbff9e6, 0x7ffeefbff9ed, 0x7ffeefbff9f6, 0x0, ...)
    /usr/local/go/src/runtime/asm_amd64.s:138 +0x132 fp=0x7ffeefbff7e8 sp=0x7ffeefbff7e0
 err: exit status 2
martinmaly commented 6 years ago

Sorry about that. it seems the issue may be with the cfssl and/or cfssljson binaries which are released by https://pkg.cfssl.org/.

for now the best option is to build cfssl from sources: go get -u github.com/cloudflare/cfssl/cmd/...

I am going to update our Travis to build cfssl from sources (rather than download the binary release of cfssl)

martinmaly commented 6 years ago

Thanks for the report, Fabio! The updated Travis build (building cfssl from sources) seems to have fixed the panic. Let me know if you are still having issues. I'll be happy to help.