zuul/zuul/executor
James E. Blair 488c99dab3 Offload FrozenJob secrets
The following potential problems were observed with FrozenJob secrets:

1) They may be repetitive: since the FrozenJob contains
lists of playbooks and each playbook record has a copy of all the
secrets which should be used for that playbook, if a job has multiple
playbooks the secrets will be repeated for each job.  Consider a base
job with three playbooks: the base job's secrets will be included
three times.

2) They may be large: secrets in ZK are stored encrypted and suffer the
same size explosion that they do when encrypted into zuul.yaml files.

3) Take #1 and #2 together and we have the possibility of having FrozenJob
objects that are larger than 1MB which is a problem for ZK.

Address all three issues by offloading the secrets to a new ZK node if
they are large (using the existing JobData framework) and de-duplicate
them and refer to them by index.

There is no backwards compatability handling here, so the ZK state needs
to be deleted.

Change-Id: I32133e8dd0e933528381f1187d270142046ff08f
2022-01-11 13:27:49 -08:00
..
sensors Enable starting executors in paused mode 2019-11-04 13:13:38 +01:00
__init__.py Rename zuul-launcher to zuul-executor 2017-03-15 12:21:24 -04:00
client.py Implement job freezing API in zuul-web 2021-11-10 09:25:49 +01:00
common.py Load job from pipeline state on executors 2021-11-23 15:16:32 -08:00
server.py Offload FrozenJob secrets 2022-01-11 13:27:49 -08:00