* o/devicestate: read system options when handling kernel command line
Use the kernel command line options when building the kernel command
line.
* tests: add cmdline-option test
cmdline-option checks that we can change the kernel command line using
the kernel system options.
* overlord: make task keys for the update cmdline task constants
* o/devicestate: export CurrentGadgetInfo so it can be used from configcore
* o/configcore: validate kernel command line against allow list
* o/devicestate: use the full string when looking for the kernel command
line options.
* tests/nested/manual/cmdline-option: run remotely all commands
* overlord: copy strings instead of using constants for task keys
Until some better way is found.
* gadget,overlord: change checking allowed parameters to a filter function
* o/devicestate: filter out unallowed arguments when building the kernel cmdline
Filter arguments not allowed by the gadget.
* gadget: name return params in FilterKernelCmdline and add test cases
* overlord: address review comments
* gadget,overlord: address review comments
To ensure the kernel/gadget refresh works correctly this commit adds
a new test that creates a new gadget and kernel snap and refreshes
those.
The test will also check that the reboot will not happen automatically.
Note that right now only the gadget refresh is enabled because the
kernel needs a newer version of snap-bootstrap that supports the
system-seed-null role.