godotengine / godotengine/build-containers

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

Open
#99 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
292
Forks
81
PR merge metrics
No merged PRs in 30d

Description

Trying to run
```sh
./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](https://github.com/godotengine/build-containers/files/7486481/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.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.