Profile
Back to NewsBack
GitHub Trending 2 min
Reader Mode
kubernetes-sigs/promo-tools: Container and file artifact promotion tooling for the Kubernetes project

kubernetes-sigs/promo-tools: Container and file artifact promotion tooling for the Kubernetes project

8 hours ago

Artifact Promotion Tooling

PkgGoDev</a> Go Report Card</a> Slack</a>

This repository contains a suite of tools responsible for artifact promotion in the Kubernetes project.

- Installation - User - Developer - Usage - Image promotion - File promotion - GitHub promotion

kpromo

kpromo, or the Kubernetes Promotion Tool, is the canonical tool for promoting Kubernetes project artifacts.

It wraps and unifies the functionality of multiple tools that have existed in the past:

  • cip
  • gh2gcs
  • krel promote-images
  • promobot-files

Installation

Requirements:

  • [Docker][docker]
  • [Go][golang]

User

If you're interested in installing kpromo from a tag:

go install sigs.k8s.io/promo-tools/v4/cmd/kpromo@<tag>
$(go env GOPATH)/bin/kpromo <subcommand>

Developer

If you're interested in actively contributing to kpromo or testing functionality which may not yet be in a tagged release, first fork/clone the repo and then run:

go install ./cmd/kpromo/...
$(go env GOPATH)/bin/kpromo <subcommand>

Usage

Usage:
  kpromo [command]

Available Commands: cip Promote images from a staging registry to production completion generate the autocompletion script for the specified shell gh Uploads GitHub releases to Google Cloud Storage help Help about any command manifest Generate/modify a manifest for artifact promotion pr Starts an image promotion for a given image tag run Run artifact promotion sigcheck Check and repair image signatures and promotion attestations version Prints the version

Image promotion

For background on the image promotion process, see here.

To create an image promotion PR via kpromo pr, see here.

File promotion

See here.

GitHub promotion

See here.

[docker]: https://docs.docker.com/get-docker [golang]: https://golang.org/doc/install

Chat with me