From 799b693ffaac9a4c9d25cf5b7baabc6e76cf5111 Mon Sep 17 00:00:00 2001 From: Christoph Emsenhuber Date: Thu, 10 Sep 2026 10:51:02 +0200 Subject: [PATCH] TP44 Teil B: register_jobs() ins Paket-__init__ (Git-Repo-Job registriert jetzt) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Nautobot importiert von einer Git-Datenquelle nur das Paket bf_infra.jobs und erwartet register_jobs() im __init__ — der Call im Submodul blieb unsichtbar (Sync-Log: "No jobs were registered on loading the bf_infra.jobs submodule"). register_jobs(CFEstateSync) daher ins __init__ verschoben, redundanten Call am Ende von cf_estate_sync.py entfernt. Co-Authored-By: Claude Opus 4.8 --- jobs/__init__.py | 9 ++++++++- jobs/cf_estate_sync.py | 4 ++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/jobs/__init__.py b/jobs/__init__.py index 3696c4b..bd6ee07 100644 --- a/jobs/__init__.py +++ b/jobs/__init__.py @@ -4,4 +4,11 @@ Nautobot importiert nur dieses Paket; damit die enthaltenen Jobs sich registrieren, muss jedes Job-Modul hier importiert werden. Neue periodische externe->Nautobot-Syncs kommen als weiteres Modul dazu (kein per-Task-Container). """ -from . import cf_estate_sync # noqa: F401 (Import triggert register_jobs) +from nautobot.apps.jobs import register_jobs + +from .cf_estate_sync import CFEstateSync + +# Nautobot importiert nur dieses Paket (bf_infra.jobs) und erwartet register_jobs() +# HIER im __init__ (nicht im Submodul) — sonst: "No jobs were registered on loading +# the bf_infra.jobs submodule". Neue Jobs: Klasse importieren + hier mitregistrieren. +register_jobs(CFEstateSync) diff --git a/jobs/cf_estate_sync.py b/jobs/cf_estate_sync.py index 907677d..7d623e5 100644 --- a/jobs/cf_estate_sync.py +++ b/jobs/cf_estate_sync.py @@ -25,7 +25,7 @@ import urllib.error from django.contrib.contenttypes.models import ContentType -from nautobot.apps.jobs import BooleanVar, Job, register_jobs +from nautobot.apps.jobs import BooleanVar, Job from nautobot.cloud.models import ( CloudAccount, CloudNetwork, @@ -253,4 +253,4 @@ class CFEstateSync(Job): self.logger.info("Fertig (%s).", "DRY-RUN — nichts geschrieben" if dryrun else "COMMIT") -register_jobs(CFEstateSync) +# Registrierung zentral in jobs/__init__.py (Nautobot importiert nur das Paket).