FTBFS on ubuntu incompatible distro vs vendorized deps?

Bug #1882225 reported by Dimitri John Ledkov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
singularity-container (Ubuntu)
New
Undecided
Unassigned

Bug Description

FTBFS on ubuntu incompatible distro vs vendorized deps?

we have different versions of a few deps, and overall the package fails to build from source.

I solved one of the issues, but more remain unsolved.

# github.com/sylabs/singularity/vendor/github.com/deislabs/oras/pkg/content
../vendor/github.com/deislabs/oras/pkg/content/file.go:23:2: cannot use &FileStore literal (type *FileStore) as type content.Provider in assignment:
 *FileStore does not implement content.Provider (wrong type for ReaderAt method)
  have ReaderAt(context.Context, "github.com/sylabs/singularity/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) (content.ReaderAt, error)
  want ReaderAt(context.Context, "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) (content.ReaderAt, error)
../vendor/github.com/deislabs/oras/pkg/content/file.go:197:25: cannot use desc (type "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) as type "github.com/sylabs/singularity/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor in argument to ResolveName
../vendor/github.com/deislabs/oras/pkg/content/file.go:205:45: cannot use desc (type "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) as type "github.com/sylabs/singularity/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor in argument to s.createWritePath
../vendor/github.com/deislabs/oras/pkg/content/file.go:211:9: cannot use &fileWriter literal (type *fileWriter) as type content.Writer in return argument:
 *fileWriter does not implement content.Writer (wrong type for Commit method)
  have Commit(context.Context, int64, "github.com/sylabs/singularity/vendor/github.com/opencontainers/go-digest".Digest, ...content.Opt) error
  want Commit(context.Context, int64, "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/go-digest".Digest, ...content.Opt) error
../vendor/github.com/deislabs/oras/pkg/content/file.go:214:3: cannot use desc (type "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) as type "github.com/sylabs/singularity/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor in field value
../vendor/github.com/deislabs/oras/pkg/content/memory.go:18:2: cannot use &Memorystore literal (type *Memorystore) as type content.Provider in assignment:
 *Memorystore does not implement content.Provider (wrong type for ReaderAt method)
  have ReaderAt(context.Context, "github.com/sylabs/singularity/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) (content.ReaderAt, error)
  want ReaderAt(context.Context, "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) (content.ReaderAt, error)
../vendor/github.com/deislabs/oras/pkg/content/memory.go:89:24: cannot use desc (type "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) as type "github.com/sylabs/singularity/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor in argument to ResolveName
../vendor/github.com/deislabs/oras/pkg/content/memory.go:91:9: cannot use &memoryWriter literal (type *memoryWriter) as type content.Writer in return argument:
 *memoryWriter does not implement content.Writer (wrong type for Commit method)
  have Commit(context.Context, int64, "github.com/sylabs/singularity/vendor/github.com/opencontainers/go-digest".Digest, ...content.Opt) error
  want Commit(context.Context, int64, "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/go-digest".Digest, ...content.Opt) error
../vendor/github.com/deislabs/oras/pkg/content/memory.go:94:3: cannot use desc (type "github.com/sylabs/singularity/vendor/github.com/containerd/containerd/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor) as type "github.com/sylabs/singularity/vendor/github.com/opencontainers/image-spec/specs-go/v1".Descriptor in field value

Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote :

I tried to build the package locally and I got the following error during compilation:

# github.com/sylabs/singularity/internal/pkg/cgroups
../internal/pkg/cgroups/manager_linux.go:135:21: cannot use spec (variable of type *"github.com/opencontainers/runtime-spec/specs-go".Spec) as *"github.com/opencontainers/runc/vendor/github.com/opencontainers/runtime-spec/specs-go".Spec value in struct literal
../internal/pkg/cgroups/manager_linux.go:303:21: cannot use spec (variable of type *"github.com/opencontainers/runtime-spec/specs-go".Spec) as *"github.com/opencontainers/runc/vendor/github.com/opencontainers/runtime-spec/specs-go".Spec value in struct literal

The other errors mentioned in the description got sorted out.

Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote (last edit ):

This is conflicting the Spec definition in golang-github-opencontainers-runc-dev (vendorized code):

golang-github-opencontainers-runc-dev: /usr/share/gocode/src/github.com/opencontainers/runc/vendor/github.com/opencontainers/runtime-spec/specs-go

And the Spec definition in golang-github-opencontainers-specs-dev:

golang-github-opencontainers-specs-dev: /usr/share/gocode/src/github.com/opencontainers/runtime-spec/specs-go

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.