Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.28.0 / variant export binary builds fail without changes to the CLI code #22

Open
johncblandii opened this issue Aug 13, 2020 · 0 comments

Comments

@johncblandii
Copy link
Contributor

@mumoshu thoughts on the cause and a solution:

ideally export binary should produce go.mod that locks the depended variant2 to the specific version

yes. i think i missed implementing it, which is why variant2 export binary broke due to recent api changes in variant2

anyway, i'll enhance export binary to also write go.sum. i'll also see if i can bring back the old API MustEval to future versions of variant2

Full SweetOps Discussion

Dockerfile Build

# Builder for the nbo CLI
ARG VARIANT_VERSION=0.28.0
FROM golang:alpine3.11 as cli
RUN apk add -u make
WORKDIR /usr/cli

# Install variant
ARG VARIANT_VERSION
RUN wget https://github.com/mumoshu/variant2/releases/download/v${VARIANT_VERSION}/variant_${VARIANT_VERSION}_linux_amd64.tar.gz && \
    tar -zvxf variant*.tar.gz variant && \
    mv variant /usr/local/bin/variant2 && \
    rm -f variant*.tar.gz

# Copy the cli directory
COPY cli .
ARG CGO_ENABLED=1
RUN make build

Error

Step 6/45 : RUN wget https://github.com/mumoshu/variant2/releases/download/v${VARIANT_VERSION}/variant_${VARIANT_VERSION}_linux_amd64.tar.gz &&     tar -zvxf variant*.tar.gz variant &&     mv variant /usr/local/bin/variant2 &&     rm -f variant*.tar.gz
 ---> Running in 39ac904d79b3
Connecting to github.com (140.82.114.4:443)
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (52.217.101.12:443)
saving to 'variant_0.28.0_linux_amd64.tar.gz'
variant_0.28.0_linux   5% |*                               |  662k  0:00:17 ETA
variant_0.28.0_linux  40% |*************                   | 5116k  0:00:02 ETA
variant_0.28.0_linux  99% |******************************* | 12.1M  0:00:00 ETA
variant_0.28.0_linux 100% |********************************| 12.2M  0:00:00 ETA
'variant_0.28.0_linux_amd64.tar.gz' saved
variant
Removing intermediate container 39ac904d79b3
 ---> e0541f921166
Step 7/45 : COPY cli .
 ---> bfb966dc9ef4
Step 8/45 : ARG CGO_ENABLED=1
 ---> Running in 47b7cdef1c39
Removing intermediate container 47b7cdef1c39
 ---> 09c2051f78b8
Step 9/45 : RUN make build
 ---> Running in bfddcfae3b86
