Push to dist git staging repos is not possible #13076
Labels
No labels
announcement
anubis
authentication
aws
backlog
blocked
bodhi
ci
cloud
communishift
copr
database
day-to-day
dc-move
deprecated
dev
discourse
dns
downloads
easyfix
epel
firmitas
forgejo_migration
Gain
High
Gain
Low
Gain
Medium
gitlab
greenwave
hardware
help wanted
high-trouble
koji
koschei
lists
low-trouble
medium-trouble
mirrorlists
monitoring
Needs investigation
odcs
OpenShift
ops
outage
packager_workflow_blocker
pagure
permissions
Priority
Needs Review
Priority
Next Meeting
Priority
🔥 URGENT 🔥
Priority
Waiting on Assignee
Priority
Waiting on External
Priority
Waiting on Reporter
rabbitmq
release-monitoring
releng
request-for-resources
s390x
security
SMTP
sprint-0
sprint-1
src.fp.o
staging
unfreeze
waiverdb
websites-general
wiki
Backlog Status
Needs Review
Backlog Status
Ready
chore
documentation
points
01
points
02
points
03
points
05
points
08
points
13
Priority
High
Priority
Low
Priority
Medium
Sprint Status
Blocked
Sprint Status
Done
Sprint Status
In Progress
Sprint Status
Review
Sprint Status
To Do
Technical Debt
Work Item
Bug
Work Item
Epic
Work Item
Spike
Work Item
Task
Work Item
User Story
No milestone
No project
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
infra/tickets#13076
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Description of request
Hey, the problem is probably on the server side. When you try to clone a repo, make changes, and push it, you will get following error:
The reason is probably in the group permissions for directories. Previously, I had an issue that I couldn't create a repository by using
fedpkg-stage request-repo. It was throwing an error 500, which does not describe anything. The solution was to change group permissions forrpms/toxpackager; previously, it waspagure. This group seems to be a new one, because half of dirs has it and half of the others has old one.sysadminpermission #13013I think it might be due to pagure user not being in that xpackager group by default.
I adjusted it there and restarted things... can you try another push?
I just tried it on my own fork with
fedpkg-stage --user zlopez pushand it failed with the same error.I will check it out.
I did some digging, but I'm not sure what exactly is happening. The problem is that on production it seems that every user is in
xpackager(I noticed that thepackagergroup is missing) group, butgetent group xpackageronly showsxpackager:*:1494358698:xpagure. The same output ofgetent group xpackageris on staging, but on staging users are not inxpackagergroup, just packager group.xpackagerisn't IPA group, but only local. So I'm not sure how the group management works on dist-git, but how it is handled is different between staging and production.EDIT: I didn't find any mention of
xpackagergroup in ansible repo. So it's not part of any playbook. According to ansible, the files in/srv/git/repositoriesshould be owned bypackagergroup.Just tested it out, adding my user to
xpackagergroup solved the issue.ok. I think I see the problem.
On pkgs01.stg /etc/group has:
xpackager:*:1494358698:xpagure,git,zlopez
but that is the production gid.
In staging it should be 162801012
I have changed it now.
I think we now need to chgrp -R xpackager /srv/git/repositories
Does that sound right to everyone? (I have not yet done this)
I was surprised that the UID is same on staging and production, but didn't look into it more. And
gitand my user were just added when I was testing things.I thing everything is already owned by
xpackagergroup in/srv/git/repositorieson staging, but I don't have anything against running it again recursively.I have now run this. (well, it's still running, will take a bit).
I think this issue is solved, so I am going to close it.
Please feel free to reopen if there's anything further to do.