Cannot populate file-based repo

Problem:
I am trying to create a file-based repo so I can provision images however when I try to sync I get this error:

Error: manifest line:1: must be: <relative_path>,,

I have tried using a remote webserver with the file in /pub so the Upstream is http://webserver/pub and done the same using the /pub of my Foreman server, but neither works. I have also tried to upload the 386mb Lorax image file root.tar.xz, but that gives me one of two errors:

Error during upload: undefined

or on my other test machine:
Katello::Errors::Pulp3Error: [Errno 28] No space left on device

The problem is I cannot find any meaningful error in the production.log or messages that tells me which filesystem is being written to as it /var has a ton of free space, and I cannot find any instructions on how I should prepare my website to act as a repo?

Expected outcome:
File based repo either syncs normally or I can manually upload the file.

Foreman and Proxy versions:

  • foreman-2.5.0-0.8.rc3.el7.noarch
  • katello-4.1.0-0.6.rc2.el7.noarch

Foreman and Proxy plugin versions:

Name Description Author Version

[foreman-tasks] 4.11
[foreman_ansible] 6.20
[foreman_bootdisk] 17.1.0
[foreman_openscap] 4.3.0
[foreman_discovery] 17.0.0
[foreman_remote_execution] 4.3.0
[katello] 17.1.0rc2.1

Distribution and version:
Centos 7.9

Other relevant data:

You seem to be out of space on your storage. That can cause various issues, including services not starting or failing unexpectedly. Check df and see if you need to free up some space.

1 Like

Hi Marek,

I have actually just this moment fixed the problem. I increased both / and /tmp to 2GB and that made the upload work. It is strange because if you do a “watch df -xt xfs” you never see them filling up. I am not entirely sure whether it was /root or /tmp that was being used?

Now on to my next problem how to boot from this image using Foreman.

Thanks,
Andrew

I think Katello/Pulp uses /tmp for file uploads which is usually tmpfs which is a memory-only filesystem which utilizes virtual memory, so your host actually did ran out of virtual memory or something like that? This sounds like a bug that should be fixed if this is the case.

I briefly scanned RoR documentation on how uploading works but I could not find anything. I assume a file is stored into a temporary directory by Katello and then uploaded into Pulp? There must be some limits. Or maybe this is handled by Apache, I don’t know. @ehelms or @ekohl