k8snetworkplumbingwg / ovs-cni

Open vSwitch CNI plugin
Apache License 2.0
218 stars 70 forks source link

Keep all binaries in a single container image #244

Closed phoracek closed 1 year ago

phoracek commented 1 year ago

What this PR does / why we need it:

Until now, each binary was kept in its own container image. That is expensive on resource and also introduces non-negligible maintenance cost.

All these containers are always deployed under a single DaemonSet and they only serve to deliver basic binaries, thus there is no reason to keep them split.

With this patch, all four container images get merged into one.

Special notes for your reviewer:

  1. mirror/producer and mirror/consumer were renamed to mirror-producer and mirror-consumer respectively, to avoid need to recursively iterate all cmd/ subdirectories
  2. All dockerfiles were merged and moved under a single cmd/Dockerfile
  3. The three init containers deploying each of the binaries were merged into one
  4. All three CNI plugins and the marker are now shipped in a single image ovs-cni-plugin

Release note:

NONE
kubevirt-bot commented 1 year ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: phoracek, qinqon

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files: - ~~[OWNERS](https://github.com/k8snetworkplumbingwg/ovs-cni/blob/main/OWNERS)~~ [phoracek] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment