|
1 | 1 | local config = import 'jsonnet/config.jsonnet'; |
2 | 2 |
|
3 | | -local old_versions = [ |
4 | | - { output: '0.4', version: '0.4.4' }, |
5 | | -]; |
| 3 | +local |
| 4 | + version( |
| 5 | + output, |
| 6 | + version, |
| 7 | + crdFiles=['bundle.yaml'] // from v0.5 onward, a single bundle.yaml contains all of the external-secrets CRDs. |
| 8 | + ) = |
| 9 | + { |
| 10 | + output: output, |
| 11 | + version: version, |
| 12 | + crdFiles: crdFiles, |
| 13 | + }; |
6 | 14 |
|
7 | | -local versions = [ // since 0.5 |
8 | | - { output: '0.5', version: '0.5.9' }, |
9 | | - { output: '0.6', version: '0.6.1' }, |
10 | | - { output: '0.7', version: '0.7.3' }, |
11 | | - { output: '0.8', version: '0.8.12' }, |
12 | | - { output: '0.9', version: '0.9.12' }, |
| 15 | +local versions = [ |
| 16 | + version('0.4', '0.4.4', crdFiles=[ |
| 17 | + // 0.4.4 is the last version with individual CRD files |
| 18 | + 'external-secrets.io_clustersecretstores.yaml', |
| 19 | + 'external-secrets.io_externalsecrets.yaml', |
| 20 | + 'external-secrets.io_secretstores.yaml', |
| 21 | + ]), |
| 22 | + version('0.5', '0.5.9'), |
| 23 | + version('0.6', '0.6.1'), |
| 24 | + // From v0.7, the upstream kustomization.yaml was actually not properly containing all CRDs, we parse the bundle.yaml instead across the board for now. |
| 25 | + version('0.7', '0.7.3'), |
| 26 | + version('0.8', '0.8.12'), |
| 27 | + version('0.9', '0.9.12'), |
| 28 | + version('0.15', '0.15.1'), |
13 | 29 | ]; |
14 | 30 |
|
15 | 31 | config.new( |
16 | 32 | name='external-secrets', |
17 | 33 | specs=[ |
18 | 34 | { |
19 | | - local url = 'https://raw.githubusercontent.com/external-secrets/external-secrets/v%s/deploy/crds' % v.version, |
20 | | - output: v.output, |
21 | | - prefix: '^io\\.external-secrets\\..*', |
22 | | - crds: [ |
23 | | - '%s/external-secrets.io_clustersecretstores.yaml' % url, |
24 | | - '%s/external-secrets.io_externalsecrets.yaml' % url, |
25 | | - '%s/external-secrets.io_secretstores.yaml' % url, |
26 | | - ], |
27 | | - localName: 'external_secrets', |
28 | | - } |
29 | | - for v in old_versions |
30 | | - ] + [ |
31 | | - { |
32 | | - local url = 'https://raw.githubusercontent.com/external-secrets/external-secrets/v%s/config/crds/bases' % v.version, |
| 35 | + local urlTemplate = 'https://raw.githubusercontent.com/external-secrets/external-secrets/v%s/deploy/crds/%s', |
33 | 36 | output: v.output, |
34 | 37 | prefix: '^io\\.external-secrets\\..*', |
35 | 38 | crds: [ |
36 | | - '%s/external-secrets.io_clusterexternalsecrets.yaml' % url, |
37 | | - '%s/external-secrets.io_clustersecretstores.yaml' % url, |
38 | | - '%s/external-secrets.io_externalsecrets.yaml' % url, |
39 | | - '%s/external-secrets.io_pushsecrets.yaml' % url, |
40 | | - '%s/external-secrets.io_secretstores.yaml' % url, |
41 | | - |
42 | | - '%s/generators.external-secrets.io_acraccesstokens.yaml' % url, |
43 | | - '%s/generators.external-secrets.io_ecrauthorizationtokens.yaml' % url, |
44 | | - '%s/generators.external-secrets.io_fakes.yaml' % url, |
45 | | - '%s/generators.external-secrets.io_gcraccesstokens.yaml' % url, |
46 | | - '%s/generators.external-secrets.io_passwords.yaml' % url, |
47 | | - '%s/generators.external-secrets.io_vaultdynamicsecrets.yaml' % url, |
| 39 | + urlTemplate % [v.version, crdFile] |
| 40 | + for crdFile in v.crdFiles |
48 | 41 | ], |
49 | 42 | localName: 'external_secrets', |
50 | 43 | } |
|
0 commit comments