YaleUniversity / packer-plugin-goss

Goss Provisioner for Packer
MIT License
136 stars 45 forks source link

Documentation not displayed on pkg.go.dev due to missing LICENSE file #41

Closed marco-m closed 3 years ago

marco-m commented 3 years ago

hello, https://pkg.go.dev/github.com/YaleUniversity/packer-provisioner-goss says

Documentation not displayed due to license restrictions.

I believe it is because the root of this repo is missing a LICENSE file.

pombredanne commented 3 years ago

@marco-m I guess https://pkg.go.dev/ should run scancode-toolkit for better results ;)

fishnix commented 3 years ago

Thanks for the report. PR #44 adds a LICENSE file but it seems like pkg.go.dev stopped pulling this repo at v1.4.0 😕

I'm poking around to see if it's something with the mod file or rep; I haven't seen this problem before....

fishnix commented 3 years ago

It looks like the problem is the update to v2.x.x

https://blog.golang.org/v2-go-modules

This major version update was necessitated by packaging differences for the binary (its zipped by the github action)... I'm not sure this is important enough to rework the structure of the repository for now.

marco-m commented 3 years ago

@fishnix I dug (once more, I keep forgetting) in the Go modules documentation. I think that this should be fixed by replacing

module github.com/YaleUniversity/packer-provisioner-goss

with

module github.com/YaleUniversity/packer-provisioner-goss/v2

in the go.mod file (and update imports paths as needed).

The problem is not only that the documentation is not displayed; the problem is that go get of anything >= v2.0 currently fails:

go get github.com/YaleUniversity/packer-provisioner-goss@v2.1.1
go get: github.com/YaleUniversity/packer-provisioner-goss@v2.1.1: invalid version:
  module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v2

Your comment

I'm not sure this is important enough to rework the structure of the repository for now.

makes me think that you were referring to having a directory per version, as suggested in the blog post. Luckily, that is not mandatory.

fishnix commented 3 years ago

makes me think that you were referring to having a directory per version, as suggested in the blog post. Luckily, that is not mandatory.

yes, I read the doc as having to change the structure of the repository. if we just need to update the go.mod, that works for me. I can give it a shot.

marco-m commented 3 years ago

This is the reference: https://github.com/golang/go/issues/35732#issuecomment-584319096

fishnix commented 3 years ago

@marco-m still no dice from what I can tell after that change. Someone will have to spend some time poking at this I think.

> GOPROXY=https://proxy.golang.org GO111MODULE=on go get github.com/YaleUniversity/packer-provisioner-goss@v3.0.2
go get: github.com/YaleUniversity/packer-provisioner-goss@v3.0.2: reading https://proxy.golang.org/github.com/%21yale%21university/packer-provisioner-goss/@v/v3.0.2.info: 410 Gone
    server response: not found: github.com/YaleUniversity/packer-provisioner-goss@v3.0.2: invalid version: module contains a go.mod file, so major version must be compatible: should be v0 or v1, not v3
marco-m commented 3 years ago

@fishnix I think I mislead you with the go get example above https://github.com/YaleUniversity/packer-provisioner-goss/issues/41#issuecomment-786086387.

Your changes do work:

$ go get github.com/YaleUniversity/packer-provisioner-goss/v3
go: downloading github.com/YaleUniversity/packer-provisioner-goss/v3 v3.0.2
go: downloading github.com/hashicorp/packer-plugin-sdk v0.0.11
...

and the effect of this go get [1] is that finally https://pkg.go.dev/github.com/YaleUniversity/packer-provisioner-goss got a

The highest tagged major version is v3.

and following that link: https://pkg.go.dev/github.com/YaleUniversity/packer-provisioner-goss/v3 YEAH

[1] see https://go.dev/about#adding-a-package-h2