Skip to content
Merged
Show file tree
Hide file tree
Changes from 78 commits
Commits
Show all changes
81 commits
Select commit Hold shift + click to select a range
229a34e
chore(core): remove unnecessary binaries
universal-itengineer Mar 29, 2025
aead539
cdi-artifact: rm cloner_startup.sh
universal-itengineer Mar 29, 2025
97baf5b
change import
universal-itengineer Mar 29, 2025
0ef11fe
cleanup cdi-importer
universal-itengineer Mar 31, 2025
b8a5fd1
cdi-importer: remove sh, qemu-io,sqlite3 pkgs, add lib libsqlite3
universal-itengineer Mar 31, 2025
afab131
cloner, dvcr-artifact, rm sh and other
universal-itengineer Mar 31, 2025
5f40951
virt-handler: rm bins bash,sh and etc
universal-itengineer Mar 31, 2025
230ab7e
virt-artifact, refactor bins
universal-itengineer Mar 31, 2025
ad4ea84
virt-artifact: add source repo var, virt-launcher: rm some binaries
universal-itengineer Mar 31, 2025
aa50330
add echo in Taskfile for show wich dir will be delete
universal-itengineer Mar 31, 2025
db3d97b
virt-laucnher: rm bash sh and run util sleep directly
universal-itengineer Mar 31, 2025
9622bb8
refactor node-labeller patch, run without sh
universal-itengineer Mar 31, 2025
d947983
resolve conflict
universal-itengineer Apr 9, 2025
3899257
virt-launcher: remove unnecessary commented bins
universal-itengineer Mar 31, 2025
9b9c0d9
virt-handler: remove unnecessary commented bins
universal-itengineer Mar 31, 2025
06f7cae
virt-handler: remove procps
universal-itengineer Mar 31, 2025
f80bd43
virt-laucnher: add cp util
universal-itengineer Mar 31, 2025
b1b779b
virt-launcher: rm sysctl
universal-itengineer Mar 31, 2025
1652345
virt-launcher: comment utils
universal-itengineer Mar 31, 2025
4a935a4
virt-launcher: add static bin for RenderHotplugAttachmentTriggerPodTe…
universal-itengineer Mar 31, 2025
e6c4432
cdi-cloner remove comented mount,umount
universal-itengineer Apr 1, 2025
acd47df
remove echo, bash,cp from virt-controller template.go by patch
universal-itengineer Apr 1, 2025
082ed4e
back cp util to virt-launcher
universal-itengineer Apr 1, 2025
3dc5a70
temp_pod
universal-itengineer Apr 1, 2025
98a20fe
dvcr-artifact: back file
universal-itengineer Apr 1, 2025
9285a14
dvcr-artifact: remove commented bins
universal-itengineer Apr 1, 2025
1dfb63d
virt-handler: remove commented bins, like pgrep and etc
universal-itengineer Apr 1, 2025
3a40f50
virt-handler: rm chacl
universal-itengineer Apr 1, 2025
33db83e
fix patch formatting
universal-itengineer Apr 1, 2025
5cd95e6
virt-launcher: fix build and copy libs
universal-itengineer Apr 1, 2025
b85b3a0
tmp, add build_version
universal-itengineer Apr 1, 2025
ca932a5
test cache ver
universal-itengineer Apr 1, 2025
c4716c0
add dbg msgs
universal-itengineer Apr 1, 2025
e153491
copy libs via for
universal-itengineer Apr 1, 2025
32ba827
copy with use * libs
universal-itengineer Apr 1, 2025
ff721b2
test via relocate_binaries LIBS and FILES
universal-itengineer Apr 1, 2025
db14543
dbg json libs
universal-itengineer Apr 1, 2025
4cb5bfe
copy libjson-c.so.5
universal-itengineer Apr 1, 2025
3ce1a54
try copy via cp jsonlib
universal-itengineer Apr 1, 2025
a0b6a40
try to reloc json to dir reloc
universal-itengineer Apr 1, 2025
462dcce
change order for copy libs
universal-itengineer Apr 1, 2025
2f61474
1042025.4
universal-itengineer Apr 1, 2025
c92ad10
copy libs via cp
universal-itengineer Apr 1, 2025
d9707f9
reloc libs
universal-itengineer Apr 1, 2025
0e0eca6
add caps utils, set caps for virt-launcher-monitor
universal-itengineer Apr 1, 2025
e9fbf37
add libs
universal-itengineer Apr 1, 2025
db20f58
refactor+cleanup
universal-itengineer Apr 1, 2025
c5aaf89
add info about patches
universal-itengineer Apr 1, 2025
c51d11d
refactor virt-laucnher,handler
universal-itengineer Apr 2, 2025
1c45aa3
add bin caps to vl
universal-itengineer Apr 2, 2025
c2e1602
fix caps cap_net_bind_service=+ep
universal-itengineer Apr 2, 2025
db6f775
back caps to 'cap_net_bind_service=+eip'
universal-itengineer Apr 2, 2025
e22ab2b
remove utils caps
universal-itengineer Apr 2, 2025
08e7354
coment binaries tst1
universal-itengineer Apr 3, 2025
db85d01
rm ip,bridge sysctl, libffi, semenage
universal-itengineer Apr 3, 2025
70cfef7
rm blockdev
universal-itengineer Apr 3, 2025
946388c
rm passt
universal-itengineer Apr 3, 2025
1cf8a1b
add mount
universal-itengineer Apr 4, 2025
4e101a0
rm mount
universal-itengineer Apr 4, 2025
dce2b70
install packages to separate stage
universal-itengineer Apr 4, 2025
514f812
remove commented bins for import to virtlauncher
universal-itengineer Apr 4, 2025
9d6c108
add cache version
universal-itengineer Apr 4, 2025
0c281a2
add cache version vl
universal-itengineer Apr 4, 2025
e52a6c3
remove virtctl from virt-operator
universal-itengineer Apr 7, 2025
aadd448
remove cacheVersion
universal-itengineer Apr 7, 2025
7c5cbc9
rm qemu-io from cdi-importer
universal-itengineer Apr 7, 2025
ac88dee
remove virsh bin
universal-itengineer Apr 8, 2025
7061626
fix dvcr binaries images
universal-itengineer Apr 8, 2025
4c61dfd
dvcr: change stage to 'before: setup'
universal-itengineer Apr 8, 2025
d2ed88a
virt-handler: add sysctl
universal-itengineer Apr 8, 2025
e757f6e
virt-handler: replace sysctl by 'os.ReadFile(/proc/sys/kernel/sched_r…
universal-itengineer Apr 9, 2025
8dd0aba
virt-handler: rm sysctl bins
universal-itengineer Apr 9, 2025
9e4a1ee
add patch readme
universal-itengineer Apr 9, 2025
3841a54
Update images/bounder/werf.inc.yaml
universal-itengineer Apr 9, 2025
2c8fe59
Update images/virt-artifact/patches/README.md
universal-itengineer Apr 9, 2025
dc9a3be
Update images/virt-launcher/werf.inc.yaml
universal-itengineer Apr 9, 2025
3026d20
add space Readme
universal-itengineer Apr 9, 2025
58ec6f4
remove commented sysctl bins
universal-itengineer Apr 9, 2025
c634b60
remove unicode symbols
universal-itengineer Apr 10, 2025
9570918
refactor patches virt-artifact
universal-itengineer Apr 10, 2025
56ba805
rename 047 patch
universal-itengineer Apr 10, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions images/bounder/static_binaries/hello_bounder.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#include <stdio.h>

