Azure / draft-classic

A tool for developers to create cloud-native applications on Kubernetes.
https://draft.sh
MIT License
3.92k stars 395 forks source link

homebrew install fails with LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54 #532

Closed ghost closed 6 years ago

ghost commented 6 years ago

New draft user here.

@bacongobbler Fails for me !!


x-MacBook-Pro:draft apple$ brew tap azure/draft
==> Tapping azure/draft
Cloning into '/usr/local/Homebrew/Library/Taps/azure/homebrew-draft'...
remote: Counting objects: 7, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 7 (delta 0), reused 5 (delta 0), pack-reused 0
Unpacking objects: 100% (7/7), done.
Tapped 2 formulae (33 files, 26.2KB)
x-MacBook-Pro:draft apple$ brew install draft
==> Installing draft from azure/draft
==> Downloading https://azuredraft.blob.core.windows.net/draft/draft-v0.10.1-darwin-amd64.tar.gz
########################                                                  34.1%
curl: (56) LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
Error: Failed to download resource "draft"
Download failed: https://azuredraft.blob.core.windows.net/draft/draft-v0.10.1-darwin-amd64.tar.gz

my make file:

dep-os:
    brew install kubernetes-helm
    brew install kubectl
    brew cask install minikube
    brew tap azure/draft
    brew install draft

my os:

x-MacBook-Pro:md apple$ go env
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/apple/workspace/go"
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/wp/ff6sz9qs6g71jnm12nj2kbyw0000gp/T/go-build296397000=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
x-MacBook-Pro:md apple$ docker version
Client:
 Version:   17.12.0-ce
 API version:   1.35
 Go version:    go1.9.2
 Git commit:    c97c6d6
 Built: Wed Dec 27 20:03:51 2017
 OS/Arch:   darwin/amd64

Server:
 Engine:
  Version:  17.12.0-ce
  API version:  1.35 (minimum version 1.12)
  Go version:   go1.9.2
  Git commit:   c97c6d6
  Built:    Wed Dec 27 20:12:29 2017
  OS/Arch:  linux/amd64
  Experimental: true
x-MacBook-Pro:md apple$ 

x-MacBook-Pro:md apple$ xcode-select -p
/Applications/Xcode.app/Contents/Developer
x-MacBook-Pro:md apple$ xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates
bacongobbler commented 6 years ago

According to cursory searches through Google Translate, one blog post suggests that it could be a networking error. I've never seen this issue before.

For the time being, can you please try downloading the tarball as provided in the release page, unpack it and place draft somewhere on your PATH? That might be an easier path forward while you figure out why you can't install it using homebrew.

seanknox commented 6 years ago

I'm pretty sure that is a transient networking error: https://stackoverflow.com/questions/13686398/ssl-read-failing-with-ssl-error-syscall-error

@bacongobbler I'm getting a Ruby error on a fresh High Sierra machine:

$ brew tap azure/draft
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/core, caskroom/cask).
==> Updated Formulae
apm-server                                   filebeat                                     fltk                                         heartbeat                                    kibana                                       metricbeat                                   packetbeat

==> Tapping azure/draft
Cloning into '/usr/local/Homebrew/Library/Taps/azure/homebrew-draft'...
remote: Counting objects: 7, done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 7 (delta 0), reused 5 (delta 0), pack-reused 0
Unpacking objects: 100% (7/7), done.
Error: Invalid formula: /usr/local/Homebrew/Library/Taps/azure/homebrew-draft/Formula/draft-canary.rb
undefined method `strip' for nil:NilClass
Error: Cannot tap azure/draft: invalid syntax in tap!
bacongobbler commented 6 years ago

Yeah I was seeing that too. That has to do with how the canary formula parses out the time and checksum since those are unknown ahead of time, as seen here: https://github.com/Azure/homebrew-draft/blob/master/Formula/draft-canary.rb#L11-L21

If anyone has an idea on how to make pre-release versions available on homebrew (or if this is not how people wanna use draft), I'd love to know. As I understand it, we're doing something that is a no-no :)

ghost commented 6 years ago

It is how I want to use draft. brew is about as easy as it gets and I am lazy.

This may help. https://github.com/goreleaser/homebrew-tap Not sure why you needed a special tap. Don't know enough about it.

Anyway hope this helps ....

On Tue, Feb 6, 2018, 22:44 Matthew Fisher notifications@github.com wrote:

Yeah I was seeing that too. That has to do with how the canary formula parses out the time and checksum since those are unknown ahead of time, as seen here: https://github.com/Azure/homebrew-draft/blob/master/Formula/draft-canary.rb#L11-L21

If anyone has an idea on how to make pre-release versions available on homebrew (or if this is not how people wanna use draft), I'd love to know. As I understand it, we're doing something that is a no-no :)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Azure/draft/issues/532#issuecomment-363574873, or mute the thread https://github.com/notifications/unsubscribe-auth/ATuCwp6vxTSwTnceCRH3qY4Y1-58R9Taks5tSMfFgaJpZM4R7Qh_ .

bacongobbler commented 6 years ago

None of that helped, but thank you for the feedback.

bacongobbler commented 6 years ago

After digging through a lot of searches on the subject, this is almost guaranteed to be something you'll need to resolve with your local homebrew setup. This does not appear to be related to the infrastructure as a few of us have tested and installed v0.10.1 on our machines using the same steps provided. I even pulled out an older laptop and reinstalled High Sierra just to test the steps and got it to work for me. I'm sorry that I can't seem to reproduce the error, but please provide more details if you figure out the issue!

bacongobbler commented 6 years ago

edited the title to reflect the issue.

ghost commented 6 years ago
x-MacBook-Pro:draft apple$ brew install draft
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 3 taps (homebrew/core, caskroom/versions, caskroom/cask).
==> Updated Formulae
go ✔                  consul                fltk                  kibana                nginx                 taisei
apm-server            cpprestsdk            fluent-bit            kibana@5.6            node-build            uriparser
auditbeat             elasticsearch         go@1.8                logstash              packetbeat            vim
aws-sdk-cpp           elasticsearch@5.6     godep                 macvim                py2cairo              zanata-client
bandcamp-dl           fabio                 gpatch                mariadb@10.1          py3cairo
bit                   fibjs                 heartbeat             metricbeat            python
citus                 filebeat              igv                   mrboom                quicktype
coffeescript          flow                  joplin                nailgun               sip
==> Deleted Formulae
go@1.6                                                            go@1.7

==> Installing draft from azure/draft
==> Downloading https://azuredraft.blob.core.windows.net/draft/draft-v0.10.1-darwin-amd64.tar.gz
######################################################################## 100.0%
curl: (33) HTTP server doesn't seem to support byte ranges. Cannot resume.
######################################################################## 100.0%
🍺  /usr/local/Cellar/draft/0.10.1: 5 files, 45.9MB, built in 23 seconds

Yes works now. Was transient.

closing...