# Main Package storage match /cauldron/([^/:]+)/current/ repository \1 branch master end match # Match branches of packages match /cauldron/([^/:]+)/branches/([^/:]+)/current/ repository \1 branch refs/heads/topic/\2 end match # But ignore any other branches match /cauldron/([^/:]+)/branches/ end match # And ignore pristine match /cauldron/([^/:]+)/pristine/ end match # Tag any releases match /cauldron/([^/:]+)/releases/([^/:]+)/([^/:]+)/ repository \1 branch refs/tags/\2-\3 end match # Deal with any release tags with epochs (colons make for invalid git branch names) match /cauldron/([^/:]+)/releases/([^/:]+):([^/:]+)/([^/:]+)/ repository \1 branch refs/tags/\2+\3-\4 end match # Branches for older distro versions match /updates/([0-9]+)/([^/:]+)/current/ repository \2 branch refs/heads/mga\1 end match # And some slightly special handling of our private infra repos match /updates/infra_([0-9]+)/([^/:]+)/current/ repository \2 branch refs/heads/infra\1 end match # Epoch tag options: # 0+123-4.mga5 # 0/123-4.mga5 # 0=123-4.mga5 # {0}123-4.mga5