public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Luya Tshimbalanga <luya@fedoraproject.org>
To: git-commits@fedoraproject.org
Subject: [rpms/ImageMagick] f45: Enable Packit release automation and integration tests
Date: Fri, 18 Sep 2026 08:53:06 GMT	[thread overview]
Message-ID: <178972158659.1.4335590035223843207.rpms-ImageMagick-32613803f8e2@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/ImageMagick
Branch : f45
Commit : 32613803f8e25504880c79ecf0653eb629a44def
Author : Luya Tshimbalanga <luya@fedoraproject.org>
Date   : 2026-09-17T18:39:09-04:00
Stats  : +105/-22 in 5 file(s)
URL    : https://src.fedoraproject.org/rpms/ImageMagick/c/32613803f8e25504880c79ecf0653eb629a44def?branch=f45

Log:
Enable Packit release automation and integration tests

---
diff --git a/.fmf/version b/.fmf/version
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/.fmf/version
@@ -0,0 +1 @@
+1

diff --git a/packit.yaml b/packit.yaml
index fb5714d..bf10275 100644
--- a/packit.yaml
+++ b/packit.yaml
@@ -2,27 +2,37 @@
 # https://packit.dev/docs/configuration/
 
 jobs:
-- job: pull_from_upstream
-  trigger: release
-  dist_git_branches:
-    rawhide:
-      fast_forward_merge_into:
-        - fedora-all
-    epel-10: {}
-
-- job: koji_build
-  trigger: commit
-  allowed_pr_authors:
-    - all_admins
-    - packit
-  dist_git_branches:
-    - fedora-all
-    - epel-10
-
-- job: bodhi_update
-  trigger: commit
-  dist_git_branches:
-    - fedora-all
-    - epel-10
+  # Update Rawhide first and reuse the exact release commit for active
+  # Fedora branches to keep dist-git history non-divergent.
+  #
+  # EPEL 10 is updated independently because its dependency set and
+  # feature policy can differ from Fedora.
+  - job: pull_from_upstream
+    trigger: release
+    dist_git_branches:
+      rawhide:
+        fast_forward_merge_into:
+          - fedora-all
+      epel-10: {}
 
+  # Automatically build merged Packit release PRs and PRs opened by
+  # ImageMagick dist-git administrators.
+  #
+  # Direct maintainer pushes intentionally do not trigger Packit builds,
+  # leaving side-tag/rebuild workflows under manual control.
+  - job: koji_build
+    trigger: commit
+    allowed_pr_authors:
+      - packit
+      - all_admins
+    dist_git_branches:
+      - fedora-all
+      - epel-10
 
+  # Rawhide builds do not require the normal Bodhi update workflow.
+  # Create updates only for versioned Fedora branches and EPEL 10.
+  - job: bodhi_update
+    trigger: commit
+    dist_git_branches:
+      - fedora-branched
+      - epel-10

diff --git a/plans/image-formats.fmf b/plans/image-formats.fmf
new file mode 100644
index 0000000..d484221
--- /dev/null
+++ b/plans/image-formats.fmf
@@ -0,0 +1,8 @@
+summary: Validate the installed ImageMagick RPM and key delegates
+
+discover:
+  how: fmf
+  test: /tests/smoke
+
+execute:
+  how: tmt

diff --git a/tests/smoke/main.fmf b/tests/smoke/main.fmf
new file mode 100644
index 0000000..5b4502d
--- /dev/null
+++ b/tests/smoke/main.fmf
@@ -0,0 +1,13 @@
+summary: Exercise ImageMagick commands, delegates, and common formats
+description: |
+  Verify the installed Fedora RPM rather than the build tree.  The test
+  checks essential delegates and performs round-trip conversions through
+  representative raster and modern image formats.
+test: ./test.sh
+framework: shell
+duration: 5m
+tier: 1
+require:
+  - ImageMagick
+  - ImageMagick-djvu
+  - ImageMagick-heic

diff --git a/tests/smoke/test.sh b/tests/smoke/test.sh
new file mode 100755
index 0000000..7cc2e25
--- /dev/null
+++ b/tests/smoke/test.sh
@@ -0,0 +1,51 @@
+#!/usr/bin/bash
+set -euo pipefail
+
+magick_path="$(command -v magick)"
+test -x "$magick_path"
+
+version_output="$(magick -version)"
+printf '%s\n' "$version_output"
+printf '\n=== AVAILABLE FORMATS ===\n'
+magick -list format
+
+delegates="$({ printf '%s\n' "$version_output"; } | sed -n 's/^Delegates (built-in):[[:space:]]*//p')"
+test -n "$delegates"
+
+for delegate in djvu freetype heic jp2 jpeg jxl lcms png raw tiff webp xml; do
+    if ! grep -Eq "(^|[[:space:]])${delegate}([[:space:]]|$)" <<<"$delegates"; then
+        printf 'Missing required delegate: %s\n' "$delegate" >&2
+        exit 1
+    fi
+done
+
+# Ultra HDR is enabled by the Fedora spec on supported Fedora releases, but
+# intentionally remains optional on EPEL until its dependency is available.
+. /etc/os-release
+if [[ "${ID:-}" == fedora ]] && ! grep -Eq '(^|[[:space:]])uhdr([[:space:]]|$)' <<<"$delegates"; then
+    printf 'Missing required Fedora delegate: uhdr\n' >&2
+    exit 1
+fi
+
+workdir="$(mktemp -d)"
+trap 'rm -rf "$workdir"' EXIT
+cd "$workdir"
+
+# Generate deterministic input without network access or external fixtures.
+magick -size 96x64 gradient:'#163a70-#51a2da' source.png
+magick identify source.png
+
+for format in jpg webp tiff jxl jp2 heic; do
+    output="roundtrip.${format}"
+    magick source.png "$output"
+    test -s "$output"
+    magick identify "$output"
+    magick "$output" "decoded-${format}.png"
+    test -s "decoded-${format}.png"
+    magick identify "decoded-${format}.png"
+done
+
+# Confirm the split DjVu module is installed and visible to ImageMagick.
+magick -list format | grep -Eq '^[[:space:]]*DJVU\*?[[:space:]]'
+
+printf '\nImageMagick installed-RPM smoke test passed.\n'

                 reply	other threads:[~2026-09-18  8:53 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178972158659.1.4335590035223843207.rpms-ImageMagick-32613803f8e2@fedoraproject.org \
    --to=luya@fedoraproject.org \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox