** 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

Reply via email to