diff --git a/kolla/template/methods.py b/kolla/template/methods.py index 6b647de653..1a59267029 100644 --- a/kolla/template/methods.py +++ b/kolla/template/methods.py @@ -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 diff --git a/kolla/template/repos.yaml b/kolla/template/repos.yaml index a7d5b736b9..acd356b55b 100644 --- a/kolla/template/repos.yaml +++ b/kolla/template/repos.yaml @@ -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/" diff --git a/kolla/tests/test_methods.py b/kolla/tests/test_methods.py index 9574bb3829..1b7b49a59d 100644 --- a/kolla/tests/test_methods.py +++ b/kolla/tests/test_methods.py @@ -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 && "