Merge ~vtapia/maas:lp1894116-29 into maas:2.9

Proposed by Victor Tapia
Status: Merged
Approved by: Adam Collard
Approved revision: 33a75ad73c3a4e1597e332d311091fdead1ee4fd
Merge reported by: MAAS Lander
Merged at revision: not available
Proposed branch: ~vtapia/maas:lp1894116-29
Merge into: maas:2.9
Diff against target: 47 lines (+22/-2)
2 files modified
src/maasserver/forms/packagerepository.py (+6/-2)
src/maasserver/forms/tests/test_packagerepository.py (+16/-0)
Reviewer Review Type Date Requested Status
Adam Collard (community) Approve
MAAS Lander Approve
Review via email: mp+396998@code.launchpad.net

Commit message

Set PORTS_ARCHES instead of MAIN_ARCHES as default for the ports archive (LP:#1894116)

Description of the change

The default arches for all package repositories are i386 and amd64 (MAIN_ARCHES). This commit changes the default arches for the ports package repository, so when the form is cleared, it pulls the correct arches (PORTS_ARCHES).

Backport of f75199f7e in master

To post a comment you must log in.
Revision history for this message
MAAS Lander (maas-lander) wrote :

UNIT TESTS
-b lp1894116-29 lp:~vtapia/maas/+git/maas into -b 2.9 lp:~maas-committers/maas

STATUS: SUCCESS
COMMIT: 33a75ad73c3a4e1597e332d311091fdead1ee4fd

review: Approve
Revision history for this message
Adam Collard (adam-collard) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/src/maasserver/forms/packagerepository.py b/src/maasserver/forms/packagerepository.py
2index 4b62214..87b4856 100644
3--- a/src/maasserver/forms/packagerepository.py
4+++ b/src/maasserver/forms/packagerepository.py
5@@ -102,9 +102,13 @@ class PackageRepositoryForm(MAASModelForm):
6 "'%s' is not a valid architecture. Known architectures: "
7 "%s" % (value, ", ".join(sorted(known_arches)))
8 )
9- # If no arches provided, use MAIN_ARCHES.
10+ # If no arches provided, use PORTS_ARCHES for the ports archive,
11+ # MAIN_ARCHES as default fallback.
12 if len(arches) == 0:
13- arches = PackageRepository.MAIN_ARCHES
14+ if self.cleaned_data.get("name") == "ports_archive":
15+ arches = PackageRepository.PORTS_ARCHES
16+ else:
17+ arches = PackageRepository.MAIN_ARCHES
18 return arches
19
20 def clean_distributions(self):
21diff --git a/src/maasserver/forms/tests/test_packagerepository.py b/src/maasserver/forms/tests/test_packagerepository.py
22index 1898d89..d6696c2 100644
23--- a/src/maasserver/forms/tests/test_packagerepository.py
24+++ b/src/maasserver/forms/tests/test_packagerepository.py
25@@ -191,6 +191,22 @@ class TestPackageRepositoryForm(MAASServerTestCase):
26 package_repository.arches, PackageRepository.MAIN_ARCHES
27 )
28
29+ def test_default_ports_package_repository_arches(self):
30+ package_repository = PackageRepository.objects.get(
31+ name="ports_archive"
32+ )
33+ form = PackageRepositoryForm(
34+ instance=package_repository, data={"arches": []}
35+ )
36+ self.assertTrue(form.is_valid(), form.errors)
37+ request = HttpRequest()
38+ request.user = factory.make_User()
39+ endpoint = factory.pick_choice(ENDPOINT_CHOICES)
40+ package_repository = form.save(endpoint, request)
41+ self.assertItemsEqual(
42+ package_repository.arches, PackageRepository.PORTS_ARCHES
43+ )
44+
45 def test_arches_validation(self):
46 package_repository = factory.make_PackageRepository()
47 form = PackageRepositoryForm(

Subscribers

People subscribed via source and target branches