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

podman build fails with "cp: cannot access '/root/files/mono-6.12.0.147': Permission denied" #99

Open
hhyyrylainen opened this issue Nov 5, 2021 · 1 comment

Comments

@hhyyrylainen
Copy link

hhyyrylainen commented Nov 5, 2021

Trying to run

./build.sh 3.x mono-6.12.0.147

fails for me in trying to build this container:

STEP 1/4: FROM godot-fedora:3.x-mono-6.12.0.147
STEP 2/4: ARG mono_version
--> 29b0f1a0983
STEP 3/4: RUN if [ -z "${mono_version}" ]; then echo -e "\n\nargument mono-version is mandatory!\n\n"; exit 1; fi &&     dnf -y install --setopt=install_weak_deps=False       autoconf automake cmake gcc gcc-c++ gettext libtool perl python-unversioned-command &&     cp -a /root/files/${mono_version} /root &&     cd /root/${mono_version} &&     NOCONFIGURE=1 ./autogen.sh &&     ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var/lib/mono --disable-boehm --host=x86_64-linux-gnu &&     make -j &&     make install &&     cd /root &&     rm -rf /root/${mono_version} &&     cert-sync /etc/pki/tls/certs/ca-bundle.crt &&     rpm -ivh --nodeps       https://download.mono-project.com/repo/centos8-preview/m/msbuild/msbuild-16.10.1+xamarinxplat.2021.05.26.14.00-0.xamarin.7.epel8.noarch.rpm       https://download.mono-project.com/repo/centos8-preview/m/msbuild/msbuild-sdkresolver-16.10.1+xamarinxplat.2021.05.26.14.00-0.xamarin.7.epel8.noarch.rpm       https://download.mono-project.com/repo/centos8-preview/m/msbuild-libhostfxr/msbuild-libhostfxr-3.0.0.2019.04.16.02.13-0.xamarin.4.epel8.x86_64.rpm       https://download.mono-project.com/repo/centos8-preview/n/nuget/nuget-5.6.0.6489.bin-0.xamarin.1.epel8.noarch.rpm

The first few containers seem to build fine:

COMMIT godot-fedora:3.x-mono-6.12.0.147
COMMIT godot-export:3.x-mono-6.12.0.147

This one failing container then in turn seems to cause all the rest of the containers to fail to build:

STEP 1/4: FROM godot-mono:3.x-mono-6.12.0.147
Resolving "godot-mono" using unqualified-search registries (/etc/containers/registries.conf)
Trying to pull registry.fedoraproject.org/godot-mono:3.x-mono-6.12.0.147...
Trying to pull registry.access.redhat.com/godot-mono:3.x-mono-6.12.0.147...
Trying to pull docker.io/library/godot-mono:3.x-mono-6.12.0.147...
Trying to pull quay.io/godot-mono:3.x-mono-6.12.0.147...
Error: error creating build container: 4 errors occurred while pulling:
 * initializing source docker://registry.fedoraproject.org/godot-mono:3.x-mono-6.12.0.147: reading manifest 3.x-mono-6.12.0.147 in registry.fedoraproject.org/godot-mono: manifest unknown: manifest unknown
 * initializing source docker://registry.access.redhat.com/godot-mono:3.x-mono-6.12.0.147: reading manifest 3.x-mono-6.12.0.147 in registry.access.redhat.com/godot-mono: name unknown: Repo not found
 * initializing source docker://godot-mono:3.x-mono-6.12.0.147: reading manifest 3.x-mono-6.12.0.147 in docker.io/library/godot-mono: errors:
denied: requested access to the resource is denied
unauthorized: authentication required

Entire build log:
log.txt

This is on Fedora 34 host, and just freshly pulled in Fedora 34 docker image.

Edit: running with selinux disabled temporarily (sudo setenforce 0) seems to allow the containers to be built correctly.
Fedora has selinux on by default (I think, at least I've never voluntarily followed a guide to enable it) so this repo should be updated to work with it, or explicit instructions should be included in the readme for disabling it.

@Xrayez
Copy link

Xrayez commented Nov 5, 2021

I confirm, I had a pull request to add a note for this #75, but it wasn't merged.

See also #74.

Something like this can help to notify users about SELinux:

if [ -f /etc/selinux/config ] && [ $(getenforce) == "Enforcing" ]; then
  echo "Cannot build with SELinux status set to Enforcing."
  echo "Please set SELinux status to Permissive with:"
  echo "    sudo setenforce 0"
  exit 1
fi

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants