DL3034 - Use non-interactive zypper

Description

zypper commands should run non-interactively to avoid builds waiting for confirmation.

Goals

Specification

  1. Iterate over each RUN instruction in the Dockerfile and split it into shell command segments.
  2. For every segment beginning with zypper followed by one of the actions install, in, remove, rm, source-install, si, or patch, check for a non-interactive flag.
  3. Acceptable flags are -y, -n, --non-interactive, or --no-confirm.
  4. If the required flag is missing, emit DL3034 pointing to the RUN instruction with the message Non-interactive switch missing from zypper command: zypper install -y.

(c) 2025 Asymmetric Effort, LLC. scaldwell@asymmetric-effort.com Asymmetric Effort logo