@@ -41,11 +41,17 @@ const (
4141)
4242
4343var (
44- baseArchs = []string {"386" , "amd64" , "arm" , "arm64" , "ppc64le" , "s390x" }
45- winArchs = []string {"386" , "amd64" , "arm64" }
46- winContainerArchs = []string {"amd64" }
47- darwinArchs = []string {"amd64" , "arm64" }
48- k8sArchs = []string {"amd64" , "arm64" , "ppc64le" , "s390x" }
44+ baseArchs = []string {"386" , "amd64" , "arm" , "arm64" , "ppc64le" , "s390x" }
45+ winArchs = []string {"386" , "amd64" , "arm64" }
46+ winContainerArchs = []string {"amd64" }
47+ darwinArchs = []string {"amd64" , "arm64" }
48+ k8sArchs = []string {"amd64" , "arm64" , "ppc64le" , "s390x" }
49+ dockerHubFullDescriptions = map [string ]string {
50+ coreDistro : "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector/refs/heads/main/README.md" ,
51+ contribDistro : "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector-contrib/refs/heads/main/README.md" ,
52+ otlpDistro : "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector-releases/refs/heads/main/distributions/otelcol-otlp/README.md" ,
53+ k8sDistro : "https://raw.githubusercontent.com/open-telemetry/opentelemetry-collector-releases/refs/heads/main/distributions/otelcol-k8s/README.md" ,
54+ }
4955
5056 imageRepos = []string {dockerHub , ghcr }
5157
@@ -141,7 +147,7 @@ var (
141147 d .containerImageManifests = slices .Concat (
142148 newContainerImageManifests (d .name , "linux" , k8sArchs , containerImageOptions {}),
143149 )
144- }).WithDefaultArchives ().WithDefaultChecksum ().WithDefaultSigns ().WithDefaultDockerSigns ().WithDefaultSBOMs ().Build ()
150+ }).WithDefaultArchives ().WithDefaultChecksum ().WithDefaultSigns ().WithDefaultDockerSigns ().WithDefaultDockerHubs (). WithDefaultSBOMs ().Build ()
145151)
146152
147153type buildConfig interface {
@@ -285,6 +291,13 @@ func (b *distributionBuilder) WithDefaultDockerSigns() *distributionBuilder {
285291 return b
286292}
287293
294+ func (b * distributionBuilder ) WithDefaultDockerHubs () * distributionBuilder {
295+ b .configFuncs = append (b .configFuncs , func (d * distribution ) {
296+ d .dockerhubs = b .dockerHubs ()
297+ })
298+ return b
299+ }
300+
288301func (b * distributionBuilder ) dockerSigns () []config.Sign {
289302 return []config.Sign {
290303 {
@@ -297,6 +310,22 @@ func (b *distributionBuilder) dockerSigns() []config.Sign {
297310 }
298311}
299312
313+ func (b * distributionBuilder ) dockerHubs () []config.DockerHub {
314+ return []config.DockerHub {
315+ {
316+ Images : []string {
317+ fmt .Sprintf ("%s/%s" , dockerHub , imageName (b .dist .name )),
318+ },
319+ Description : "OpenTelemetry Collector" ,
320+ FullDescription : config.IncludedMarkdown {
321+ FromURL : config.IncludeFromURL {
322+ URL : dockerHubFullDescriptions [b .dist .name ],
323+ },
324+ },
325+ },
326+ }
327+ }
328+
300329func (b * distributionBuilder ) WithDefaultSBOMs () * distributionBuilder {
301330 b .configFuncs = append (b .configFuncs , func (d * distribution ) {
302331 d .sboms = b .sboms ()
@@ -332,6 +361,7 @@ func (b *distributionBuilder) WithPackagingDefaults() *distributionBuilder {
332361 WithDefaultNfpms ().
333362 WithDefaultMSIConfig ().
334363 WithDefaultSigns ().
364+ WithDefaultDockerHubs ().
335365 WithDefaultDockerSigns ().
336366 WithDefaultSBOMs ()
337367}
@@ -383,6 +413,7 @@ type distribution struct {
383413 containerImageManifests []config.DockerManifest
384414 signs []config.Sign
385415 dockerSigns []config.Sign
416+ dockerhubs []config.DockerHub
386417 sboms []config.SBOM
387418 checksum config.Checksum
388419}
@@ -413,6 +444,7 @@ func (d *distribution) BuildProject() config.Project {
413444 DockerManifests : d .containerImageManifests ,
414445 Signs : d .signs ,
415446 DockerSigns : d .dockerSigns ,
447+ DockerHubs : d .dockerhubs ,
416448 SBOMs : d .sboms ,
417449 Version : 2 ,
418450 Monorepo : config.Monorepo {
0 commit comments