int main() {
printf("Hello, my name is Bounder. I’m here to fulfill my destiny… to mount PVCs and vanish into the void.\n");
return 0;
}
32 changes: 22 additions & 10 deletions images/bounder/werf.inc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,31 @@
image: {{ $.ImageName }}
fromImage: distroless
import:
- image: {{ $.ImageName }}-binaries
add: /relocate
to: /
- image: {{ $.ImageName }}-cbuilder
add: /bins
to: /usr/local/bin
after: setup
imageSpec:
config:
cmd: ["echo", "Hi, my name is Bounder. I’m here to fulfill my destiny… to mount PVCs and vanish into the void."]
cmd: ["hello_bounder"]
---
{{- $binaries := "/usr/bin/echo" }}

image: {{ $.ImageName }}-binaries
image: {{ $.ImageName }}-cbuilder
final: false
fromImage: base-alt-p11-binaries
from: {{ .Images.BASE_DEBIAN_BOOKWORM_SLIM }}
git:
- add: /images/{{ $.ImageName }}/static_binaries
to: /
stageDependencies:
install:
- '*.c'
shell:
setup:
- ./relocate_binaries.sh -i "{{ $binaries }}" -o /relocate
beforeInstall:
- |
apt-get update && apt-get install --yes gcc musl-dev musl-tools
apt-get clean
install:
- |
echo "Building simple app that prints hello cdi"
mkdir -p /bins
musl-gcc -static -Os -o /bins/hello_bounder hello_bounder.c
strip /bins/hello_bounder
1 change: 0 additions & 1 deletion images/cdi-artifact/werf.inc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,6 @@ shell:
- go build -ldflags="-s -w" -o /cdi-binaries/csv-generator ./tools/csv-generator

