Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose service to display OS images changelog in elemental-operator controllers #890

Open
Tracked by #875
davidcassany opened this issue Nov 27, 2024 · 2 comments
Open
Tracked by #875
Assignees
Labels
spike Some research required

Comments

@davidcassany
Copy link
Contributor

davidcassany commented Nov 27, 2024

The changelog data is present in ManagedOSVersionChannel images.
The changelog data should be extracted and exposed via HTTP to users.

@fgiudici fgiudici self-assigned this Nov 27, 2024
@fgiudici fgiudici added the spike Some research required label Nov 28, 2024
@fgiudici fgiudici changed the title Deploy the service per active channel in channels controller Expose service to display OS images changelog in elemental-operator controllers Dec 9, 2024
@fgiudici
Copy link
Member

fgiudici commented Dec 9, 2024

Data is expected to be present in ManagedOSVersionChannel images (one file per OS image delivered through the channel, at path /changelog/${managedosversion name}.updates.log).
The idea is to expose the changelog data through the Elemental (Rancher) service URL, something like:
${RANCHER_URL}/elemental/changelog/...
This should be achieved extracting the changelog data from the channel image, publishing it on http via k8s resources (Pod + service) and exposing it via the Elemental/Rancher UI URL.

@fgiudici fgiudici transferred this issue from rancher/elemental Dec 9, 2024
@fgiudici
Copy link
Member

Initial PoC drafted in #891 .

After discussion and investigation, the path we envision to properly implement the feature in the operator involves:

  • embed the service to expose changelog data in the ManagedOSVersionChannel CRD and controller
    • changelog data to be extracted from the ManagedOSVersionChannel image and exposed via HTTP through a worker Pod
    • the ManagedOSVersionChannel controller can be improved moving the ManagedOSVersion data extraction and resources creation to the same worker Pod
    • the Elemental Operator code can be further improved developing a generic workload Pod feature to be used by the SeedImage and MaangedOSVersionChannel controllers
  • only one worked Pod per ManagedOSVersionChannel should be able to serve all the available changelogs (one for each ManagedOSVersion), using under the hood one httpfy instance
  • the changelog data should be extracted and published as soon as a ManagedOSVersionChannel resource is created

@fgiudici fgiudici moved this from 🏃🏼‍♂️ In Progress to 🗳️ To Do in Elemental Dec 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
spike Some research required
Projects
Status: 🗳️ To Do
Development

No branches or pull requests

2 participants