Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Team jobs #258

Merged
merged 112 commits into from
Feb 12, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
112 commits
Select commit Hold shift + click to select a range
1db6fa0
feat: working values for otomi template
Dec 18, 2020
2ab347b
refactor: not a task but a job
Dec 18, 2020
000acdd
fix: remove whitespace
Dec 18, 2020
f7c8690
feat: remove enabled flag
Dec 18, 2020
6b95033
feat: default enabled for cronjob
Dec 18, 2020
d7822cb
fix: don't commit otomi bootstrap files
Dec 21, 2020
e0d99dc
feat: check hasKey 'jobs'
Dec 21, 2020
985916e
fix: forgot floating .tasks keys
Dec 21, 2020
c6635e6
fix: secret and configmap included in chart
Dec 21, 2020
bf4612c
feat: use values from demo file
Dec 21, 2020
d257e30
feat: values-schema for team job objects
Dec 21, 2020
ce6e316
feat: example jobs.demo.yaml
Dec 21, 2020
214a5e9
fix: remove whitespace
Dec 21, 2020
00656bf
fix: job chart also defines spec.shell
Dec 21, 2020
05841ca
fix: script indent is wrong
Dec 21, 2020
3ddc82d
fix(build): validation requires name key
Dec 21, 2020
b7e6712
Merge branch 'master' into task/204/spec-enabled
Dec 21, 2020
715f58a
fix: remove redundancy
Dec 21, 2020
e1be0ad
fix: merge master
Dec 21, 2020
cae527a
fix: remove redundant key in demo file
Dec 21, 2020
2789ac1
feat: array of jobs, no changes necessary
Dec 22, 2020
e92524b
feat: corrected values-schema with review changes
Dec 29, 2020
cf3e220
fix: multiTenant flag
Dec 29, 2020
41b4b61
fix: identical to #248 if that one merges
Dec 29, 2020
c65475e
fix: now realized what it broke
Dec 29, 2020
e92a85b
fix: cronjob as demo
Dec 29, 2020
d92bafe
Merge branch 'master' into task/204/spec-enabled
Dec 29, 2020
182d2dd
Merge branch 'task/204/team-jobs-values-schema' into task/204/spec-en…
Jan 4, 2021
78ba62c
Merge branch 'task/204/spec-enabled' of github.com:redkubes/otomi-cor…
Jan 4, 2021
a65d3c4
fix: should only define plural jobs
Jan 4, 2021
b181150
fix: redundant type: object references
Jan 4, 2021
2de5502
feat: append dot after every description
Jan 4, 2021
33601fd
fix: remove weird readOnly flag
Jan 4, 2021
4f40f99
fix: return jobs key
Jan 4, 2021
81c91eb
feat: add demo values
Jan 6, 2021
326f513
feat: removed uuid function
Jan 6, 2021
339f94a
feat: cronjob already had it?
Jan 6, 2021
bbfc548
feat: deployAlways flag
Jan 6, 2021
73f7098
feat: added third use case
Jan 15, 2021
453a9be
feat: updated for review
Jan 15, 2021
933e486
Merge branch 'master' into task/204/spec-enabled
Jan 18, 2021
3d1a7ac
fix: tested deployment
Jan 19, 2021
3b51354
fix: fakeroot is used by harbor and keycloak only
Jan 21, 2021
91eea52
fix: naming potato
Jan 21, 2021
52f9a75
fix: regex potato {0,}
Jan 21, 2021
2ba26c2
fix: merge remote into local
Jan 21, 2021
12af787
fix: if array it has the name as index
Jan 21, 2021
6678483
fix: should be reversed
Jan 21, 2021
83b5776
fix: naming wasnt intuitive
Jan 21, 2021
30c674e
Merge branch 'master' into task/204/spec-enabled
Jan 22, 2021
3b09b6c
feat: proposal for schema
Jan 22, 2021
6eaa6e9
Merge branch 'task/204/spec-enabled'
Jan 25, 2021
502a82a
feat: add configmaps and secrets
Jan 25, 2021
b891982
Merge branch 'master' into task/204/spec-enabled
Jan 25, 2021
8539fcc
fix: typo
Jan 25, 2021
7798d05
fix: schema wrong copy
Jan 25, 2021
901a5ce
fix: remove unnecessary double quote
Jan 27, 2021
1ccca31
fix: object jobs to array of jobs
Jan 27, 2021
0aae4c7
fix: fakeroot and runPolicy conditional
Jan 27, 2021
c8167de
refactor: only one variable for range
Jan 27, 2021
56b5423
fix: forgot volumes key fakeroot
Jan 27, 2021
769474e
feat: draft secrets key
Jan 28, 2021
0bdd8a2
fix: unused wiring in job chart
Feb 2, 2021
7c4540f
feat: wire init env
Feb 2, 2021
4faa445
feat: wire secretKeyRefs in Job chart
Feb 2, 2021
091e97b
feat: init env vars
Feb 3, 2021
d0d8053
fix: empty configmap, desirable?
Feb 4, 2021
0dd87eb
Merge branch 'master' into task/204/spec-enabled
Feb 5, 2021
79662ff
fix: post-standup meeting corrections
Feb 5, 2021
ebe098a
feat: move job range to helmfile-60
Feb 5, 2021
091ed00
feat: user can mount files
Feb 5, 2021
6cbe47a
revert: apply
Feb 8, 2021
6f015f9
fix: referencing configmap error
Feb 8, 2021
0f0e583
feat: hybrid solution
Feb 8, 2021
c916952
feat: both commands
Feb 8, 2021
d50c146
fix: hybrid approach runPolicy
Feb 8, 2021
5e5e745
fix: shouldn't be !
Feb 8, 2021
52c681c
feat: working hook, not dry
Feb 8, 2021
3d6da66
feat: cronjob and wrangling
Feb 9, 2021
463a524
feat: values-schema, demo file, pass validation
Feb 9, 2021
e69a039
fix: useful to exit this
Feb 9, 2021
fbb4c54
feat: last potatoes conversation Morriz 9-2-2021
Feb 9, 2021
fbaad36
fix: update demo file
Feb 9, 2021
989d309
fix: secretkeyref to secrets in values
Feb 9, 2021
32ab673
fix: script should have this arg
Feb 9, 2021
abf6c2d
Update charts/jobs/templates/_helpers.tpl
Feb 10, 2021
8552535
fix: conversation Morriz 10-2-2021
Feb 10, 2021
e3e994f
fix: dash not necessary
Feb 10, 2021
afdc7ce
fix: job camelcase in values schema
Feb 10, 2021
afabc87
fix: missing or
Feb 10, 2021
c4ba25d
fix: redundant hasKey
Feb 10, 2021
02a0ea2
feat: useful comment
Feb 10, 2021
cd9b7f9
fix: file mounts, secrets selection [ci skip]
Feb 10, 2021
6ff4762
docs: added demo secrets [ci skip]
Feb 10, 2021
50cc34d
docs: added example with slashes [ci skip]
Feb 10, 2021
480c9e3
fix: replaced fakeroot with env var [ci skip]
Feb 10, 2021
8fd84bb
Merge branch 'master' into task/204/spec-enabled
Feb 10, 2021
c7de86e
Update bin/bootstrap.sh
Feb 11, 2021
8498757
Merge branch 'master' into task/204/spec-enabled
Feb 11, 2021
e77b4a0
fix: tested on cluster
Feb 11, 2021
5f70bbd
Merge branch 'task/204/spec-enabled'
Feb 11, 2021
b3465c2
fix: an unknown spec appeared
Feb 11, 2021
668ac05
fix: add missing ends
Feb 11, 2021
30d26e8
fix: policies?
Feb 11, 2021
c13754a
fix: relative path helmfile.d
Feb 11, 2021
eb0a3d8
fix: new helmfile release
Feb 11, 2021
cb68159
fix: policy build
Feb 11, 2021
f454e54
fix: properties in the wrong place
Feb 11, 2021
3562af3
Merge branch 'master' into task/204/spec-enabled
Feb 11, 2021
6bbaffb
Merge branch 'master' into task/204/spec-enabled
Feb 12, 2021
a9c2369
Merge branch 'master' into task/204/spec-enabled
Feb 12, 2021
64c8e7f
Merge branch 'master' into task/204/spec-enabled
Feb 12, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
121 changes: 121 additions & 0 deletions .demo/env/clouds/aws/demo/jobs.demo.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
teamConfig:
teams:
demo:
jobs:
- enabled: true
env:
receiver: world
files:
/config/some-file: someData
/config/some/file2: someData2
/config/some-file3: |-
some data on another line
another line
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
init:
env:
foo: bar
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
script: echo "hello $receiver and $SOME-KEY"
secrets:
- name: generic-example
entries:
- some-key
- some-key2
- name: another-generic-secret
entries:
- some-key3
name: contains-everything
runPolicy: Always
script: echo "hello $receiver"
secrets:
- name: generic-example
entries:
- some-key
- some-key2
- name: another-generic-secret
entries:
- some-key3
type: Job
- enabled: true
env:
receiver: world
files:
some-file: someData
some-file2: someData2
some-file3: |-
some data on another line
another line
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
init:
env:
foo: bar
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
script: echo "hello $receiver"
secrets:
- name: generic-example
entries:
- some-key
- some-key2
- name: another-generic-secret
entries:
- some-key3
name: also-contains-everything-and-cron
runPolicy: Always
schedule: 0 1 * * *
script: echo "hello $receiver"
secrets:
- name: generic-example
entries:
- some-key
- some-key2
- name: another-generic-secret
entries:
- some-key3
type: CronJob
- enabled: true
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
name: base
script: echo "hello $receiver"
type: Job
- enabled: true
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
name: base-cronjob
schedule: 0 1 * * *
script: echo "hello world"
type: CronJob
- enabled: true
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
init:
env:
foo: bar
image:
repository: busybox
tag: latest
pullPolicy: IfNotPresent
script: echo "hello world"
name: init-cronjob
schedule: 0 1 * * *
script: echo "hello $receiver"
type: CronJob
120 changes: 119 additions & 1 deletion .demo/env/teams/secrets.demo.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,122 @@
teamConfig:
teams:
demo:
secrets: []
secrets:
- name: gcr-example
type: docker-registry
server: eu.gcr.io
username: _json_key
password: '{ "type": "service_account", "project_id": "otomi-cloud", "private_key_id":
"f8e533c9e8179f89d5f512b8eba75179c8d85416", "private_key": "", "client_email":
"gcr-auth-ro-test@otomi-cloud.iam.gserviceaccount.com", "client_id":
"107392620088719932858", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri":
"https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url":
"https://www.googleapis.com/oauth2/v1/certs", "client_x509_cert_url":
"https://www.googleapis.com/robot/v1/metadata/x509/gcr-auth-ro-test%40otomi-cloud.iam.gserviceaccount.com"
}'
id: 45e00dd6-fd0a-4c3c-95dc-b147501bbea9
- name: generic-example
type: generic
entries:
- key: some-key
value: value
- key: some-key2
value: value2
id: f7f9def1-cc52-465b-9da2-87e9fec4cf95
- name: tls-example
type: tls
crt: |
-----BEGIN CERTIFICATE-----
MIIFZTCCBE2gAwIBAgISA4vOUteW3MIgHDowgJ14vmJ3MA0GCSqGSIb3DQEBCwUA
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0yMDA2MjIxNjAxMzlaFw0y
MDA5MjAxNjAxMzlaMCExHzAdBgNVBAMMFiouZGVtby5na2Uub3RvbWkuY2xvdWQw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDdDBCGKlgiREvNvHYIplj8
nNOAB2ARqxptxGfmN/cIE2cS4YguFxb7Jpm+TwPJIxC0UvKRhJpmle/2dQ80TAGV
9jwWajO/w2b9D6rJ9t5D5NRWY9iO4EtuOuoRgt2Kprnncrh/i0s7T2gaGNeQgxmp
wyI050rm6TKJW15+7kzs3bZwvXmscz5QrYOni1EORBjrfFn2ALgVwQWEHAKIwp2I
fQyagVC0d5DVE39XOMuFzhU6QN33GCiRRKPoa+/RVFH9IiblNVe8qzO6yAf3YVeG
6CsttzCCr3nYoJDVaU7yCYya3TpTdM+0F8egm4ybO4rGBnGxJ2EroGcg/EHS86eD
AgMBAAGjggJsMIICaDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUH
AwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFJzrcl/NDLYO5BgI
hZVrvuZdBrXTMB8GA1UdIwQYMBaAFKhKamMEfd265tE5t6ZFZe/zqOyhMG8GCCsG
AQUFBwEBBGMwYTAuBggrBgEFBQcwAYYiaHR0cDovL29jc3AuaW50LXgzLmxldHNl
bmNyeXB0Lm9yZzAvBggrBgEFBQcwAoYjaHR0cDovL2NlcnQuaW50LXgzLmxldHNl
bmNyeXB0Lm9yZy8wIQYDVR0RBBowGIIWKi5kZW1vLmdrZS5vdG9taS5jbG91ZDBM
BgNVHSAERTBDMAgGBmeBDAECATA3BgsrBgEEAYLfEwEBATAoMCYGCCsGAQUFBwIB
FhpodHRwOi8vY3BzLmxldHNlbmNyeXB0Lm9yZzCCAQUGCisGAQQB1nkCBAIEgfYE
gfMA8QB3AF6nc/nfVsDntTZIfdBJ4DJ6kZoMhKESEoQYdZaBcUVYAAABctz6btoA
AAQDAEgwRgIhANYSIadn5gmy7GCBeG7Hfil2lP6/KfOR9Gzg31v2Y1NqAiEArPZh
LleYT+do5LP90HkwP4jVE/uS9hmXvd/i+5P9+CkAdgAHt1wb5X1o//Gwxh0jFce6
5ld8V5S3au68YToaadOiHAAAAXLc+m77AAAEAwBHMEUCIATG3UD1Kr5Gqc/LQOXy
dj4zNlnmo/5/Wp89VtdFmuJNAiEAgh87M+7mAzsZ/BwLrU51V6RdCDB5XoIPQYLZ
3gzoi1EwDQYJKoZIhvcNAQELBQADggEBABaXUl4x9hpoz+J+HcIoTDMZFSCYOpAk
XtVlGzl7NsUUz8c8UuOMKEhLSZEDqzq223dAMiUoQySFK45UAamMhTR7FRWcXLO1
jEP2IdHWVARFF1jQit8Y+PGopzIWWMG77klI4CRSzVOmK/i2JuP7ayJZLs8hsakK
6M1Qn/INL5GJ3of6lZftDUe+g6UBKIQ3Ika/2aIMo0LnL0HOlatZ1LcU6/9vKExu
s3XCpE3XqDwm5rMITQ8idjK3MubqjJe4kRAxmXZKtCUogZB0Bj0TZst5aSete9tn
tnJcqAvKYS+Ai2mGqzthtAlCO4r7o/WIypvHzcFxrn+tIO+V3IdYTmg=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTE2MDMxNzE2NDA0NloXDTIxMDMxNzE2NDA0Nlow
SjELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUxldCdzIEVuY3J5cHQxIzAhBgNVBAMT
GkxldCdzIEVuY3J5cHQgQXV0aG9yaXR5IFgzMIIBIjANBgkqhkiG9w0BAQEFAAOC
AQ8AMIIBCgKCAQEAnNMM8FrlLke3cl03g7NoYzDq1zUmGSXhvb418XCSL7e4S0EF
q6meNQhY7LEqxGiHC6PjdeTm86dicbp5gWAf15Gan/PQeGdxyGkOlZHP/uaZ6WA8
SMx+yk13EiSdRxta67nsHjcAHJyse6cF6s5K671B5TaYucv9bTyWaN8jKkKQDIZ0
Z8h/pZq4UmEUEz9l6YKHy9v6Dlb2honzhT+Xhq+w3Brvaw2VFn3EK6BlspkENnWA
a6xK8xuQSXgvopZPKiAlKQTGdMDQMc2PMTiVFrqoM7hD8bEfwzB/onkxEz0tNvjj
/PIzark5McWvxI0NHWQWM6r6hCm21AvA2H3DkwIDAQABo4IBfTCCAXkwEgYDVR0T
AQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwfwYIKwYBBQUHAQEEczBxMDIG
CCsGAQUFBzABhiZodHRwOi8vaXNyZy50cnVzdGlkLm9jc3AuaWRlbnRydXN0LmNv
bTA7BggrBgEFBQcwAoYvaHR0cDovL2FwcHMuaWRlbnRydXN0LmNvbS9yb290cy9k
c3Ryb290Y2F4My5wN2MwHwYDVR0jBBgwFoAUxKexpHsscfrb4UuQdf/EFWCFiRAw
VAYDVR0gBE0wSzAIBgZngQwBAgEwPwYLKwYBBAGC3xMBAQEwMDAuBggrBgEFBQcC
ARYiaHR0cDovL2Nwcy5yb290LXgxLmxldHNlbmNyeXB0Lm9yZzA8BgNVHR8ENTAz
MDGgL6AthitodHRwOi8vY3JsLmlkZW50cnVzdC5jb20vRFNUUk9PVENBWDNDUkwu
Y3JsMB0GA1UdDgQWBBSoSmpjBH3duubRObemRWXv86jsoTANBgkqhkiG9w0BAQsF
AAOCAQEA3TPXEfNjWDjdGBX7CVW+dla5cEilaUcne8IkCJLxWh9KEik3JHRRHGJo
uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/
wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu
X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG
PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6
KOqkqm57TH2H3eDJAkSnh6/DNFu0Qg==
-----END CERTIFICATE-----
key: |
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA3QwQhipYIkRLzbx2CKZY/JzTgAdgEasabcRn5jf3CBNnEuGI
LhcW+yaZvk8DySMQtFLykYSaZpXv9nUPNEwBlfY8Fmozv8Nm/Q+qyfbeQ+TUVmPY
juBLbjrqEYLdiqa553K4f4tLO09oGhjXkIMZqcMiNOdK5ukyiVtefu5M7N22cL15
rHM+UK2Dp4tRDkQY63xZ9gC4FcEFhBwCiMKdiH0MmoFQtHeQ1RN/VzjLhc4VOkDd
9xgokUSj6Gvv0VRR/SIm5TVXvKszusgH92FXhugrLbcwgq952KCQ1WlO8gmMmt06
U3TPtBfHoJuMmzuKxgZxsSdhK6BnIPxB0vOngwIDAQABAoIBAEZ8bGB77DKxGIL4
T6MeeE3FLGQs9eNsbjcGZCMzQWCf30RUCnq3/ioD+w6GX6yps8/si1D/ucRwl149
oaWJfw/0vuBe6TWC97pGXq2cPO/lbhhGKm4U87iorK78zexCkhFNsatqHYlCHu4D
cemxBGPvx16bSnUrc2P9cLqE/p6g1JNljHproCnPaPtXgiNYGTGi1sv1bzr4cB65
dhjJzKoY5wTcGvNjRuWQ7B3K/Cc/tUxmUNtus2zhwmITkiC2JU5e+5ZSlCaf6blY
xg3aaPlbX0qAnijRB0wLUqZKAawGCy7znQp1ZrRuZ+XcN7E6ko+PuXTqKntYI5vL
w91XwGECgYEA5OLKrwh9jxfcICCNojKWLdtrQUOeUQ52zv+mbpl2NZ3YasfMAsdL
nUoizdusDIlK3tdt0zoEZp/oVfZkLHo7FxNks2TiMsAcH2qgd8VgP7WrEf1aQpDr
HVV7YiWG9KiTISAHn6C53HB9yrb5dx51J0n78OOryxecuExLpbKyDfkCgYEA9zuN
tM+3IQGywQ8VCbGJW5Hd+/kc5/E4MS/K5rFKVIONd0tIgJ+BCUOMsDlveCEwz/mT
ysv6gxsFPZshKsBGBA0jkUb35p6TiLiwkweW05zBaims9nPrtPftzdGpXcP9hbUD
E4fyrGNEL2EX7ybZsniCcUMJxFDKiZEzP23aMFsCgYBpASqfFjQUG4wfKRARI0gG
ja0s6cqNwSb8XAiMoNa8Tkfk5PhRJgEojcRd0LOjpLC2fvqhdvJh6mZ6WWknhoPp
WDpQmq2zPrMoLpCjoedAEyYCQMrR0w4qDPdn1XOOdm/ZOIqGzwO1f94Vy8+yuERi
2+w7XReJOrHpUwc5YzuQcQKBgQCgccqV09NRnUuHVKVfhBLTFUfNdS5YK8g+y3hO
3DGTxUfyai3kIx9Xhrnvx2ZavJdz8NED4/pwSQHOqDUPDHajvG8focHRrYmrSch1
spAkRm+S2PcBfdsyt09hqbXTPxTxR7Z2X1ySmV0vrkAdGMZgtypYHJxjBddbDZsH
h9/4TwKBgD7iPbFgtQZU3xKu+nh4IULAmT1I8pn7B0hUiyakfURF1SuppzMxhFhw
15mglTQlUm7dBvgHzR/FJnY6RgfIWReBUnOF3Z0Ik+yTqAR3yV3UgAgBfwRca5vo
EVM82KFbGCTz6O0bzOfgSTd+MdShJfDSwtAGz9QdkHLnrLZQyKte
-----END RSA PRIVATE KEY-----
ca: caaaa
id: f25926eb-1198-4d22-98d7-74dab29beffa
- name: another-generic-secret
type: generic
entries:
- key: some-key3
value: value3
id: 1c35edd0-85c1-405a-ac76-3c7eb9505253
10 changes: 10 additions & 0 deletions charts/jobs/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -61,3 +61,13 @@ Create the name of the service account to use
{{ default "default" .Values.serviceAccount.name }}
{{- end -}}
{{- end -}}