- strip /cdi-binaries/*
- cp cmd/cdi-cloner/cloner_startup.sh /cdi-binaries
- chmod +x /cdi-binaries/*
- chown -R 64535:64535 /cdi-binaries/*
- ls -la /cdi-binaries
Expand Down
44 changes: 23 additions & 21 deletions images/cdi-cloner/werf.inc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,44 +6,46 @@ import:
add: /relocate
to: /
before: setup
imageSpec:
config:
entrypoint: ["/usr/bin/cloner-startup"]
user: 64535
---
{{- $name := print $.ImageName "-dependencies" -}}
{{- define "$name" -}}
binaries:
- /usr/bin/cloner-startup
- /usr/bin/hello
- /usr/bin/cdi-cloner
{{- end -}}

{{ $virtCDIClonerDependencies := include "$name" . | fromYaml }}

image: {{ $.ImageName }}-bins
final: false
fromImage: base-alt-p11-binaries
import:
- image: {{ $.ImageName }}-gobuild
add: /cdi-binaries
to: /usr/bin
includePaths:
- cloner-startup
before: setup
before: install
- image: cdi-artifact-cbuilder
add: /bins
to: /usr/bin
before: setup
before: install
includePaths:
- hello
- image: cdi-artifact
add: /cdi-binaries
to: /usr/bin
includePaths:
- cdi-cloner
before: setup
before: install
# Source https://github.com/kubevirt/containerized-data-importer/blob/v1.60.3/cmd/cdi-cloner/BUILD.bazel
imageSpec:
config:
entrypoint: ["/usr/bin/cloner-startup"]
user: 64535
---
{{- $name := print $.ImageName "-dependencies" -}}
{{- define "$name" -}}
binaries:
- /usr/bin/mount
- /usr/bin/umount
{{- end -}}

{{ $virtCDIClonerDependencies := include "$name" . | fromYaml }}

image: {{ $.ImageName }}-bins
final: false
fromImage: base-alt-p11-binaries
shell:
beforeInstall:
install:
- |
/relocate_binaries.sh -i "{{ $virtCDIClonerDependencies.binaries | join " " }}" -o /relocate
---
Expand Down
16 changes: 7 additions & 9 deletions images/cdi-importer/werf.inc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,36 +6,33 @@ import:
add: /relocate
to: /
before: setup
# Source https://github.com/kubevirt/containerized-data-importer/blob/v1.58.0/cmd/cdi-importer/BUILD.bazel
# Source https://github.com/kubevirt/containerized-data-importer/blob/v1.60.3/cmd/cdi-importer/BUILD.bazel
imageSpec:
config:
entrypoint: ["/usr/bin/cdi-importer", "-alsologtostderr"]
user: 64535

---
{{- define "cdi-importer-deps" -}}
libraries:
- libsqlite3
packages:
- qemu-img
- sqlite3
- libnbd
- nbd-client
- nbd-server
binaries:
- /usr/bin/sh
- /usr/bin/rm
- /usr/bin/grep
# Qemu-img
- /usr/bin/qemu-img
- /usr/bin/qemu-io
- /usr/bin/qemu-nbd
# All nbd binaries
- /usr/bin/nbd*
# Mount
- /usr/bin/mount /usr/bin/umount
# Sqlite libs
- /usr/lib64/libsqlite3.so.0
# Block device binaries
- /usr/sbin/blockdev
# Sqlite3
- /usr/bin/sqldiff /usr/bin/sqlite3 /usr/bin/sqlite3_analyzer
# CDI binaries
- /usr/bin/cdi-containerimage-server /usr/bin/cdi-image-size-detection /usr/bin/cdi-importer /usr/bin/cdi-source-update-poller
{{- end -}}
Expand All @@ -59,7 +56,8 @@ shell:
install:
- |
apt-get update && apt-get install --yes \
{{ $cdiImporterDependencies.packages | join " " }}
{{ $cdiImporterDependencies.packages | join " " }} \
{{ $cdiImporterDependencies.libraries | join " " }}
- apt-get clean
- rm --recursive --force /var/lib/apt/lists/ftp.altlinux.org* /var/cache/apt/*.bin
setup:
Expand Down
21 changes: 19 additions & 2 deletions images/dvcr-artifact/werf.inc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,24 @@ shell:
- chown -R 64535:64535 /out

---
{{- $binaries := "/usr/bin/sh /usr/bin/rm /usr/bin/grep /usr/local/bin/dvcr-importer /usr/bin/qemu-img /usr/bin/qemu-io /usr/bin/qemu-nbd /usr/bin/nbd* /usr/bin/file /usr/share/file/magic /usr/share/file/magic.mgc /etc/magic /usr/bin/mount /usr/bin/umount /usr/local/bin/dvcr-uploader /usr/local/bin/dvcr-cleaner" }}
{{- $name := print $.ImageName "-dependencies" -}}
{{- define "$name" -}}
binaries:
- /usr/local/bin/dvcr-importer
- /usr/bin/qemu-img
- /usr/bin/qemu-nbd
- /usr/bin/nbd*
- /usr/bin/file
- /usr/share/file/magic
- /usr/share/file/magic.mgc
- /etc/magic
- /usr/bin/mount
- /usr/bin/umount
- /usr/local/bin/dvcr-uploader
- /usr/local/bin/dvcr-cleaner
{{- end -}}

{{ $dvcrDependencies := include "$name" . | fromYaml }}

image: {{ $.ImageName }}-bins
final: false
Expand All @@ -50,4 +67,4 @@ shell:
- rm --recursive --force /var/lib/apt/lists/ftp.altlinux.org* /var/cache/apt/*.bin
setup:
- |
/relocate_binaries.sh -i "{{ $binaries }}" -o /relocate
/relocate_binaries.sh -i "{{ $dvcrDependencies.binaries | join " " }}" -o /relocate
11 changes: 4 additions & 7 deletions images/dvcr/werf.inc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,14 @@ import:
- image: {{ $.ImageName }}-builder
add: /container-registry-binary
to: /usr/bin
after: install
before: setup
includePaths:
- registry
# Registry configuration is stored in configmap: templates/dvcr/configmap.yaml
- image: {{ $.ImageName }}-artifact-bins
add: /relocate
to: /
after: install
excludePaths:
- '**/dvcr-uploader'
- '**/dvcr-importer'
add: /relocate/usr/local/bin/dvcr-cleaner
to: /usr/local/bin/dvcr-cleaner
before: setup
imageSpec:
config:
user: 64535
Expand Down
2 changes: 1 addition & 1 deletion images/libvirt/install-libvirt.sh
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ $SRC_BUILD/src/libvirt_functions.stp to /usr/share/systemtap/tapset
$SRC_BUILD/tools/virt-host-validate to /usr/bin
# $SRC_BUILD/tools/virt-login-shell to /usr/bin
# $SRC_BUILD/tools/virt-login-shell-helper to /usr/libexec
$SRC_BUILD/tools/virsh to /usr/bin
# $SRC_BUILD/tools/virsh to /usr/bin
# $SRC_BUILD/tools/virt-admin to /usr/bin
$SRC_BUILD/tools/virt-pki-validate to /usr/bin
$SRC_BUILD/tools/virt-pki-query-dn to /usr/bin
Expand Down
1 change: 1 addition & 0 deletions images/virt-artifact/Taskfile.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ tasks:
read -p "Delete these directories? [y/N] " answer

