File: README.md

package info (click to toggle)
snapd 2.71-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 79,536 kB
  • sloc: ansic: 16,114; sh: 16,105; python: 9,941; makefile: 1,890; exp: 190; awk: 40; xml: 22
file content (56 lines) | stat: -rw-r--r-- 1,662 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# 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>
```