I am trying to do a fresh install of gitlab-ee-14.4.0 on Centos 8.3 by running ‘EXTERNAL_URL=“https://<my_server>” dnf install gitlab-ee’. Dnf is hung with the following:
....snip....
Is this ok [y/N]: y
Downloading Packages:
[SKIPPED] gitlab-ee-14.4.0-ee.0.el8.x86_64.rpm: Already downloaded
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: gitlab-ee-14.4.0-ee.0.el8.x86_64 1/1
Installing : gitlab-ee-14.4.0-ee.0.el8.x86_64 1/1
Running scriptlet: gitlab-ee-14.4.0-ee.0.el8.x86_64 1/1
I had an strace running for dnf and this is where the process hangs. It is a constant poll of /opt/gitlab/service/logrotate/supervise/ok:
[pid 1137208] stat("/opt/gitlab/service/logrotate/supervise/ok", 0x7ffe22fa1110) = -1 ENOENT (No such file or directory)
[pid 1137208] ppoll([{fd=3, events=POLLIN}], 1, {tv_sec=1, tv_nsec=0}, NULL, 8)
If I abort dnf w/ I get 1000s of lines of output with no obvious error. The last few lines are:
* file[/opt/gitlab/sv/logrotate/down] action nothing (skipped due to action :nothing)
* directory[/opt/gitlab/service] action create (up to date)
* link[/opt/gitlab/service/logrotate] action create (up to date)
* ruby_block[wait for logrotate service socket] action run
[root@<my_server> ~]#
Checking the status of gitlab-runsvdir I see that it is dead. Restarting gitlab I only see gitlab-logrotate-wrapper running.
If I dnf remove gitlab-ee I see that /etc/gitlab, /opt/gitlab, and /var/opt/gitlab are still populated with data. I have tried several things to resolve this:
- dnf remove gitlab-ee; rm -rf /etc/gitlab /opt/gitlab /var/opt/gitlab; re-install gitlab-ee as before
- dnf remove gitlab-ee; leave above directories as is; dnf install gitlab-ee
- leave above directories as is; dnf reinstall gitlab-ee
I have had instances of dnf remove; removing directories; dnf install and all of say /var/opt/gitlab is still missing. I am having a real hard time getting consistent behavior out of the installation process.
My questions are:
- Is this a known problem with installing on Centos 8.3?
- Given the loop on checking logrotate service, what should I be checking for the failure of this service?
- What additional steps need to be completed in the scriptlet?