Skip to content

Commit 414df84

Browse files
authored
Build: Add command to publish to AWS Marketplace through the pipeline (grafana#59068)
* Remove generic variables from publish github action * Create publish aws cmd to automate aws releases * Add tests to publish aws cmd * Replace fmt with log for prints * Remove unnecessary type assertions * Readd mistakenly removed go package * Replace log with fmt for prints due to conflicts * Update github tests to conform with casing
1 parent 41b3398 commit 414df84

File tree

7 files changed

+577
-28
lines changed

7 files changed

+577
-28
lines changed

Diff for: go.mod

+7-1
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,6 @@ require (
257257
github.com/grafana/dskit v0.0.0-20211011144203-3a88ec0b675f
258258
github.com/jmoiron/sqlx v1.3.5
259259
github.com/matryer/is v1.4.0
260-
github.com/parca-dev/parca v0.12.1
261260
github.com/urfave/cli v1.22.9
262261
go.etcd.io/etcd/api/v3 v3.5.4
263262
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.32.0
@@ -275,8 +274,11 @@ require (
275274
github.com/armon/go-metrics v0.3.10 // indirect
276275
github.com/bmatcuk/doublestar v1.1.1 // indirect
277276
github.com/buildkite/yaml v2.1.0+incompatible // indirect
277+
github.com/containerd/containerd v1.6.8 // indirect
278278
github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
279279
github.com/davecgh/go-spew v1.1.1 // indirect
280+
github.com/docker/distribution v2.8.1+incompatible // indirect
281+
github.com/docker/go-connections v0.4.0 // indirect
280282
github.com/drone-runners/drone-runner-docker v1.8.2 // indirect
281283
github.com/drone/drone-go v1.7.1 // indirect
282284
github.com/drone/envsubst v1.0.3 // indirect
@@ -296,6 +298,9 @@ require (
296298
github.com/mitchellh/copystructure v1.2.0 // indirect
297299
github.com/mitchellh/mapstructure v1.4.3 // indirect
298300
github.com/mitchellh/reflectwalk v1.0.2 // indirect
301+
github.com/opencontainers/go-digest v1.0.0 // indirect
302+
github.com/opencontainers/image-spec v1.0.3-0.20211202183452-c5a74bcca799 // indirect
303+
github.com/parca-dev/parca v0.12.1 // indirect
299304
github.com/rivo/uniseg v0.2.0 // indirect
300305
github.com/russross/blackfriday/v2 v2.1.0 // indirect
301306
github.com/segmentio/asm v1.1.4 // indirect
@@ -327,6 +332,7 @@ require (
327332
github.com/chromedp/cdproto v0.0.0-20220208224320-6efb837e6bc2 // indirect
328333
github.com/coreos/go-semver v0.3.0 // indirect
329334
github.com/dgryski/go-metro v0.0.0-20211217172704-adc40b04c140 // indirect
335+
github.com/docker/docker v20.10.21+incompatible
330336
github.com/elazarl/goproxy v0.0.0-20220115173737-adb46da277ac // indirect
331337
github.com/emirpasic/gods v1.12.0 // indirect
332338
github.com/ghodss/yaml v1.0.1-0.20190212211648-25d852aebe32 // indirect

Diff for: go.sum

+4
Original file line numberDiff line numberDiff line change
@@ -579,6 +579,7 @@ github.com/containerd/containerd v1.5.0-rc.0/go.mod h1:V/IXoMqNGgBlabz3tHD2TWDoT
579579
github.com/containerd/containerd v1.5.1/go.mod h1:0DOxVqwDy2iZvrZp2JUx/E+hS0UNTVn7dJnIOwtYR4g=
580580
github.com/containerd/containerd v1.5.4/go.mod h1:sx18RgvW6ABJ4iYUw7Q5x7bgFOAB9B6G7+yO0XBc4zw=
581581
github.com/containerd/containerd v1.6.8 h1:h4dOFDwzHmqFEP754PgfgTeVXFnLiRc6kiqC7tplDJs=
582+
github.com/containerd/containerd v1.6.8/go.mod h1:By6p5KqPK0/7/CgO/A6t/Gz+CUYUu2zf1hUaaymVXB0=
582583
github.com/containerd/continuity v0.0.0-20190426062206-aaeac12a7ffc/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y=
583584
github.com/containerd/continuity v0.0.0-20190815185530-f2a389ac0a02/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y=
584585
github.com/containerd/continuity v0.0.0-20191127005431-f65d91d395eb/go.mod h1:GL3xCUCBDV3CZiTSEKksMWbLE66hEyuu9qyDOOqM47Y=
@@ -751,6 +752,7 @@ github.com/docker/distribution v2.7.0+incompatible/go.mod h1:J2gT2udsDAN96Uj4Kfc
751752
github.com/docker/distribution v2.7.1-0.20190205005809-0d3efadf0154+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
752753
github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
753754
github.com/docker/distribution v2.8.1+incompatible h1:Q50tZOPR6T/hjNsyc9g8/syEs6bk8XXApsHjKukMl68=
755+
github.com/docker/distribution v2.8.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
754756
github.com/docker/go-connections v0.3.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=
755757
github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ=
756758
github.com/docker/go-connections v0.4.0/go.mod h1:Gbd7IOopHjR8Iph03tsViu4nIes5XhDvyHbTtUxmeec=
@@ -2011,6 +2013,7 @@ github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3I
20112013
github.com/opencontainers/image-spec v1.0.0/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0=
20122014
github.com/opencontainers/image-spec v1.0.1/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0=
20132015
github.com/opencontainers/image-spec v1.0.3-0.20211202183452-c5a74bcca799 h1:rc3tiVYb5z54aKaDfakKn0dDjIyPpTtszkjuMzyt7ec=
2016+
github.com/opencontainers/image-spec v1.0.3-0.20211202183452-c5a74bcca799/go.mod h1:BtxoFyWECRxE4U/7sNtV5W15zMzWCbyJoFRP3s7yZA0=
20142017
github.com/opencontainers/runc v0.0.0-20190115041553-12f6a991201f/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U=
20152018
github.com/opencontainers/runc v0.1.1/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U=
20162019
github.com/opencontainers/runc v1.0.0-rc8.0.20190926000215-3e425f80a8c9/go.mod h1:qT5XzbpPznkRYVz/mWwUaVBUv2rmF59PVA73FjuZG0U=
@@ -3483,6 +3486,7 @@ k8s.io/kube-openapi v0.0.0-20200410145947-61e04a5be9a6/go.mod h1:GRQhZsXIAJ1xR0C
34833486
k8s.io/kube-openapi v0.0.0-20200805222855-6aeccd4b50c6/go.mod h1:UuqjUnNftUyPE5H64/qeyjQoUZhGpeFDVdxjTeEVN2o=
34843487
k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd/go.mod h1:WOJ3KddDSol4tAGcJo0Tvi+dK12EcqSLqcWsryKMpfM=
34853488
k8s.io/kube-openapi v0.0.0-20210305001622-591a79e4bda7/go.mod h1:wXW5VT87nVfh/iLV8FpR2uDvrFyomxbtb1KivDbvPTE=
3489+
k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e h1:KLHHjkdQFomZy8+06csTWZ0m1343QqxZhR2LJ1OxCYM=
34863490
k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw=
34873491
k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42 h1:Gii5eqf+GmIEwGNKQYQClCayuJCe2/4fZUvF7VG99sU=
34883492
k8s.io/kubernetes v1.13.0/go.mod h1:ocZa8+6APFNC2tX1DZASIbocyYT5jHzqFVsY5aoB7Jk=

Diff for: pkg/build/cmd/main.go

+29-2
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ func main() {
225225
{
226226
Name: "github",
227227
Usage: "Publish packages to GitHub releases",
228-
Action: PublishGitHub,
228+
Action: PublishGithub,
229229
Flags: []cli.Flag{
230230
&dryRunFlag,
231231
&cli.StringFlag{
@@ -240,14 +240,41 @@ func main() {
240240
},
241241
&cli.StringFlag{
242242
Name: "tag",
243-
Usage: "Release tag (default from metadata)ß",
243+
Usage: "Release tag (default from metadata)",
244244
},
245245
&cli.BoolFlag{
246246
Name: "create",
247247
Usage: "Create release if it doesn't exist",
248248
},
249249
},
250250
},
251+
{
252+
Name: "aws",
253+
Usage: "Publish image to AWS Marketplace releases",
254+
Action: PublishAwsMarketplace,
255+
Flags: []cli.Flag{
256+
&dryRunFlag,
257+
&cli.StringFlag{
258+
Name: "version",
259+
Usage: "Release version (default from metadata)",
260+
},
261+
&cli.StringFlag{
262+
Name: "image",
263+
Required: true,
264+
Usage: "Name of the image to be released",
265+
},
266+
&cli.StringFlag{
267+
Name: "repo",
268+
Required: true,
269+
Usage: "AWS Marketplace ECR repository",
270+
},
271+
&cli.StringFlag{
272+
Name: "product",
273+
Required: true,
274+
Usage: "AWS Marketplace product identifier",
275+
},
276+
},
277+
},
251278
},
252279
},
253280
}

0 commit comments

Comments
 (0)