From 0d76aca959e7c4bdf6326049f7bb8cf646d6212a Mon Sep 17 00:00:00 2001 From: Jan Baier Date: Mon, 3 Feb 2025 16:36:18 +0100 Subject: [PATCH 1/2] os-autoinst-obs-auto-submit: Do not fail on expected diff output Reference: https://progress.opensuse.org/issues/176316 --- os-autoinst-obs-auto-submit | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/os-autoinst-obs-auto-submit b/os-autoinst-obs-auto-submit index 5bc1deb..46f3216 100755 --- a/os-autoinst-obs-auto-submit +++ b/os-autoinst-obs-auto-submit @@ -129,7 +129,7 @@ generate_os-autoinst-distri-opensuse-deps_changelog() { echo "-------------------------------------------------------------------" echo "$(LANG=c date -u) - Dominik Heidler " echo - diff -u "$package"-factory.spec "$dir"/"$package"/_service:obs_scm:"$package".spec \ + { diff -u "$package"-factory.spec "$dir"/"$package"/_service:obs_scm:"$package".spec || :; } \ | grep "^[+-]Requires" \ | sed -e 's/Requires:\s*/dependency /g' -e 's/^-/- Removed /g' -e 's/^+/- Added /g' echo From a7d7cd0259df641bbf886a46186daccf718bb71b Mon Sep 17 00:00:00 2001 From: Jan Baier Date: Mon, 3 Feb 2025 17:01:09 +0100 Subject: [PATCH 2/2] Refactor spec requirement diffs to a common function --- os-autoinst-obs-auto-submit | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/os-autoinst-obs-auto-submit b/os-autoinst-obs-auto-submit index 46f3216..1ace0ad 100755 --- a/os-autoinst-obs-auto-submit +++ b/os-autoinst-obs-auto-submit @@ -121,6 +121,12 @@ sync_changesrevision() { fi } +get_spec_changes_in_requirements() { + local package=$1 + local project=$2 + { diff -u "$package-factory.spec" "$project/$package/_service:obs_scm:$package.spec" || :; } | grep '^[+-]Requires' +} + generate_os-autoinst-distri-opensuse-deps_changelog() { dir=$1 package=$2 @@ -129,8 +135,7 @@ generate_os-autoinst-distri-opensuse-deps_changelog() { echo "-------------------------------------------------------------------" echo "$(LANG=c date -u) - Dominik Heidler " echo - { diff -u "$package"-factory.spec "$dir"/"$package"/_service:obs_scm:"$package".spec || :; } \ - | grep "^[+-]Requires" \ + get_spec_changes_in_requirements "$package" "$dir" \ | sed -e 's/Requires:\s*/dependency /g' -e 's/^-/- Removed /g' -e 's/^+/- Added /g' echo cat "$package"-factory.changes @@ -143,7 +148,7 @@ handle_auto_submit() { $osc co --server-side-source-service-files "$src_project"/"$package" if [[ "$package" == "os-autoinst-distri-opensuse-deps" ]]; then $osc cat "$submit_target" "$package" "$package.spec" > "$package-factory.spec" - if { diff -u "$package"-factory.spec "$src_project/$package/_service:obs_scm:$package".spec || :; } | grep "^[+-]Requires"; then + if get_spec_changes_in_requirements "$package" "$src_project"; then # dependency added or removed generate_os-autoinst-distri-opensuse-deps_changelog "$src_project" "$package" else