{{- define "itemsByName" -}}
{{- range $i := . }}
{{ $i.name }}: {{- $i | toYaml | nindent 2 }}
{{- end }}
{{- end -}}

{{- define "fileConfigMapName" -}}
{{ printf "job-%s" (. | replace "." "" | replace "/" "") }}
{{- end -}}
22 changes: 18 additions & 4 deletions charts/jobs/templates/configmap.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,26 @@
{{- $v := .Values }}
{{- range $name, $spec := $v.tasks }}
{{- if and $spec.enabled $spec.env }}
{{- if or (or $v.env $v.init.env) $v.files }}
apiVersion: v1
kind: ConfigMap
metadata:
name: job-{{ $name }}
name: job-{{ $v.name }}
labels: {{- include "jobs.labels" $ | nindent 4 }}
data: {{- toYaml $spec.env | nindent 2 }}
data:
{{- with $v.env }}
{{- toYaml . | nindent 4 }}
{{- end }}
{{- with $v.init.env }}
{{- toYaml . | nindent 4 }}
{{- end }}
---
{{- end }}
{{- range $location, $content := $v.files }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "fileConfigMapName" $location }}
labels: {{- include "jobs.labels" $ | nindent 4 }}
data:
{{ include "fileConfigMapName" $location }}: {{- toYaml $content | nindent 4 }}
---
{{- end }}
Loading