Automation tool for releasing InstaSlice operator builds to OperatorHub.
The tool requires the following dependencies:
- Python 3.8+: Runtime environment
- PyYAML: Python YAML parser (installed via setup.sh)
- git: Version control operations
- skopeo: Container image inspection
- opm v1.47.0+: OLM package manager for FBC generation
- Clone the repository and navigate to the release-automation directory:
cd /path/to/konflux-agent/release-automation- Run the setup script:
./setup.shThis will:
- Install PyYAML Python package
- Make scripts executable
- Check dependencies:
./release.sh --check-depsIf any dependencies are missing, install them:
- Git: https://git-scm.com/downloads
- Skopeo: https://github.com/containers/skopeo/blob/main/install.md
- OPM: https://github.com/operator-framework/operator-registry/releases
- PyYAML:
pip3 install --user PyYAMLor run./setup.sh
Run a release (with dry-run first):
# Dry run - no commits
./release.sh --dry-run
# Actual release
./release.shThe tool will:
- Get the latest operator bundle SHA from the
nextbranch - Update the v4.19 FBC catalog template
- Regenerate the catalog using
opm - Commit the changes locally
- Display next steps for pushing
# Use custom repository paths
./release.sh --operator-repo /path/to/operator --fbc-repo /path/to/fbc
# Release for different OCP version
./release.sh --ocp-version v4.18
# Verbose logging
./release.sh --verbose
# Show help
./release.sh --help