feat(patching): migration excludes alignee sur wiki SANEF (33 patterns base + ASM kernel + HAproxy FL sdcss-kmod) - B3.1+B3.2

This commit is contained in:
Pierre & Lumière 2026-05-04 16:43:37 +02:00
parent 6c92c71d17
commit b2f04c247f

View File

@ -0,0 +1,70 @@
-- Migration : alignement des excludes patching sur le wiki SANEF
-- Source : DokuWiki SANEF "Patch Linux" — étape 6 "Première vague de patching"
-- + section "Procédures de mises à jour Linux cas spécifiques"
--
-- Sémantique : v_servers.effective_excludes = COALESCE(s.patch_excludes,
-- de.patch_excludes, d.default_excludes) → COALESCE = override.
-- Donc pour les serveurs avec règles spécifiques, on stocke
-- la liste globale + leur addition dans servers.patch_excludes.
-- Idempotent.
-- ─── B3.1 : liste globale (33 patterns) sur tous les domaines ───────────
UPDATE public.domains
SET default_excludes =
'*mongodb* *mysql* *postgres* *mariadb* *oracle* *pgdg* *php* *java* '
'*redis* *elasticsearch* *nginx* *mod_ssl* *haproxy* *certbot* '
'*python-certbot* *docker* *podman* *centreon* *qwserver* *ansible* '
'*node* *tina* *memcached* *nextcloud* *pgbouncer* *pgpool* *pgbadger* '
'*psycopg2* *barman* *kibana*';
-- ─── B3.2 : cas spécifiques par groupe applicatif ───────────────────────
DO $$
DECLARE
base_excludes text :=
'*mongodb* *mysql* *postgres* *mariadb* *oracle* *pgdg* *php* *java* '
'*redis* *elasticsearch* *nginx* *mod_ssl* *haproxy* *certbot* '
'*python-certbot* *docker* *podman* *centreon* *qwserver* *ansible* '
'*node* *tina* *memcached* *nextcloud* *pgbouncer* *pgpool* *pgbadger* '
'*psycopg2* *barman* *kibana*';
BEGIN
-- HAproxy Flux Libre : ajouter *sdcss-kmod*
UPDATE public.servers SET patch_excludes = base_excludes || ' *sdcss-kmod*'
WHERE LOWER(hostname::text) IN ('vrpeahbst1', 'vppeahbst1', 'vipeahbst1');
-- Oracle ASM : NE PAS mettre à jour le kernel (kmod-redhat-oracleasm)
-- Doit correspondre à la version d'ASM installée.
UPDATE public.servers SET patch_excludes = base_excludes || ' kernel*'
WHERE LOWER(hostname::text) IN (
-- CentOS 7 / RHEL 8 ASM stockage (wiki "ASM stockage")
'lamarrac1','lamarrac2','lamarrac3','lamarrac4',
'srdsibora1','srdsibora2',
'lptrabgas1',
'lragtbpla1','lpaiigrid1',
'lamaprac1','lamaprac2','lamaprac3','lamaprac4',
'lampadp1','lampadp2','lampadv1',
'lampasu1','lampasu2',
'lampcrm1','lampdec1','lampfin1','lampfin3','lampoct1','lamppea1',
'lamppla1','lamppla2',
'lamrsip1','lamrsip2',
'lamtinf1','lamtpfe1',
'lpagtbpla1',
'lpemvbaemv1','lpemvbpemv1','lpemvbpemv2',
'lpsimbpfe1',
'lraiibora1',
'lremvbremv1','lremvbremv2',
'rmila150','rmilgmo3','rmilsas1',
'rsmiged1','rsmigmo1','rsmipat1','rsmisar2',
'srtrabgas1',
'vpemvgrid1','vpnapamed1'
);
-- Note : kibana déjà dans la base liste → vppatakib1 (SI Patrimoine)
-- couvert sans règle additionnelle.
-- Note : Scoop sur Debian (vrscobpf1, vrscouevs1) utilise apt-mark hold,
-- pas yum → hors périmètre de cette migration.
END $$;
-- ─── Vérification (à exécuter manuellement après) ───────────────────────
-- SELECT hostname, patch_excludes FROM servers
-- WHERE patch_excludes LIKE '%sdcss-kmod%' OR patch_excludes LIKE '%kernel*%'
-- ORDER BY hostname;