Support dockerd in-service patching with EXAMPLE_DOCKER script
This adds the EXAMPLE_DOCKER in-service patching script. Packaging currently for CentOS, but script itself is generic. The docker.service has required patching, so this supports future patching. Closes-Bug: 1996916 Depends-On: https://review.opendev.org/c/starlingx/utilities/+/865731 Test Plan: PASS: CentOS: Apply/remove designer in-service patch including EXAMPLE_DOCKER and verify docker.service restarts. Signed-off-by: Jim Gauld <james.gauld@windriver.com> Change-Id: I2c630eac88da030af69240a2badd11f06cbd5475
This commit is contained in:
parent
8e880d7764
commit
443681e209
@ -9,4 +9,5 @@ patch-scripts/EXAMPLE_VIM
|
|||||||
patch-scripts/EXAMPLE_SYSINV
|
patch-scripts/EXAMPLE_SYSINV
|
||||||
patch-scripts/EXAMPLE_SERVICE
|
patch-scripts/EXAMPLE_SERVICE
|
||||||
patch-scripts/EXAMPLE_KUBELET
|
patch-scripts/EXAMPLE_KUBELET
|
||||||
|
patch-scripts/EXAMPLE_DOCKER
|
||||||
enable-dev-patch
|
enable-dev-patch
|
||||||
|
27
patch-scripts/EXAMPLE_DOCKER/centos/EXAMPLE_DOCKER.spec
Normal file
27
patch-scripts/EXAMPLE_DOCKER/centos/EXAMPLE_DOCKER.spec
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
Name: EXAMPLE_DOCKER
|
||||||
|
Summary: StarlingX In-Service dockerd Patch Script Example
|
||||||
|
Version: 1.0
|
||||||
|
Release: %{tis_patch_ver}%{?_tis_dist}
|
||||||
|
License: windriver
|
||||||
|
Group: base
|
||||||
|
Packager: Wind River <info@windriver.com>
|
||||||
|
Source0: dockerd-process-restart
|
||||||
|
|
||||||
|
%install
|
||||||
|
install -Dp -m 700 %{S:0} %{buildroot}%{_patch_scripts}/%{name}
|
||||||
|
|
||||||
|
%description
|
||||||
|
%{summary}
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_patch_scripts}/*
|
||||||
|
|
||||||
|
%post
|
||||||
|
cp -f %{_patch_scripts}/%{name} %{_runtime_patch_scripts}/
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
%preun
|
||||||
|
cp -f %{_patch_scripts}/%{name} %{_runtime_patch_scripts}/
|
||||||
|
exit 0
|
||||||
|
|
2
patch-scripts/EXAMPLE_DOCKER/centos/build_srpm.data
Normal file
2
patch-scripts/EXAMPLE_DOCKER/centos/build_srpm.data
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
COPY_LIST="scripts/*"
|
||||||
|
TIS_PATCH_VER=PKG_GITREVCOUNT
|
42
patch-scripts/EXAMPLE_DOCKER/scripts/dockerd-process-restart
Normal file
42
patch-scripts/EXAMPLE_DOCKER/scripts/dockerd-process-restart
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Copyright (c) 2022 Wind River Systems, Inc.
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# This script provides an in-service patching restart script for
|
||||||
|
# docker.service. This supports service and Drop-In file changes by
|
||||||
|
# issuing a systemctl daemon reload after the patch is applied.
|
||||||
|
#
|
||||||
|
|
||||||
|
#
|
||||||
|
# The patching subsystem provides a patch-functions bash source file
|
||||||
|
# with useful function and variable definitions.
|
||||||
|
#
|
||||||
|
. /etc/patching/patch-functions
|
||||||
|
|
||||||
|
#
|
||||||
|
# Declare an overall script return code
|
||||||
|
#
|
||||||
|
declare -i GLOBAL_RC=$PATCH_STATUS_OK
|
||||||
|
|
||||||
|
# Issue a systemd daemon-reload once the rpms have been installed and
|
||||||
|
# before the processes have been restarted.
|
||||||
|
systemctl daemon-reload
|
||||||
|
|
||||||
|
# processes that run on all nodes
|
||||||
|
processes_to_restart="dockerd"
|
||||||
|
/usr/local/sbin/patch-restart-processes ${processes_to_restart}
|
||||||
|
if [ $? != 0 ] ; then
|
||||||
|
loginfo "patching restart failed"
|
||||||
|
loginfo "... process-restart ${processes_to_restart}"
|
||||||
|
exit ${PATCH_STATUS_FAILED}
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Exit the script with the overall return code
|
||||||
|
#
|
||||||
|
exit $GLOBAL_RC
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user