if [[ "${answer}" != "${answer#[Yy]}" ]] ; then
echo "remove $PATH_KUBEVIRT"
rm -rf $PATH_KUBEVIRT
fi

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
diff --git a/pkg/virt-operator/resource/generate/components/daemonsets.go b/pkg/virt-operator/resource/generate/components/daemonsets.go
index 8fa14e93b5..001fd05bcd 100644
index 8fa14e93b5..93c55c1619 100644
--- a/pkg/virt-operator/resource/generate/components/daemonsets.go
+++ b/pkg/virt-operator/resource/generate/components/daemonsets.go
@@ -52,7 +52,6 @@ func RenderPrHelperContainer(image string, pullPolicy corev1.PullPolicy) corev1.
Expand All @@ -10,16 +10,23 @@ index 8fa14e93b5..001fd05bcd 100644
deploymentName := VirtHandlerName
imageName := fmt.Sprintf("%s%s", imagePrefix, deploymentName)
env := operatorutil.NewEnvVarMap(extraEnv)
@@ -123,7 +122,7 @@ func NewHandlerDaemonSet(namespace, repository, imagePrefix, version, launcherVe
@@ -117,14 +116,10 @@ func NewHandlerDaemonSet(namespace, repository, imagePrefix, version, launcherVe
pod.InitContainers = []corev1.Container{
{
Command: []string{
- "/bin/sh",
- "-c",
+ "node-labeller",
},
Image: launcherImage,
Name: "virt-launcher",
Args: []string{
- Args: []string{
- "node-labeller.sh",
+ "node-labeller",
},
- },
SecurityContext: &corev1.SecurityContext{
Privileged: pointer.Bool(true),
@@ -350,5 +349,4 @@ func NewHandlerDaemonSet(namespace, repository, imagePrefix, version, launcherVe
},
@@ -350,5 +345,4 @@ func NewHandlerDaemonSet(namespace, repository, imagePrefix, version, launcherVe
pod.Containers = append(pod.Containers, RenderPrHelperContainer(prHelperImage, pullPolicy))
}
return daemonset, nil
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
diff --git a/pkg/virt-operator/resource/generate/components/daemonsets.go b/pkg/virt-operator/resource/generate/components/daemonsets.go
index 93c55c1619..ebc1e790bf 100644
--- a/pkg/virt-operator/resource/generate/components/daemonsets.go
+++ b/pkg/virt-operator/resource/generate/components/daemonsets.go
@@ -145,8 +145,8 @@ func NewHandlerDaemonSet(namespace, repository, imagePrefix, version, launcherVe
Name: "virt-launcher-image-holder",
Image: launcherImage,
ImagePullPolicy: corev1.PullIfNotPresent,
- Command: []string{"/bin/sh", "-c"},
- Args: []string{"sleep infinity"},
+ Command: []string{"sleep"},
+ Args: []string{"infinity"},
Resources: corev1.ResourceRequirements{
Limits: map[corev1.ResourceName]resource.Quantity{
corev1.ResourceCPU: resource.MustParse("100m"),
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
diff --git a/pkg/virt-controller/services/template.go b/pkg/virt-controller/services/template.go
index 1221448946..7e2519d129 100644
--- a/pkg/virt-controller/services/template.go
+++ b/pkg/virt-controller/services/template.go
@@ -382,9 +382,7 @@ func (t *templateService) renderLaunchManifest(vmi *v1.VirtualMachineInstance, i
if tempPod {
logger := log.DefaultLogger()
logger.Infof("RUNNING doppleganger pod for %s", vmi.Name)
- command = []string{"/bin/bash",
- "-c",
- "echo", "bound PVCs"}
+ command = []string{"temp_pod"}
} else {
command = []string{"/usr/bin/virt-launcher-monitor",
"--qemu-timeout", generateQemuTimeoutWithJitter(t.launcherQemuTimeout),
@@ -921,7 +919,7 @@ func (t *templateService) RenderHotplugAttachmentPodTemplate(volumes []*v1.Volum
zero := int64(0)
runUser := int64(util.NonRootUID)
sharedMount := k8sv1.MountPropagationHostToContainer
- command := []string{"/bin/sh", "-c", "/usr/bin/container-disk --copy-path /path/hp"}
+ command := []string{"/usr/bin/container-disk", "--copy-path", "/path/hp"}

tmpTolerations := make([]k8sv1.Toleration, len(ownerPod.Spec.Tolerations))
copy(tmpTolerations, ownerPod.Spec.Tolerations)
@@ -1076,11 +1074,9 @@ func (t *templateService) RenderHotplugAttachmentTriggerPodTemplate(volume *v1.V
sharedMount := k8sv1.MountPropagationHostToContainer
var command []string
if tempPod {
- command = []string{"/bin/bash",
- "-c",
- "exit", "0"}
+ command = []string{"temp_pod"}
} else {
- command = []string{"/bin/sh", "-c", "/usr/bin/container-disk --copy-path /path/hp"}
+ command = []string{"/usr/bin/container-disk", "--copy-path", "/path/hp"}
}

annotationsList := make(map[string]string)
diff --git a/pkg/virt-controller/watch/vmi_test.go b/pkg/virt-controller/watch/vmi_test.go
index b4b76bd73e..9fb2c56118 100644
--- a/pkg/virt-controller/watch/vmi_test.go
+++ b/pkg/virt-controller/watch/vmi_test.go
@@ -400,7 +400,7 @@ var _ = Describe("VirtualMachineInstance watcher", func() {

return ""
},
- Equal("/bin/bash -c echo bound PVCs"),
+ Equal("temp_pod"),
)

controller.Execute()
@@ -676,7 +676,7 @@ var _ = Describe("VirtualMachineInstance watcher", func() {

return ""
},
- Equal("/bin/bash -c echo bound PVCs"))
+ Equal("temp_pod"))
expectMatchingPodCreation(vmi, IsPodWithoutVmPayload)
expectVMIWithMatcherConditions(vmi.Namespace, vmi.Name, ContainElement(MatchFields(IgnoreExtras,
Fields{"Type": Equal(virtv1.VirtualMachineInstanceProvisioning)})),
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
diff --git a/pkg/virt-handler/node-labeller/node_labeller.go b/pkg/virt-handler/node-labeller/node_labeller.go
index e5ddaf3784..8de36d72c9 100644
--- a/pkg/virt-handler/node-labeller/node_labeller.go
+++ b/pkg/virt-handler/node-labeller/node_labeller.go
@@ -23,7 +23,7 @@ import (
"context"
"encoding/json"
"fmt"
- "os/exec"
+ "os"
"runtime"
"strings"
"time"
@@ -327,11 +327,12 @@ const kernelSchedRealtimeRuntimeInMicrosecods = "kernel.sched_rt_runtime_us"
// workloads at peak performance.

func isNodeRealtimeCapable() (bool, error) {
- ret, err := exec.Command("sysctl", kernelSchedRealtimeRuntimeInMicrosecods).CombinedOutput()
+ ret, err := os.ReadFile("/proc/sys/kernel/sched_rt_runtime_us")
if err != nil {
return false, err
}
- st := strings.Trim(string(ret), "\n")
+ sched_rt_runtime_us := strings.Trim(string(ret), "\n")
+ st := fmt.Sprintf("%s = %s", kernelSchedRealtimeRuntimeInMicrosecods, sched_rt_runtime_us)
return fmt.Sprintf("%s = -1", kernelSchedRealtimeRuntimeInMicrosecods) == st, nil
}

Loading
Loading