Files
Sergio Cazzolato 83ff43be85 tests: first set of test fixes for uc24 (#13739)
* tests: first set of test fixes for uc24

* add details and 2 more fixes

* fix 2 more tests

* gix user-state test

* fix lp-1813365

* Add missing details

* fix listing test

this changes needs to be done like this until the os.query is-core-* is
fixed

* fix shellcheck

* fix merge saving jobs
2024-04-09 09:01:36 -03:00
..
2022-05-11 11:27:06 +02:00

Generating model assertions

Test keys and developer accounts

Signed model assertions for use in the spread tests can be generated using gendeveloper1 tool. The assertion is signed by developer1 key, which is built-into the snapd binary used during the tests.

To build the tool:

$ go install ./tests/lib/gendeveloper1

Generating the assertions is done like this:

$ cd tests/lib/assertions
$ gendeveloper1 sign-model < developer1-pc-18.model.json > developer1-pc-18.model

The GPG of developer1 can be obtained with:

$ gendeveloper1 show-key

Valid keys and developer accounts

Some tests, particularly remodel, require valid model assertions that are signed by developer account keys known to the store. For instance, valid-for-testing-*.model files are such assertions. There is a corresponding *.json file for each of the assertions. The models were signed by one of snapd developers using their private keys.

When there is a need to regenerate the assertions and sign them again using a different set of keys be sure to update both authority-id and brand-id in each of the json files. Then follow the procedure outlined in the Ubuntu Core docs https://ubuntu.com/core/docs/custom-images#heading--signing which boils down to:

$ snap create-key my-models
$ snapcraft register-key
$ snap sign -k my-models < valid-for-testing-some-file.json > valid-for-testing-some-file.model

The value for authority-id and brand-id, is the same as the developer-id which can be obtained by running:

$ snapcraft login
$ snapcraft whoami
email:        <your-email>@...
developer-id: <your-developer-id>