Artifact Promotion Tooling
This repository contains a suite of tools responsible for artifact promotion in the Kubernetes project.
DISCLAIMER
Before getting started, it's important to note that the tooling stored here is an aggregate of several efforts to improve artifact promotion, across multiple SIGs, subprojects, and contributors.
We call that out to set the expectation that:
- you may see duplicated code within the codebase
- you may encounter multiple techniques/tools for accomplishing the same thing
- you will encounter several TODOs
- you will see gaps in documentation including:
- missing documentation
- example commands that may not work
- broken links
This list is far from exhaustive.
If you encounter issues, please search for existing issues/PRs in the repository and join the conversation.
If you cannot find an existing issue, please file a detailed report, so that maintainers can work on it.
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
cip-mm
cip-auditor
gh2gcs
krel promote-images
promobot-files
Installation
Requirements:
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
version output version information
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.