Move the fedmsg routing_policy into its own file just like we have in the puppet repo.
This commit is contained in:
parent
bd7ddf1184
commit
3c2c1d7e31
2 changed files with 227 additions and 201 deletions
227
roles/fedmsg_base/templates/policy.py.j2
Normal file
227
roles/fedmsg_base/templates/policy.py.j2
Normal file
|
@ -0,0 +1,227 @@
|
||||||
|
{% if env == 'staging' %}
|
||||||
|
suffix = "stg.phx2.fedoraproject.org"
|
||||||
|
app_hosts = [
|
||||||
|
"app01.stg.phx2.fedoraproject.org",
|
||||||
|
"app02.stg.phx2.fedoraproject.org",
|
||||||
|
]
|
||||||
|
topic_prefix = "org.fedoraproject.stg."
|
||||||
|
{% else %}
|
||||||
|
suffix = "phx2.fedoraproject.org"
|
||||||
|
app_hosts = [
|
||||||
|
"app01.phx2.fedoraproject.org",
|
||||||
|
"app02.phx2.fedoraproject.org",
|
||||||
|
"app03.phx2.fedoraproject.org",
|
||||||
|
"app04.phx2.fedoraproject.org",
|
||||||
|
"app05.fedoraproject.org",
|
||||||
|
"app07.phx2.fedoraproject.org",
|
||||||
|
"app08.fedoraproject.org",
|
||||||
|
]
|
||||||
|
topic_prefix = "org.fedoraproject.prod."
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
vpn_suffix = "vpn.fedoraproject.org"
|
||||||
|
|
||||||
|
config = dict(
|
||||||
|
routing_policy={
|
||||||
|
# The gist here is that only messages signed by the
|
||||||
|
# bodhi-app0{1,2,3,4,5,6,7,8} certificates may bear the
|
||||||
|
# "org.fedoraproject.prod.bodhi.update.request.stable" topic, or else
|
||||||
|
# they fail validation and are either dropped or marked as invalid
|
||||||
|
# (depending on the consumer's wishes).
|
||||||
|
#
|
||||||
|
# There is another option that we do not set. If `routing_nitpicky` is
|
||||||
|
# set to True, then a given message's topic *must* appear in this list
|
||||||
|
# in order for it to pass validation. For instance, we have
|
||||||
|
# routing_nitpicky set to False by default and no
|
||||||
|
# "org.fedoraproject.prod.logger.log" topics appear in this policy,
|
||||||
|
# therefore, any message bearing that topic and *any* certificate signed
|
||||||
|
# by our CA may pass validation.
|
||||||
|
#
|
||||||
|
topic_prefix + "bodhi.update.request.stable": [
|
||||||
|
"bodhi-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "bodhi.update.request.testing": [
|
||||||
|
"bodhi-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "bodhi.update.request.unpush": [
|
||||||
|
"bodhi-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "bodhi.update.comment": [
|
||||||
|
"bodhi-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "bodhi.buildroot_override.tag": [
|
||||||
|
"bodhi-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "bodhi.buildroot_override.untag": [
|
||||||
|
"bodhi-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "bodhi.mashtask.mashing": [
|
||||||
|
"bodhi-releng04.%s" % suffix,
|
||||||
|
"bodhi-relepel01.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "bodhi.mashtask.complete": [
|
||||||
|
"bodhi-releng04.%s" % suffix,
|
||||||
|
"bodhi-relepel01.%s" % suffix,
|
||||||
|
],
|
||||||
|
|
||||||
|
|
||||||
|
# Compose (rel-eng) messages (use the bodhi certs)
|
||||||
|
topic_prefix + "compose.rawhide.start": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.rawhide.complete": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.rawhide.mash.start": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.rawhide.mash.complete": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.rawhide.rsync.start": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.rawhide.rsync.complete": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.start": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.complete": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.pungify.start": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.pungify.complete": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.mash.start": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.mash.complete": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.rsync.start": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "compose.branched.rsync.complete": [
|
||||||
|
"bodhi-releng03.%s" % suffix,
|
||||||
|
],
|
||||||
|
|
||||||
|
|
||||||
|
#FAS messages
|
||||||
|
topic_prefix + "fas.user.create": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.user.update": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.group.edit": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.group.update": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.group.create": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.role.update": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.group.member.remove": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.group.member.sponsor": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
topic_prefix + "fas.group.member.apply": [
|
||||||
|
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
||||||
|
],
|
||||||
|
|
||||||
|
# Git/SCM messages
|
||||||
|
topic_prefix + "git.receive": [
|
||||||
|
"scm-pkgs01.%s" % suffix,
|
||||||
|
],
|
||||||
|
topic_prefix + "git.lookaside.new": [
|
||||||
|
"lookaside-pkgs01.%s" % suffix,
|
||||||
|
],
|
||||||
|
|
||||||
|
# Tagger messages
|
||||||
|
topic_prefix + "fedoratagger.tag.update": [
|
||||||
|
"fedoratagger-packages0%i.%s" % (i, suffix) for i in range(1, 3)
|
||||||
|
],
|
||||||
|
topic_prefix + "fedoratagger.tag.create": [
|
||||||
|
"fedoratagger-packages0%i.%s" % (i, suffix) for i in range(1, 3)
|
||||||
|
],
|
||||||
|
topic_prefix + "fedoratagger.user.rank.update": [
|
||||||
|
"fedoratagger-packages0%i.%s" % (i, suffix) for i in range(1, 3)
|
||||||
|
],
|
||||||
|
|
||||||
|
# Mediawiki messages
|
||||||
|
topic_prefix + "wiki.article.edit": [
|
||||||
|
"mediawiki-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "wiki.upload.complete": [
|
||||||
|
"mediawiki-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
|
||||||
|
# Pkgdb messages
|
||||||
|
topic_prefix + "pkgdb.acl.update": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "pkgdb.acl.request.toggle": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "pkgdb.acl.user.remove": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "pkgdb.owner.update": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "pkgdb.package.new": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "pkgdb.package.update": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "pkgdb.package.retire": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
topic_prefix + "pkgdb.critpath.update": [
|
||||||
|
"pkgdb-%s" % app_hosts[i-1]
|
||||||
|
for i in range(1, len(app_hosts) + 1)
|
||||||
|
],
|
||||||
|
|
||||||
|
# Planet/venus
|
||||||
|
topic_prefix + "planet.post.new": [
|
||||||
|
"planet-people03.vpn.fedoraproject.org",
|
||||||
|
],
|
||||||
|
|
||||||
|
# Supybot/meetbot
|
||||||
|
topic_prefix + "meetbot.meeting.start": [
|
||||||
|
"supybot-value03.%s" % suffix,
|
||||||
|
],
|
||||||
|
|
||||||
|
# Only @spot and @rbergeron can use this one
|
||||||
|
topic_prefix + "announce.announcement": [
|
||||||
|
"announce-lockbox01.phx2.fedoraproject.org",
|
||||||
|
],
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
|
@ -153,206 +153,5 @@ config = dict(
|
||||||
("copr.copr-be-i-00000407", "copr-copr-be.cloud.fedoraproject.org"),
|
("copr.copr-be-i-00000407", "copr-copr-be.cloud.fedoraproject.org"),
|
||||||
("copr.copr-be", "copr-copr-be.cloud.fedoraproject.org"),
|
("copr.copr-be", "copr-copr-be.cloud.fedoraproject.org"),
|
||||||
]),
|
]),
|
||||||
routing_policy={
|
|
||||||
# The gist here is that only messages signed by the
|
|
||||||
# bodhi-app0{1,2,3,4,5,6,7,8} certificates may bear the
|
|
||||||
# "org.fedoraproject.prod.bodhi.update.request.stable" topic, or else
|
|
||||||
# they fail validation and are either dropped or marked as invalid
|
|
||||||
# (depending on the consumer's wishes).
|
|
||||||
#
|
|
||||||
# There is another option that we do not set. If `routing_nitpicky` is
|
|
||||||
# set to True, then a given message's topic *must* appear in this list
|
|
||||||
# in order for it to pass validation. For instance, we have
|
|
||||||
# routing_nitpicky set to False by default and no
|
|
||||||
# "org.fedoraproject.prod.logger.log" topics appear in this policy,
|
|
||||||
# therefore, any message bearing that topic and *any* certificate signed
|
|
||||||
# by our CA may pass validation.
|
|
||||||
#
|
|
||||||
topic_prefix + "bodhi.update.request.stable": [
|
|
||||||
"bodhi-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "bodhi.update.request.testing": [
|
|
||||||
"bodhi-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "bodhi.update.request.unpush": [
|
|
||||||
"bodhi-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "bodhi.update.comment": [
|
|
||||||
"bodhi-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "bodhi.buildroot_override.tag": [
|
|
||||||
"bodhi-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "bodhi.buildroot_override.untag": [
|
|
||||||
"bodhi-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "bodhi.mashtask.mashing": [
|
|
||||||
"bodhi-releng04.%s" % suffix,
|
|
||||||
"bodhi-relepel01.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "bodhi.mashtask.complete": [
|
|
||||||
"bodhi-releng04.%s" % suffix,
|
|
||||||
"bodhi-relepel01.%s" % suffix,
|
|
||||||
],
|
|
||||||
|
|
||||||
|
|
||||||
# Compose (rel-eng) messages (use the bodhi certs)
|
|
||||||
topic_prefix + "compose.rawhide.start": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.rawhide.complete": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.rawhide.mash.start": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.rawhide.mash.complete": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.rawhide.rsync.start": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.rawhide.rsync.complete": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.start": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.complete": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.pungify.start": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.pungify.complete": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.mash.start": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.mash.complete": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.rsync.start": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "compose.branched.rsync.complete": [
|
|
||||||
"bodhi-releng03.%s" % suffix,
|
|
||||||
],
|
|
||||||
|
|
||||||
|
|
||||||
#FAS messages
|
|
||||||
topic_prefix + "fas.user.create": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.user.update": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.group.edit": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.group.update": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.group.create": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.role.update": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.group.member.remove": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.group.member.sponsor": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
topic_prefix + "fas.group.member.apply": [
|
|
||||||
"fas-fas0%i.%s" % (i, suffix) for i in range(1, 4)
|
|
||||||
],
|
|
||||||
|
|
||||||
# Git/SCM messages
|
|
||||||
topic_prefix + "git.receive": [
|
|
||||||
"scm-pkgs01.%s" % suffix,
|
|
||||||
],
|
|
||||||
topic_prefix + "git.lookaside.new": [
|
|
||||||
"lookaside-pkgs01.%s" % suffix,
|
|
||||||
],
|
|
||||||
|
|
||||||
# Tagger messages
|
|
||||||
topic_prefix + "fedoratagger.tag.update": [
|
|
||||||
"fedoratagger-packages0%i.%s" % (i, suffix) for i in range(1, 3)
|
|
||||||
],
|
|
||||||
topic_prefix + "fedoratagger.tag.create": [
|
|
||||||
"fedoratagger-packages0%i.%s" % (i, suffix) for i in range(1, 3)
|
|
||||||
],
|
|
||||||
topic_prefix + "fedoratagger.user.rank.update": [
|
|
||||||
"fedoratagger-packages0%i.%s" % (i, suffix) for i in range(1, 3)
|
|
||||||
],
|
|
||||||
|
|
||||||
# Mediawiki messages
|
|
||||||
topic_prefix + "wiki.article.edit": [
|
|
||||||
"mediawiki-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "wiki.upload.complete": [
|
|
||||||
"mediawiki-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
|
|
||||||
# Pkgdb messages
|
|
||||||
topic_prefix + "pkgdb.acl.update": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "pkgdb.acl.request.toggle": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "pkgdb.acl.user.remove": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "pkgdb.owner.update": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "pkgdb.package.new": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "pkgdb.package.update": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "pkgdb.package.retire": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
topic_prefix + "pkgdb.critpath.update": [
|
|
||||||
"pkgdb-%s" % app_hosts[i-1]
|
|
||||||
for i in range(1, len(app_hosts) + 1)
|
|
||||||
],
|
|
||||||
|
|
||||||
# Planet/venus
|
|
||||||
topic_prefix + "planet.post.new": [
|
|
||||||
"planet-people03.vpn.fedoraproject.org",
|
|
||||||
],
|
|
||||||
|
|
||||||
# Supybot/meetbot
|
|
||||||
topic_prefix + "meetbot.meeting.start": [
|
|
||||||
"supybot-value03.%s" % suffix,
|
|
||||||
],
|
|
||||||
|
|
||||||
# Only @spot and @rbergeron can use this one
|
|
||||||
topic_prefix + "announce.announcement": [
|
|
||||||
"announce-lockbox01.phx2.fedoraproject.org",
|
|
||||||
],
|
|
||||||
},
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue