Gitlab-secrets.json - is this file suppost to be readable in a text editor?

@cdm are you running this on Linux or even UNIX?
Maybe there are some simple things to check. I am relatively novice at GitLab server administration, I have only built two; however, I have 25 years of Linux/UNIX experience.

Anyway, In the original post I see you have references to /etc/gitlab/gitlab-secrets.json .
What do you get when you execute: ls -lZ /etc/gitlab/gitlab-secrets.json ?

Can you escalate privilege to root and vi/vim the file:

sudo vi /etc/gitlab/gitlab-secrets.json

If you can, at the vi/vim (ed/ex) ‘colon prompt’ enable:

:set list

Do you see any characters that seem out of place to you? Perhaps ^M characters on the end of every (rarely a single) line?

So, consider/check

  1. the OWNER:GROUP ownership of the file using,
    ls -l /etc/gitlab/gitlab-secrets.json
  2. the SELINUX context (assuming you are running a Linux variant) with the
    ls -lZ /etc/gitlab/gitlab-secrets.json
  3. the readability of all lines without “hidden” characters found by opening the file using vi/vim

I have had SSH with GitLab perform poorly due to SELINUX contexts being a problem. No guarantee that is the case this time though.