** Description changed: [ Impact ] The `seeded-in-ubuntu` command, used by the Release Team, is currently backed by an index on UbuntuWire: http://qa.ubuntuwire.org/ubuntu-seeded-packages/seeded.json.gz This index currently has multiple issues: * It doesn't support series and arches, so essentially only returns results for the devel series on amd64 * It seems to be a bit broken, as shown with the `packagekit` case below (in [ Original description ]) [ Test Plan ] - TBD + Run seeded-in-ubuntu in various situations to cover different combinations among: + * source vs binary package + * series + * architectures + * seeded or not seeded + Run some other ubuntu-dev-tools commands to make sure the package isn't broken. + + The following script can help cover these cases: + ```bash + #!/usr/bin/bash + + echo "Testing ubuntu-dev-tools's seeded-in-ubuntu command" + echo "ubuntu-dev-tools version:" + dpkg-query -W ubuntu-dev-tools + + function run() { + echo " $" $@ + $@ + echo "" + } + + echo "=====================================================================" + echo "Testing source package busybox against default series (stonking)." + echo "Watch that 'busybox-static' is mostly in 'extra' seed, and 'busybox-initramfs' doesn't exists." + run seeded-in-ubuntu busybox + + echo "=====================================================================" + echo "Testing binary package busybox-initramfs against default series (stonking)." + echo "Should output that the package is not seeded and may not exist." + run seeded-in-ubuntu -b busybox-initramfs + + echo "=====================================================================" + echo "Testing binary package busybox-initramfs against explicit stonking." + echo "Should output that the package is not seeded and may not exist." + run seeded-in-ubuntu -s stonking -b busybox-initramfs + + echo "=====================================================================" + echo "Testing source package busybox against resolute." + echo "Watch that 'busybox-static' is mostly in 'standard' seed, and 'busybox-initramfs' is \"everywhere\"." + run seeded-in-ubuntu -s resolute busybox + + echo "=====================================================================" + echo "Testing binary package busybox-initramfs against resolute." + echo "Should output that the package is seeded \"everywhere\"." + run seeded-in-ubuntu -s resolute -b busybox-initramfs + + echo "=====================================================================" + echo "Testing binary package ubuntu-x1e-settings against resolute amd64." + echo "Should output that the package is not seeded and may not exist." + run seeded-in-ubuntu -s resolute -b ubuntu-x1e-settings + + echo "=====================================================================" + echo "Testing binary package ubuntu-x1e-settings against resolute arm64." + echo "This should be seeded for 'ubuntu' in 'ship-live' and 'server-ship-live'" + run seeded-in-ubuntu -s resolute -a arm64 -b ubuntu-x1e-settings + + echo "=====================================================================" + echo "Testing binary package ubuntu-x1e-settings against jammy arm64." + echo "Should output that the package is not seeded and may not exist." + run seeded-in-ubuntu -s jammy -a arm64 -b ubuntu-x1e-settings + + echo "#####################################################################" + echo "Smoke testing a couple of other commands from the package" + echo "=====================================================================" + run submittodebian --help + echo "=====================================================================" + run import-bug-from-debian --help + echo "=====================================================================" + run reverse-depends --help + echo "=====================================================================" + run ubuntu-build --help + echo "=====================================================================" + ``` + [ Where problems could occur ] This is a Python script developed on the devel series, meaning a recent Python ecosystem. Backporting it to older release has the risk of hitting a too recent Python feature or API that doesn't work in older ecosystem. Fortunately, this is a self-contained script, not a module/library, so should impact anything else than just being broken. Also, the set of arguments and code paths is fairly low, so it should be humanly doable to reach good exhaustive coverage by following the Test Plan carefully. Finally, this script and package is mostly used by Ubuntu Developers, so shouldn't impact non-technical folks if it happens to break somehow. [ Other info ] Please note that the `seeded-in-ubuntu` command relies on an external service: https://static-reports.ubuntu.com/ If this service is down, a local cache can help, but needs to be populated at least once. With the current difficulties regarding Canonical infrastructure, we might be in a position of not being able to execute the Test Plan swiftly when the package is published in -proposed. [ Original description ] As of now: ❯ seeded-in-ubuntu packagekit gir1.2-packagekitglib-1.0 (from packagekit) is seeded in: ubuntu-core-installer: daily-live libpackagekit-glib2-18 (from packagekit) is seeded in: ubuntu-core-installer: daily-live libpackagekit-glib2-dev (from packagekit) is seeded in: ubuntu-budgie: supported ubuntu: supported packagekit (from packagekit) is seeded in: ubuntu-core-installer: daily-live packagekit-docs (from packagekit) is seeded in: ubuntu-budgie: supported ubuntu: supported but ❯ curl -s https://cdimage.ubuntu.com/ubuntu-server/resolute/daily-live/current/resolute-live-server-amd64.manifest | grep packagekit gir1.2-packagekitglib-1.0 1.3.4-3ubuntu1.1 libpackagekit-glib2-18:amd64 1.3.4-3ubuntu1.1 packagekit 1.3.4-3ubuntu1.1 and ❯ curl -s https://cdimage.ubuntu.com/ubuntu/resolute/daily-live/current/resolute-desktop-amd64.manifest | grep packagekit gir1.2-packagekitglib-1.0 1.3.4-3ubuntu1 gstreamer1.0-packagekit 1.3.4-3ubuntu1 libpackagekit-glib2-18:amd64 1.3.4-3ubuntu1 packagekit 1.3.4-3ubuntu1 and ❯ curl -s https://cdimage.ubuntu.com/ubuntu/stonking/daily-live/current/stonking-desktop-amd64.manifest | grep packagekit gir1.2-packagekitglib-1.0 1.3.5-1ubuntu1 gstreamer1.0-packagekit 1.3.5-1ubuntu1 libpackagekit-glib2-18:amd64 1.3.5-1ubuntu1 packagekit 1.3.5-1ubuntu1 We apparently can't trust `seeded-in-ubuntu` anymore 😢 Maybe a first step would be to get back control over its index, currently hosted and generated who knows how on UbuntuWire: http://qa.ubuntuwire.org/ubuntu-seeded-packages/seeded.json.gz
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2160240 Title: seeded-in-ubuntu is lying To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ubuntu-dev-tools/+bug/2160240/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
