What does 999 mean here?
If it can't show both the full username and group name in the space allotted, ls
will replace one or both with the user or group ID instead rather than truncate either, in order to reduce or eliminate security issues due to similar user or group names with different length. It will not expand the column. You cannot change that.
File don't have owner and group saved as names in their metadata, but as UID and GID.
If the OS cannot resolve those IDs to names, they show the ID as is.
The resolving process uses /etc/nsswitch.conf
to know where to look. (file, ldap, database, etc.)
I suppose that getent group gitlab_ci
will not return anything, meaning the group doesn't exist.
If it doesn't that mean this group doesn't have GID 999 which explains why your file show bogus.
Use chgrp
to modify its GID.