variant2 export binary /usr/cli nbo
go: creating new go.mod: module cli
go: finding module for package github.com/mumoshu/variant2
go: downloading github.com/mumoshu/variant2 v0.33.0
go: found github.com/mumoshu/variant2 in github.com/mumoshu/variant2 v0.33.0
go: downloading github.com/mattn/go-isatty v0.0.12
go: downloading github.com/hashicorp/hcl v1.0.0
go: downloading github.com/spf13/cobra v0.0.5
go: downloading github.com/nlopes/slack v0.6.0
go: downloading github.com/variantdev/mod v0.18.0
go: downloading github.com/google/go-cmp v0.4.0
go: downloading github.com/kr/text v0.1.0
go: downloading github.com/hashicorp/go-multierror v1.0.0
go: downloading github.com/pkg/errors v0.9.1
go: downloading github.com/variantdev/vals v0.4.0
go: downloading github.com/AlecAivazis/survey/v2 v2.0.5
go: downloading github.com/zclconf/go-cty v1.2.1
go: downloading gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c
go: downloading github.com/rs/xid v1.2.1
go: downloading github.com/hashicorp/hcl/v2 v2.3.0
go: downloading github.com/spf13/pflag v1.0.5
go: downloading github.com/imdario/mergo v0.3.8
go: downloading github.com/heroku/docker-registry-client v0.0.0-20190909225348-afc9e1acc3d5
go: downloading github.com/hashicorp/terraform v0.12.18
go: downloading github.com/go-logr/logr v0.1.0
go: downloading k8s.io/klog v1.0.0
go: downloading github.com/twpayne/go-vfs v1.3.6
go: downloading github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
go: downloading golang.org/x/sys v0.0.0-20200331124033-c3d80250170d
go: downloading github.com/evanphx/json-patch v4.5.0+incompatible
go: downloading github.com/Masterminds/semver v1.5.0
go: downloading github.com/hashicorp/errwrap v1.0.0
go: downloading github.com/hashicorp/golang-lru v0.5.4
go: downloading github.com/aws/aws-sdk-go v1.29.34
go: downloading github.com/xeipuuv/gojsonschema v1.2.0
go: downloading github.com/gorilla/websocket v1.4.0
go: downloading github.com/docker/distribution v2.7.1+incompatible
go: downloading github.com/variantdev/dag v0.0.0-20191028002400-bb0b3c785363
go: downloading google.golang.org/genproto v0.0.0-20200403120447-c50568487044
go: downloading github.com/hashicorp/go-getter v1.4.1
go: downloading github.com/apparentlymart/go-textseg v1.0.0
go: downloading cloud.google.com/go v0.56.0
go: downloading github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b
go: downloading github.com/google/go-github v17.0.0+incompatible
go: downloading github.com/k-kinzal/aliases v0.5.1
go: downloading github.com/zclconf/go-cty-yaml v1.0.1
go: downloading github.com/opencontainers/image-spec v1.0.1
go: downloading github.com/google/go-github/v27 v27.0.6
go: downloading github.com/mattn/go-colorable v0.1.4
go: downloading golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d
go: downloading github.com/docker/libtrust v0.0.0-20160708172513-aabc10ec26b7
go: downloading github.com/iancoleman/strcase v0.0.0-20191112232945-16388991a334
go: downloading github.com/opencontainers/go-digest v1.0.0-rc1
go: downloading github.com/sirupsen/logrus v1.4.2
go: downloading github.com/hashicorp/vault v1.2.3
go: downloading go.mozilla.org/sops v0.0.0-20190611200209-e9e1e87723c8
go: downloading github.com/Masterminds/sprig v2.22.0+incompatible
go: downloading github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415
go: downloading gopkg.in/yaml.v2 v2.2.8
go: downloading github.com/fatih/color v1.9.0
go: downloading github.com/mitchellh/go-wordwrap v1.0.0
go: downloading github.com/google/uuid v1.1.1
go: downloading github.com/huandu/xstrings v1.3.0
go: downloading golang.org/x/crypto v0.0.0-20200214034016-1d94cc7ab1c6
go: downloading github.com/ulikunitz/xz v0.5.6
go: downloading github.com/bgentry/go-netrc v0.0.0-20140422174119-9fd32a8b3d3d
go: downloading gopkg.in/go-playground/validator.v9 v9.31.0
go: downloading github.com/mozilla-services/yaml v0.0.0-20180922153656-28ffe5d0cafb
go: downloading github.com/hashicorp/go-cleanhttp v0.5.1
go: downloading github.com/apparentlymart/go-cidr v1.0.1
go: downloading github.com/googleapis/gax-go v2.0.0+incompatible
go: downloading github.com/googleapis/gax-go/v2 v2.0.5
go: downloading google.golang.org/grpc v1.28.0
go: downloading github.com/creasty/defaults v1.3.0
go: downloading github.com/Masterminds/goutils v1.1.0
go: downloading github.com/mitchellh/go-homedir v1.1.0
go: downloading github.com/hashicorp/go-safetemp v1.0.0
go: downloading github.com/leodido/go-urn v1.2.0
go: downloading github.com/golang/protobuf v1.3.5
go: downloading github.com/hashicorp/vault/api v1.0.5-0.20190909201928-35325e2c3262
go: downloading cloud.google.com/go/storage v1.6.0
go: downloading google.golang.org/api v0.20.0
go: downloading github.com/hashicorp/go-uuid v1.0.1
go: downloading golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e
go: downloading github.com/hashicorp/vault/sdk v0.1.14-0.20190909201848-e0fbf9b652e2
go: downloading github.com/go-playground/universal-translator v0.17.0
go: downloading golang.org/x/time v0.0.0-20191024005414-555d28b269f0
go: downloading github.com/hashicorp/go-version v1.2.0
go: downloading github.com/mitchellh/copystructure v1.0.0
go: downloading github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb
go: downloading github.com/PaesslerAG/jsonpath v0.1.1
go: downloading gopkg.in/square/go-jose.v2 v2.3.1
go: downloading github.com/Azure/azure-sdk-for-go v36.2.0+incompatible
go: downloading github.com/mitchellh/go-testing-interface v1.0.0
go: downloading github.com/mitchellh/mapstructure v1.1.2
go: downloading github.com/fujiwara/tfstate-lookup v0.0.4
go: downloading github.com/hashicorp/go-retryablehttp v0.5.4
go: downloading github.com/bmatcuk/doublestar v1.1.5
go: downloading golang.org/x/text v0.3.2
go: downloading github.com/go-playground/locales v0.13.0
go: downloading github.com/tidwall/gjson v1.3.5
go: downloading github.com/hashicorp/go-rootcerts v1.0.1
go: downloading go.opencensus.io v0.22.3
go: downloading github.com/hashicorp/go-sockaddr v1.0.2
go: downloading github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e
go: downloading github.com/pierrec/lz4 v2.2.6+incompatible
go: downloading github.com/tidwall/match v1.0.1
go: downloading github.com/agext/levenshtein v1.2.2
go: downloading github.com/golang/snappy v0.0.1
go: downloading github.com/google/go-querystring v1.0.0
go: downloading github.com/itchyny/gojq v0.9.0
go: downloading github.com/mitchellh/reflectwalk v1.0.0
go: downloading github.com/PaesslerAG/gval v1.0.1
go: downloading github.com/goware/prefixer v0.0.0-20160118172347-395022866408
go: downloading github.com/alecthomas/participle v0.4.2-0.20191220090139-9fbceec1d131
go: downloading github.com/pbnjay/strptime v0.0.0-20140226051138-5c05b0d668c9
go: downloading github.com/tidwall/pretty v1.0.0
go: downloading github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c
go: downloading go.mozilla.org/gopgagent v0.0.0-20170926210634-4d7ea76ff71a
go: downloading github.com/lestrrat-go/strftime v1.0.1
go: downloading github.com/ryanuber/go-glob v1.0.0
go: downloading github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af
go: downloading github.com/lib/pq v1.2.0
go: downloading github.com/Azure/go-autorest v13.2.0+incompatible
go: downloading github.com/Azure/go-autorest/autorest v0.9.2
go: downloading github.com/Azure/go-autorest/tracing v0.5.0
go: downloading github.com/Azure/go-autorest/autorest/azure/auth v0.4.0
go: downloading github.com/Azure/go-autorest/autorest/validation v0.2.0
go: downloading github.com/Azure/go-autorest/autorest/date v0.2.0
go: downloading github.com/Azure/go-autorest/autorest/to v0.3.0
go: downloading github.com/Azure/go-autorest/autorest/adal v0.8.1-0.20191028180845-3492b2aff503
go: downloading github.com/Azure/go-autorest/logger v0.1.0
go: downloading github.com/dimchansky/utfbom v1.1.0
go: downloading github.com/Azure/go-autorest/autorest/azure/cli v0.3.0
go: downloading github.com/dgrijalva/jwt-go v3.2.0+incompatible
# cli
./main.go:2536:9: undefined: variant.MustEval
Error: command "sh -c cd /tmp/variant-cli778896582; go mod init cli && go build -o /usr/cli/nbo /tmp/variant-cli778896582": exit status 2
make: *** [Makefile:4: build] Error 1
The command '/bin/sh -c make build' returned a non-zero code: 2
make[1]: *** [docker/build] Error 2
make: *** [build] Error 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant