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

GraphOptions mixes image store with additional image stores (which are not returned) #2094

Open
vrothberg opened this issue Sep 16, 2024 · 2 comments · May be fixed by #2096
Open

GraphOptions mixes image store with additional image stores (which are not returned) #2094

vrothberg opened this issue Sep 16, 2024 · 2 comments · May be fixed by #2096
Labels
good-first-issue A good first issue

Comments

@vrothberg
Copy link
Member

Additional image stores are getting increasingly important for bootc. In containers/bootc#644 I shared the desire to use podman info to query additional image stores to prevent bootc from parsing storage.conf files.

For testing, I configured /usr/share/containers/storage.conf as follows:

additionalimagestores = [
"/usr/lib/containers/storage",
"/var/lib/containers/storage",
"/var/lib/containers/storage123",
]

The returned data (sudo podman info --format=json | jq .store) looks as follows:

{
  "configFile": "/usr/share/containers/storage.conf",
  "containerStore": {
    "number": 0,
    "paused": 0,
    "running": 0,
    "stopped": 0
  },
  "graphDriverName": "overlay",
  "graphOptions": {
    "overlay.imagestore": "/var/lib/containers/storage123",
    "overlay.mountopt": "nodev,metacopy=on"
  },
  "graphRoot": "/var/lib/containers/storage",
  "graphRootAllocated": 106219679744,
  "graphRootUsed": 3021795328,
  "graphStatus": {
    "Backing Filesystem": "btrfs",
    "Native Overlay Diff": "false",
    "Supports d_type": "true",
    "Supports shifting": "true",
    "Supports volatile": "true",
    "Using metacopy": "true"
  },
  "imageCopyTmpDir": "/var/tmp",
  "imageStore": {
    "number": 2
  },
  "runRoot": "/run/containers/storage",
  "volumePath": "/var/lib/containers/storage/volumes",
  "transientStore": false
}

What I observe is that the overlay.imagestore points to the last entry in the list. That is because the "imagestore" key is returned three times and Podman takes the last one. However, an additional image store is not the "imagestore".

I suggest to fix that logic and add a new key for options.additionalimagestores.

Cc: @giuseppe

I may pick up the issue next week but feel free to assign it to someone else.

@giuseppe
Copy link
Member

@l0rd @Honny1 @inknos this is a good chance to start working on containers/storage on something relatively easy, and important. Anyone interested to pick this issue?

Cc: @mohanboddu

@l0rd
Copy link
Member

l0rd commented Sep 16, 2024

@giuseppe sure I can work on this issue thanks

@cgwalters cgwalters added the good-first-issue A good first issue label Sep 16, 2024
l0rd added a commit to l0rd/containers-storage that referenced this issue Sep 17, 2024
Closes containers#2094

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
l0rd added a commit to l0rd/containers-storage that referenced this issue Sep 17, 2024
Closes containers#2094

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
@l0rd l0rd linked a pull request Sep 17, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good-first-issue A good first issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants