rabbitmq: Use novemberain repos for Debian/Ubuntu

CloudSmith is over budget, see [1].

As mentionedin in [2] - we're using amd64 packages on aarch64,
since the community mirror does not mirror aarch64 - and the packages
should be really marked as noarch.

[3] has also been incorporated in this backport

[1]: https://github.com/rabbitmq/rabbitmq-server/discussions/9526
[2]: https://github.com/rabbitmq/rabbitmq-server/discussions/9553
[3]: https://review.opendev.org/c/openstack/kolla/+/896927

Closes-Bug: #2037469

Change-Id: I83179ce5d53fed6cfe7f5fcbf6fdecd7199baa36
(cherry picked from commit 47b593d1e5)
This commit is contained in:
Michal Nasiadka 2023-09-27 08:12:10 +00:00
parent 23aefea2eb
commit 0e6676cb0b
3 changed files with 33 additions and 5 deletions

View File

@ -126,6 +126,10 @@ def handle_repos(context, reponames, mode):
>>/etc/apt/sources.list.d/{repo}.sources \
&& echo 'Signed-By: /etc/kolla/apt-keys/{repo_list[repo]['gpg_key']}' \
>>/etc/apt/sources.list.d/{repo}.sources \
&& """
if repo_list[repo]['arch']:
commands += f"""echo 'Architectures: {repo_list[repo]['arch']}' \
>>/etc/apt/sources.list.d/{repo}.sources \
&& """
except KeyError:
# NOTE(hrw): we ignore missing repositories for a given

View File

@ -72,7 +72,7 @@ debian:
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/debian"
url: "https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/debian"
suite: "bullseye"
component: "main"
gpg_key: "rabbitmq.gpg"
@ -119,9 +119,10 @@ debian-aarch64:
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/debian"
url: "https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/debian"
suite: "bullseye"
component: "main"
arch: "amd64"
gpg_key: "rabbitmq.gpg"
td-agent:
url: "http://packages.treasuredata.com/4/debian/bullseye"
@ -202,7 +203,7 @@ ubuntu:
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/ubuntu"
url: "https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu"
suite: "jammy"
component: "main"
gpg_key: "rabbitmq.gpg"
@ -249,9 +250,10 @@ ubuntu-aarch64:
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/ubuntu"
url: "https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu"
suite: "jammy"
component: "main"
arch: "amd64"
gpg_key: "rabbitmq.gpg"
td-agent:
url: "http://packages.treasuredata.com/4/ubuntu/jammy/"

View File

@ -78,6 +78,28 @@ class MethodsTest(base.TestCase):
expectCmd += ">>/etc/apt/sources.list.d/grafana.sources"
self.assertEqual(expectCmd, result)
def test_enable_repos_debian_arch(self):
template_vars = {
'base_arch': 'aarch64',
'base_distro': 'debian',
'base_package_type': 'deb'
}
result = methods.handle_repos(template_vars, ['rabbitmq'], 'enable')
expectCmd = "RUN echo 'Uris: https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/debian' " # noqa: E501
expectCmd += ">/etc/apt/sources.list.d/rabbitmq.sources && "
expectCmd += "echo 'Components: main' "
expectCmd += ">>/etc/apt/sources.list.d/rabbitmq.sources && "
expectCmd += "echo 'Types: deb' "
expectCmd += ">>/etc/apt/sources.list.d/rabbitmq.sources && "
expectCmd += "echo 'Suites: bullseye' "
expectCmd += ">>/etc/apt/sources.list.d/rabbitmq.sources && "
expectCmd += "echo 'Signed-By: /etc/kolla/apt-keys/rabbitmq.gpg' "
expectCmd += ">>/etc/apt/sources.list.d/rabbitmq.sources && "
expectCmd += "echo 'Architectures: amd64' "
expectCmd += ">>/etc/apt/sources.list.d/rabbitmq.sources"
self.assertEqual(expectCmd, result)
def test_enable_repos_debian_missing_repo(self):
template_vars = {
'base_arch': 'x86_64',
@ -111,7 +133,7 @@ class MethodsTest(base.TestCase):
expectCmd += ">>/etc/apt/sources.list.d/grafana.sources && "
expectCmd += "echo 'Uris: "
expectCmd += "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/debian' " # noqa: E501
expectCmd += "https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/debian' " # noqa: E501
expectCmd += ">/etc/apt/sources.list.d/rabbitmq.sources && "
expectCmd += "echo 'Components: main' "
expectCmd += ">>/etc/apt/sources.list.d/rabbitmq.sources && "