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
Create Plainbox Provider plugin #364
Conversation
Can one of the admins verify this patch? |
1 similar comment
Can one of the admins verify this patch? |
9c04b9e
to
cf09fe5
Compare
deb http://${security}.ubuntu.com/${suffix} ${release}-security main restricted | ||
deb http://${security}.ubuntu.com/${suffix} ${release}-security universe | ||
deb http://${security}.ubuntu.com/${suffix} ${release}-security multiverse | ||
deb http://ppa.launchpad.net/checkbox-dev/ppa/ubuntu ${release} main |
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.
I'd use stable PPA here really or make this customizable with an explicit knob.
cf09fe5
to
5db0952
Compare
I've updated the code to make it possible to disable the Checkbox Development PPA. Also, switched to using an explicit namespace (kept the provider name "Simple" though"). |
OK to test |
5db0952
to
9c19059
Compare
retest this please |
9c19059
to
1b738a2
Compare
1b738a2
to
2f45197
Compare
2f45197
to
db13ab5
Compare
retest this please |
1 similar comment
retest this please |
add to whitelist |
retest this please |
db13ab5
to
27bacbd
Compare
super().__init__(name, options) | ||
self.build_packages.extend(['python3-plainbox', 'intltool']) | ||
if self.options.checkbox_dev_ppa: | ||
self._PLUGIN_STAGE_SOURCES = self._DEV_PPA_PLUGIN_STAGE_SOURCES |
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.
this _PLUGIN_STAGE_SOURCES is not a constant, so it shouldn't be all capital letters.
_plugin_stage_sources.
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.
sorry, not from your branch. After you merge I'll propose something to change it.
For you, it seems safer to overwrite the PLUGIN_STAGE_SOURCES @Property, instead of dealing with the internal attribute.
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.
Yes, don't take advantage of internal implementation details which are subject to change 😉
👍 from me. |
27bacbd
to
885ef55
Compare
description: | | ||
Create a snap of a very simple plainbox that could | ||
then be used by a checkbox application | ||
icon: icon.png |
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.
remove this entry please
|
Pushed commit with icon file removed from simple-plainbox-provider integration test. |
|
schema['properties']['checkbox-dev-ppa'] = { | ||
'type': 'boolean', | ||
'default': 'true', | ||
} |
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.
since you aren't overriding properties
it seems you are making use of the common source
options, can you add that piece of information to the doc string?
Thanks for this, I have a bunch of open questions in there though. Also, does this rely on python provided by the os snap? It is fine from my PoV, just want to make sure. |
Given the previous comment I would like to see an example and an example_test (which would run on a snappy system) |
The example test would be so nice, indeed. |
Thank you for the reviews, I will put an example together and try and address the questions ASAP. |
e76d48a
to
318332b
Compare
318332b
to
0b894a7
Compare
0b894a7
to
19140e7
Compare
19140e7
to
6b1bde0
Compare
6b1bde0
to
5b07527
Compare
5b07527
to
aad99ce
Compare
aad99ce
to
6d62c48
Compare
lp: #1552369 Integration tests provided that check the plugin can be used in several common Checkbox use cases.
6d62c48
to
af05e90
Compare
I have added integration tests to cover a set of what I think are expected use cases for this plugin. One of these fails with a python import error for module 'plainbox'. This is provided by the package python3-plainbox which is explicitly added to the build-package list by the plugin. I would like to know how to guarantee that 'build-package' works as advertised. |
@jocave build-packages will just land on the host and be used to build the system, there is additional magic to crawl everything ELF and bring in any .so it needs not provided in the snap/part area. stage-packages however, which is what you use in your examples are a bit tricky, specially when it comes to python as you will need to define a Given this still needs a few twists and turns I am going to close it for now. Feel free to reopen when ready. |
lp: #1552369
It would be useful if this plugin could be released on to the 1.x series as well.