This document describes the Loki Operator image build and push strategy.

Build & Push Strategy

DockerHub (docker.io)

ImageTriggerOrganizationTagWorkflow File
loki-operatorPush to maingrafanalatestoperator-images.yaml
loki-operatorRelease createdgrafana{version}operator-release-please.yml

Quay.io

ImageTriggerOrganizationTagWorkflow File
loki-operatorPush to mainopenshift-logginglatestoperator-images.yaml
loki-operator-bundlePush to mainopenshift-logginglatestoperator-images.yaml
storage-size-calculatorPush to mainopenshift-logginglatestoperator-images.yaml

Workflow Files

.github/workflows/operator-images.yaml

  • Triggers: Push to main, pull requests, manual dispatch
  • Purpose: Continuous integration builds
  • Images: All operator images for development and testing

.github/workflows/operator-release-please.yml

  • Triggers: When release-please creates a new release
  • Purpose: Production release builds
  • Images: Versioned release images

.github/workflows/operator-reusable-image-build.yml

  • Purpose: Centralized build workflow used by all other workflows
  • Features: Multi-platform builds (amd64, arm64, arm), registry-based authentication

Image Details

ImageDockerfileContextPurpose
loki-operatoroperator/Dockerfileoperator/Main operator binary
loki-operator-bundleoperator/bundle/openshift/bundle.Dockerfileoperator/bundle/openshift/OpenShift bundle
storage-size-calculatoroperator/calculator.Dockerfileoperator/Storage calculator utility