Add support in system-image server for importing files from a remote system-image instance
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu system image |
Triaged
|
High
|
Barry Warsaw |
Bug Description
Hello,
Right now, there doesn't seem to be an immutable URL pointing to the latest tarballs for a given channel/device. This means, for instance, that if I want to get the latest ubuntu tarball for ubuntu-
This complicates the life of some development system-image-server instances because we can't simply point file_ubuntu to use http generator and a fixed URL. One of these instances I know of, does what I described (parsing json) to decide whether there's a new image to fetch, figure out the filenames and fetch it.
Would it be possible to have some sort of direct link to the latest tarballs? so that for instance:
https:/
would contain:
ubuntu.tar.xz -> /pool/ubuntu-
and so on, for any files comprising the latest image?
Then I could point my system-image instance to:
file_ubuntu = http;https:/
and know that it will get the latest image.
This is needed for development work by some internal Canonical teams, but may also be useful for any developers who want to have a local system-image installation and have it synchronize tarballs with the official system-image server.
Please let me know if you'd like me to expand on why this is needed, or if any other alternatives to achieve this come to mind.
Discussed this in realtime today. Rather than modifying the server to expose a 'latest' link, what I would like to see implemented in system-image server is support for a new "remote_si" (bikeshed the name to taste) generator which talks to an existing system-image server remotely, and walks the tree to find the latest image part (device tarball, etc) on a specified channel - using the full channels. json/channels. json.gpg/ index.json validation chain that already exists. This lets us cryptographically ensure integrity of the download using client and server code that already exists, rather than requiring deployment of a new server feature on system- image.ubuntu. com that would only be used by the capomastro server and not shared with other clients of system- image.ubuntu. com.
And as a stopgap measure until this is implemented, we've recommended that PES simply mirror the content from cdimage.ubuntu.com via rsync and run the cdimage generator locally for imports.