Skip to content

Commit 66fe68e

Browse files
author
Andrey Klimentyev
authored
Refactored code for a new go-containerregistry plugin (deckhouse#67)
1 parent 9074d53 commit 66fe68e

File tree

9 files changed

+450
-1368
lines changed

9 files changed

+450
-1368
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
steps:
1818
- uses: actions/setup-go@v2
1919
with:
20-
go-version: '1.18'
20+
go-version: '1.19'
2121

2222
- id: go-cache-paths
2323
run: |

Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
FROM golang:1.16-buster as build
1+
FROM golang:1.19-buster as build
22

33
WORKDIR /go/src/app
44
ADD . /go/src/app
55

66
RUN go get -d -v ./...
77

8-
RUN CGO_ENABLED=0 go build -a -ldflags '-extldflags "-static"' -o /go/bin/k8s-image-availability-exporter main.go
8+
RUN CGO_ENABLED=0 go build -a -ldflags '-s -w -extldflags "-static"' -o /go/bin/k8s-image-availability-exporter main.go
99

10-
FROM gcr.io/distroless/static-debian10
10+
FROM gcr.io/distroless/static-debian11
1111
COPY --from=build /go/bin/k8s-image-availability-exporter /
1212
ENTRYPOINT ["/k8s-image-availability-exporter"]

go.mod

Lines changed: 51 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,93 +1,73 @@
11
module github.com/flant/k8s-image-availability-exporter
22

3-
go 1.18
3+
go 1.19
44

55
require (
66
github.com/gammazero/deque v0.1.0
7-
github.com/google/go-containerregistry v0.6.0
8-
github.com/prometheus/client_golang v1.11.0
9-
github.com/sirupsen/logrus v1.8.1
10-
github.com/stretchr/testify v1.7.0
11-
github.com/vdemeester/k8s-pkg-credentialprovider v1.21.0
12-
k8s.io/api v0.22.2
13-
k8s.io/apimachinery v0.22.2
14-
k8s.io/client-go v0.22.2
15-
k8s.io/sample-controller v0.21.0
16-
sigs.k8s.io/controller-runtime v0.10.2
7+
github.com/google/go-containerregistry v0.13.0
8+
github.com/google/go-containerregistry/pkg/authn/kubernetes v0.0.0-20230206174024-62f183e54939
9+
github.com/prometheus/client_golang v1.14.0
10+
github.com/sirupsen/logrus v1.9.0
11+
github.com/stretchr/testify v1.8.1
12+
k8s.io/api v0.26.1
13+
k8s.io/apimachinery v0.26.1
14+
k8s.io/client-go v0.26.1
15+
k8s.io/sample-controller v0.26.1
16+
sigs.k8s.io/controller-runtime v0.14.4
1717
)
1818

1919
require (
2020
github.com/beorn7/perks v1.0.1 // indirect
21-
github.com/cespare/xxhash/v2 v2.1.1 // indirect
21+
github.com/cespare/xxhash/v2 v2.1.2 // indirect
2222
github.com/davecgh/go-spew v1.1.1 // indirect
23-
github.com/docker/cli v20.10.7+incompatible // indirect
24-
github.com/docker/distribution v2.7.1+incompatible // indirect
25-
github.com/docker/docker v20.10.7+incompatible // indirect
26-
github.com/docker/docker-credential-helpers v0.6.3 // indirect
27-
github.com/go-logr/logr v0.4.0 // indirect
23+
github.com/docker/cli v20.10.20+incompatible // indirect
24+
github.com/docker/distribution v2.8.1+incompatible // indirect
25+
github.com/docker/docker v20.10.20+incompatible // indirect
26+
github.com/docker/docker-credential-helpers v0.7.0 // indirect
27+
github.com/emicklei/go-restful/v3 v3.9.0 // indirect
28+
github.com/go-logr/logr v1.2.3 // indirect
29+
github.com/go-openapi/jsonpointer v0.19.5 // indirect
30+
github.com/go-openapi/jsonreference v0.20.0 // indirect
31+
github.com/go-openapi/swag v0.22.3 // indirect
2832
github.com/gogo/protobuf v1.3.2 // indirect
2933
github.com/golang/protobuf v1.5.2 // indirect
30-
github.com/google/go-cmp v0.5.6 // indirect
31-
github.com/google/gofuzz v1.1.0 // indirect
32-
github.com/googleapis/gnostic v0.4.1 // indirect
33-
github.com/hashicorp/golang-lru v0.5.1 // indirect
34+
github.com/google/gnostic v0.6.9 // indirect
35+
github.com/google/go-cmp v0.5.9 // indirect
36+
github.com/google/gofuzz v1.2.0 // indirect
3437
github.com/imdario/mergo v0.3.12 // indirect
35-
github.com/json-iterator/go v1.1.11 // indirect
36-
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
38+
github.com/josharian/intern v1.0.0 // indirect
39+
github.com/json-iterator/go v1.1.12 // indirect
40+
github.com/klauspost/compress v1.15.11 // indirect
41+
github.com/mailru/easyjson v0.7.7 // indirect
42+
github.com/matttproud/golang_protobuf_extensions v1.0.2 // indirect
43+
github.com/mitchellh/go-homedir v1.1.0 // indirect
3744
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
38-
github.com/modern-go/reflect2 v1.0.1 // indirect
45+
github.com/modern-go/reflect2 v1.0.2 // indirect
46+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
3947
github.com/opencontainers/go-digest v1.0.0 // indirect
40-
github.com/opencontainers/image-spec v1.0.1 // indirect
48+
github.com/opencontainers/image-spec v1.1.0-rc2 // indirect
4149
github.com/pkg/errors v0.9.1 // indirect
4250
github.com/pmezard/go-difflib v1.0.0 // indirect
43-
github.com/prometheus/client_model v0.2.0 // indirect
44-
github.com/prometheus/common v0.26.0 // indirect
45-
github.com/prometheus/procfs v0.6.0 // indirect
51+
github.com/prometheus/client_model v0.3.0 // indirect
52+
github.com/prometheus/common v0.37.0 // indirect
53+
github.com/prometheus/procfs v0.8.0 // indirect
4654
github.com/spf13/pflag v1.0.5 // indirect
47-
golang.org/x/net v0.0.0-20210525063256-abc453219eb5 // indirect
48-
golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c // indirect
49-
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect
50-
golang.org/x/sys v0.0.0-20210817190340-bfb29a6856f2 // indirect
51-
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d // indirect
52-
golang.org/x/text v0.3.6 // indirect
53-
golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac // indirect
55+
golang.org/x/net v0.3.1-0.20221206200815-1e63c2f08a10 // indirect
56+
golang.org/x/oauth2 v0.1.0 // indirect
57+
golang.org/x/sync v0.1.0 // indirect
58+
golang.org/x/sys v0.3.0 // indirect
59+
golang.org/x/term v0.3.0 // indirect
60+
golang.org/x/text v0.5.0 // indirect
61+
golang.org/x/time v0.3.0 // indirect
5462
google.golang.org/appengine v1.6.7 // indirect
55-
google.golang.org/protobuf v1.26.0 // indirect
63+
google.golang.org/protobuf v1.28.1 // indirect
5664
gopkg.in/inf.v0 v0.9.1 // indirect
5765
gopkg.in/yaml.v2 v2.4.0 // indirect
58-
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
59-
k8s.io/klog/v2 v2.8.0 // indirect
60-
k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a // indirect
61-
sigs.k8s.io/structured-merge-diff/v4 v4.1.0 // indirect
62-
sigs.k8s.io/yaml v1.2.0 // indirect
63-
)
64-
65-
replace (
66-
k8s.io/api => k8s.io/api v0.21.0
67-
k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.21.0
68-
k8s.io/apimachinery => k8s.io/apimachinery v0.21.0
69-
k8s.io/apiserver => k8s.io/apiserver v0.21.0
70-
k8s.io/cli-runtime => k8s.io/cli-runtime v0.21.0
71-
k8s.io/client-go => k8s.io/client-go v0.21.0
72-
k8s.io/cloud-provider => k8s.io/cloud-provider v0.21.0
73-
k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.21.0
74-
k8s.io/code-generator => k8s.io/code-generator v0.21.0
75-
k8s.io/component-base => k8s.io/component-base v0.21.0
76-
k8s.io/component-helpers => k8s.io/component-helpers v0.21.0
77-
k8s.io/controller-manager => k8s.io/controller-manager v0.21.0
78-
k8s.io/cri-api => k8s.io/cri-api v0.21.0
79-
k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.21.0
80-
k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.21.0
81-
k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.21.0
82-
k8s.io/kube-proxy => k8s.io/kube-proxy v0.21.0
83-
k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.21.0
84-
k8s.io/kubectl => k8s.io/kubectl v0.21.0
85-
k8s.io/kubelet => k8s.io/kubelet v0.21.0
86-
k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.21.0
87-
k8s.io/metrics => k8s.io/metrics v0.21.0
88-
k8s.io/mount-utils => k8s.io/mount-utils v0.21.0
89-
k8s.io/node-api => k8s.io/node-api v0.21.0
90-
k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.21.0
91-
k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.21.0
92-
k8s.io/sample-controller => k8s.io/sample-controller v0.21.0
66+
gopkg.in/yaml.v3 v3.0.1 // indirect
67+
k8s.io/klog/v2 v2.80.1 // indirect
68+
k8s.io/kube-openapi v0.0.0-20221012153701-172d655c2280 // indirect
69+
k8s.io/utils v0.0.0-20221128185143-99ec85e7a448 // indirect
70+
sigs.k8s.io/json v0.0.0-20220713155537-f223a00ba0e2 // indirect
71+
sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect
72+
sigs.k8s.io/yaml v1.3.0 // indirect
9373
)

0 commit comments

Comments
 (0)