DHowett / go-plist

A pure Go Apple Property List transcoder
Other
416 stars 97 forks source link

howett.net/plist not available? #38

Closed jukito closed 6 years ago

jukito commented 6 years ago

When I try to access to howett.net/plist, it givce me a 404 error from apache

Greetings!

jukito commented 6 years ago

More info:

[root@localhost]# go get howett.net/plist/cmd/ply cd .; git clone https://gitlab.howett.net/go/plist /root/go/src/howett.net/plist Cloning into '/root/go/src/howett.net/plist'... error: RPC failed; result=22, HTTP code = 404 fatal: The remote end hung up unexpectedly package howett.net/plist/cmd/ply: exit status 128

jnoxon commented 6 years ago

Yes, this server is down and has gone down in the past. Is there a good workaround to force go mod to get it from github? I'm trying to import another project which has a go.mod which has both repos specified.

jnoxon commented 6 years ago

For what it's worth, I ended up forking this repo, adding a go.mod with the module name howett.net/plist, and then using the replace directive in my own Go project's go.mod. This works even though my project doesn't directly depend on howett.net/plist.

DHowett commented 6 years ago

(There was a DNS hiccup earlier, but it should be resolved.)

jnoxon commented 6 years ago

Any chance of adding go modules support? This would remove the dependency on your server altogether.

gracenoah commented 6 years ago

Please just let github host your package. howett.net is down again.

DHowett commented 6 years ago

@gracenoah (it's impressive that you hit the 10 minute window I was doing maintenance to make sure this doesn't happen again) (edit: there was a misconfiguration on ns1.howett.net that led to the unavailability window being far wider than 10 minutes, sorry!)

@jnoxon that's a fair request. #39

codeskyblue commented 6 years ago

404 +1

DHowett commented 6 years ago

@codeskyblue Interesting! I can't reproduce this at home.

(libra) ~\AppData\Local\Temp\take2088345239 <1> % $Env:GOPATH=$PWD

(libra) ~\AppData\Local\Temp\take2088345239 <1> % go get -u howett.net/plist

(libra) ~\AppData\Local\Temp\take2088345239 <1> % curl.exe -L "https://howett.net/plist?go-get=1"
...
<meta name="go-import" content="howett.net/plist git https://gitlab.howett.net/go/plist">

Are you able to access https://howett.net/plist?go-get=1?

codeskyblue commented 6 years ago

maybe dns error . I guess

celer commented 5 years ago

go: finding howett.net/plist v0.0.0-20180609054337-500bd5b9081b go: howett.net/plist@v0.0.0-20180609054337-500bd5b9081b: git fetch -f https://gitlab.howett.net/go/plist refs/heads/:refs/heads/ refs/tags/:refs/tags/ in 544bdc6ac7fad63e2b97e248bf9b9d8ef862eae3a22968fd865be316299771ff: exit status 128: error: RPC failed; result=22, HTTP code = 404 fatal: The remote end hung up unexpectedly go: error loading module requirements

Man this is a PITA, it seems it's down pretty frequently. I wish this repo would just use github.

DHowett commented 5 years ago

@celer

Thanks for the report.

down pretty frequently

I haven't had any outage events in rather a while now, and I can't reproduce this failure:

/m # go get -v -u
Fetching https://howett.net/plist?go-get=1
Parsing meta tags from https://howett.net/plist?go-get=1 (status code 200)
get "howett.net/plist": found meta tag get.metaImport{Prefix:"howett.net/plist", VCS:"git", RepoRoot:"https://gitlab.howett.net/go/plist"} at https://howett.net/plist?go-get=1
go: finding howett.net/plist v0.0.0-20180609054337-500bd5b9081b
go: finding howett.net/plist latest
/m # grep plist go.sum
howett.net/plist v0.0.0-20181124034731-591f970eefbb/go.mod h1:vMygbs4qMhSZSc4lCUl2OEE+rDiIIJAIdR4m7MiMcm0=
/m #

I appreciate that there might be issues between your machine and Azure, and I'd definitely like to get to the bottom of them. Does a standard git fetch https://gitlab.howett.net/go/plist fail for you?

thatsatechnique commented 5 years ago

I am running into this same issue. I have tried with standard, no-frills instances of RHEL7 and CentOS7 on AWS and DigitalOcean. What I see: go: finding howett.net/plist v0.0.0-20181124034731-591f970eefbb [...] go: howett.net/plist@v0.0.0-20181124034731-591f970eefbb: git fetch -f origin refs/heads/:refs/heads/ refs/tags/:refs/tags/ in /home/user/gospace/pkg/mod/cache/vcs/544bdc6ac7fad63e2b97e248bf9b9d8ef862eae3a22968fd865be316299771ff: exit status 128: error: RPC failed; result=22, HTTP code = 404 fatal: The remote end hung up unexpectedly


Strangely, I can run the exact same commands from my macbook and it works just fine.

DHowett commented 5 years ago

AWS! That’s something I can probably test. Thank you!

DHowett commented 5 years ago

@thatsatechnique I've tried this from AWS & made a minor adjustment to the go-import meta tag. It appears that on occasion, hosted git services require .git to be present at the end of an otherwise well-formed URI.

I wasn't able to reproduce the root issue, and I'd love your help in doing so.

Can you run through the following commands? I've included a bit of my expected output.

% curl -L 'howett.net/plist?go-get=1' | grep go-import
        <meta name="go-import" content="howett.net/plist git https://gitlab.howett.net/go/plist.git">
% git clone -vv https://gitlab.howett.net/go/plist.git /tmp/plist-$$
Cloning into '/tmp/plist-1511'...
POST git-upload-pack (365 bytes)
..
Resolving deltas: 100% (633/633), done.
%                 
thatsatechnique commented 5 years ago

That did it. I got similar results as you posted above and made it through a build without error. This was tested on a DigitalOcean CentOS7 droplet which was failing yesterday. Thanks for the quick turnaround on this!

DHowett commented 5 years ago

I should be thanking you (all) for putting up with my twisted desire to run my own infrastructure. Thanks for testing/confirming/putting up with (...). :smile:

jpo-joyent commented 5 years ago

Down again... https://archive.fo/NSieT, https://archive.fo/QRNtl, https://archive.fo/TZMvq.

It's been down several times in the past month. Are you sure you don't want to reconsider letting GitHub host this? If not, I may have to switch to a fork or something :(

jnoxon commented 5 years ago

@jpo-joyent I ended up cloning the repo to a private server and using a go.mod replace directive so my other projects will use it. Out of the hundreds of build dependencies in my project's build pipeline, this is the one that regularly breaks the build.

nodirt commented 5 years ago

down again :(

DHowett commented 5 years ago

My metrics are not reporting an outage, and it looks like everything is reachable from pretty much everywhere. Can you provide a bit more information about the failure?

On Wed, Mar 27, 2019 at 2:21 PM Nodir Turakulov notifications@github.com wrote:

down again :(

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/DHowett/go-plist/issues/38#issuecomment-477352526, or mute the thread https://github.com/notifications/unsubscribe-auth/AALjBr8-1AFYZ2UsMksSYepx3Beu7K1Dks5va-DqgaJpZM4Vr8El .

nodirt commented 5 years ago

HTTPS:

$ curl -v 'https://www.howett.net/plist'

*   Trying 192.154.110.147...
* TCP_NODELAY set
* Connected to www.howett.net (192.154.110.147) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/cert.pem
  CApath: none
* TLSv1.2 (OUT), TLS handshake, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Client hello (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS change cipher, Client hello (1):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
* ALPN, server accepted to use http/1.1
* Server certificate:
*  subject: CN=howett.net
*  start date: Dec 31 08:41:38 2018 GMT
*  expire date: Mar 31 08:41:38 2019 GMT
*  subjectAltName: host "www.howett.net" matched cert's "www.howett.net"
*  issuer: C=US; O=Let's Encrypt; CN=Let's Encrypt Authority X3
*  SSL certificate verify ok.
> GET /plist HTTP/1.1
> Host: www.howett.net
> User-Agent: curl/7.54.0
> Accept: */*
>
< HTTP/1.1 404 Not Found
< Date: Thu, 28 Mar 2019 00:19:38 GMT
< Server: Apache/2.4.18 (Ubuntu)
< Content-Length: 284
< Content-Type: text/html; charset=iso-8859-1
<
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /plist was not found on this server.</p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at www.howett.net Port 443</address>
</body></html>
* Connection #0 to host www.howett.net left intact

HTTP:

curl -v 'http://www.howett.net/plist'
*   Trying 192.154.110.147...
* TCP_NODELAY set
* Connected to www.howett.net (192.154.110.147) port 80 (#0)
> GET /plist HTTP/1.1
> Host: www.howett.net
> User-Agent: curl/7.54.0
> Accept: */*
>
< HTTP/1.1 404 Not Found
< Date: Thu, 28 Mar 2019 00:20:27 GMT
< Server: Apache/2.4.18 (Ubuntu)
< Content-Length: 283
< Content-Type: text/html; charset=iso-8859-1
<
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /plist was not found on this server.</p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at www.howett.net Port 80</address>
</body></html>
* Connection #0 to host www.howett.net left intact
codeskyblue commented 5 years ago

I made a fork. https://github.com/fork2fix/go-plist, so it is working for now.

DHowett commented 5 years ago

Would you mind trying with "curl https://howett.net/plist?go-get=1"? The Go client adds that query parameter to the request, which most conforming implementations require to get the correct response.

On Wed, Mar 27, 2019 at 6:55 PM shengxiang notifications@github.com wrote:

I made a fork. https://github.com/fork2fix/go-plist, so it is working for now.

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/DHowett/go-plist/issues/38#issuecomment-477413566, or mute the thread https://github.com/notifications/unsubscribe-auth/AALjBgRbjOgLmXHAmnvjZLjzDUS1C7Gjks5vbCEYgaJpZM4Vr8El .

codeskyblue commented 5 years ago
$ curl https://howett.net/plist?go-get=1
<!DOCTYPE html>
<html><head>
<meta name="go-import" content="howett.net/plist git https://gitlab.howett.net/go/plist.git">

@DHowett it works in my PC. but if you change to github.com I think it will be more stable and I dont have to make a fork version.

cehoffman commented 5 years ago

The issue right now is the certificate has expired.

image

go: howett.net/plist@v0.0.0-20181124034731-591f970eefbb: git fetch -f origin refs/heads/*:refs/heads/* refs/tags/*:refs/tags/* in /go/pkg/mod/cache/vcs/a4d32d8ad7ec027c9f37ec5b0390977f7cd632241b9c621f0c7d34bc0b6acc95: exit status 128:
    fatal: unable to access 'https://gitlab.howett.net/go/plist.git/': SSL certificate problem: certificate has expired
DHowett commented 5 years ago

That's now fixed. Thanks.

manish-plivo commented 4 years ago

Again hornet.net is down?

go: finding howett.net/plist v0.0.0-20181124034731-591f970eefbb go: howett.net/plist@v0.0.0-20181124034731-591f970eefbb: git fetch -f https://gitlab.howett.net/go/plist.git refs/heads/:refs/heads/ refs/tags/:refs/tags/ in /Users/User/go/pkg/mod/cache/vcs/a4d32d8ad7ec027c9f37ec5b0390977f7cd632241b9c621f0c7d34bc0b6acc95: exit status 128: fatal: unable to access 'https://gitlab.howett.net/go/plist.git/': Failed to connect to gitlab.howett.net port 443: Operation timed out go: error loading module requirements