README
¶
Bundle
This repo is under active development. CLI and APIs are unstable
Bundle is an OpenShift Client (oc) plugin that manages OpenShift release, operator catalog, and associated container images.
Bundle management is a two part process:
- Bundle Creation (Internet Connected)
- Bundle Publishing (Disconnected)
Required dependencies
podman
(only required if not building multi-arch images, see below)
Multi-arch catalog images
docker buildx
is required to build multi-arch catalog images;
docker buildx build
is invoked by publish
when --buildx-platforms
is set.
Usage
The mirror registry reg.mirror.com
is used in this example.
Replace this value with a real registry host, or create a docker.io/library/registry:2
container locally.
- Download pull secret and place at
~/.docker/config.json
1.- Your mirror registry secret must have both push and pull scopes.
- Build:
make build
- Create then publish to your mirror registry:
./bin/oc-bundle create full --config imageset-config.yaml --dir test-create --output archives --log-level debug ./bin/oc-bundle publish --archive archives --dir test-publish --to-mirror reg.mirror.com --output results
For configuration and options, see the expanded overview and usage docs.
1 For this example, the create
and publish
steps are run on the same machine. Therefore your ~/.docker/config.json
should contain auth config for both release/catalog source images and your mirror registry.
Bundle Spec
See the config spec for an in-depth description of fields.
Note: The imageset-config.yaml
is only used during bundle creation.
Development
Requirements
- All top-level requirements
go
version 1.16+
Build
make
./bin/oc-bundle -h
Test
Unit:
make test-unit
E2E:
make test-e2e
Directories
¶
Path | Synopsis |
---|---|
cmd
|
|
pkg
|
|
bundle
Package bundle contains tools for managing container images for internet-disconnected systems.\.
|
Package bundle contains tools for managing container images for internet-disconnected systems.\. |
config/v1alpha1
Package v1alpha1 provides the ImageSetConfiguration and Metadata used for configuring oc imageset.
|
Package v1alpha1 provides the ImageSetConfiguration and Metadata used for configuring oc imageset. |