New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
repo: add multiarch support for stage packages. #1050
repo: add multiarch support for stage packages. #1050
Conversation
Now stage packages can use 'name:arch' syntax to stage packages meant for another architecture. Note that the build machine needs to be configured to pull packages for that architecture, though (`dpkg --add-architecture`). LP: #1655797 LP: #1592022 Signed-off-by: Kyle Fazzari <kyle@canonical.com>
Current coverage is 96.33% (diff: 74.07%)@@ master #1050 diff @@
==========================================
Files 194 194
Lines 17441 17467 +26
Methods 0 0
Messages 0 0
Branches 1345 1349 +4
==========================================
+ Hits 16808 16827 +19
- Misses 432 436 +4
- Partials 201 204 +3
|
hmmm, I guess you missed the comment on the mailing list where I said I would fix this. It would be ideal to focus on the other cases. There is a simpler solution for this. |
Indeed I did. Alright, I'll assign it to you. |
# __getitem__ is tricky | ||
self.assertThat( | ||
mock_apt.Cache().__getitem__.call_args_list, | ||
Contains(call('fake-package:arch'))) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok, this seems to be the way :-)
In [7]: p = a['bash']
In [9]: p.architecture()
Out[9]: 'amd64'
In [10]: p = a['bash:i386']
In [12]: p.architecture()
Out[12]: 'i386'
self.assertThat( | ||
exception.output, Contains( | ||
"Error downloading stage packages for part 'my-part': The " | ||
"Ubuntu package 'hello:fake-arch' was not found. You may need " |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you add a newline after the .
and before the You
? Would make it much more readable on a console
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah good call-- done.
Signed-off-by: Kyle Fazzari <kyle@canonical.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Finally had time to test this out 👍
Filed a bug about the same feature, just for build-packages: |
Now stage packages can use 'name:arch' syntax to stage packages meant for another architecture. Note that the build machine needs to be configured to pull packages for that architecture, though (`dpkg --add-architecture`). LP: #1655797 LP: #1592022 Signed-off-by: Kyle Fazzari <kyle@canonical.com>
Resolve LP: #1655797 by adding support for staging packages meant for another architecture with the 'name:arch' syntax. Note that the build machine needs to be configured to pull packages for that architecture, though (
dpkg --add-architecture
).