(feat) add CodeServer addon and addon improvements (#1059)
* simplify addons to not require manually entered volumemounts, just mount them all. * simplify addons * cleanup promtail and codeserver * fix mistake in codeserver * try to add codeserver runtest * add netshoot runtest * fix codeserver ports * different codeserver port for integrationt est * bump common
This commit is contained in:
committed by
GitHub
parent
2b5fe533f6
commit
cfdffdb3be
@@ -0,0 +1,89 @@
|
||||
image:
|
||||
repository: traefik/whoami
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v1.6.1@sha256:2c52bb2c848038a33e40415c300b655d7976bafaf033ecf4a6679cb9e1715917
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 8080
|
||||
|
||||
args:
|
||||
- --port
|
||||
- '8080'
|
||||
|
||||
ingress:
|
||||
main:
|
||||
enabled: true
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
readiness:
|
||||
enabled: true
|
||||
startup:
|
||||
enabled: true
|
||||
|
||||
addons:
|
||||
codeserver:
|
||||
enabled: true
|
||||
service:
|
||||
type: NodePort
|
||||
ports:
|
||||
codeserver:
|
||||
nodePort: 30067
|
||||
|
||||
"ixCertificateAuthorities": {}
|
||||
"ixCertificates":
|
||||
"1":
|
||||
"CA_type_existing": false
|
||||
"CA_type_intermediate": false
|
||||
"CA_type_internal": false
|
||||
"CSR": ""
|
||||
"DN": "/C=US/O=iXsystems/CN=localhost/emailAddress=info@ixsystems.com/ST=Tennessee/L=Maryville/subjectAltName=DNS:localhost"
|
||||
"cert_type": "CERTIFICATE"
|
||||
"cert_type_CSR": false
|
||||
"cert_type_existing": true
|
||||
"cert_type_internal": false
|
||||
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDqjCCApKgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgDELMAkGA1UEBhMCVVMx\nEjAQBgNVBAoMCWlYc3lzdGVtczESMBAGA1UEAwwJbG9jYWxob3N0MSEwHwYJKoZI\nhvcNAQkBFhJpbmZvQGl4c3lzdGVtcy5jb20xEjAQBgNVBAgMCVRlbm5lc3NlZTES\nMBAGA1UEBwwJTWFyeXZpbGxlMB4XDTIwMDkyNTE0MDUzOFoXDTIyMTIyOTE0MDUz\nOFowgYAxCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlpWHN5c3RlbXMxEjAQBgNVBAMM\nCWxvY2FsaG9zdDEhMB8GCSqGSIb3DQEJARYSaW5mb0BpeHN5c3RlbXMuY29tMRIw\nEAYDVQQIDAlUZW5uZXNzZWUxEjAQBgNVBAcMCU1hcnl2aWxsZTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALpoGliii6X8DeoFdLcR7jjsfJIn3nC8f1pT\nLQ3RURHUOEyhPT3Z6TkhaHeHoj8D6kiXROhyJJq3kw5OeqGZisfpGQhkxjpxkfh9\nfAhlvhuLwCWHaMvSh1TaT+h9+eHfcx3un5CIaH8b1KYRBMH+jmKFpr7jkPNkBXLS\nMA7jKIIa8pD9R6lF4gAsbqJafCbT3R7bqkd9xp3n3j2YhqQzETU2lmu4fra3BPio\nofK47kSkguUC6mtk6VrDf2+QtCKlY0dtbF3e2ZBNWo1aj86sjCtoEmqOCMsPRLc/\nXwQcfEqHY4XfafXwqk0G0UxV2ce18xKoR/pN3MpLBZ65NzPnpn0CAwEAAaMtMCsw\nFAYDVR0RBA0wC4IJbG9jYWxob3N0MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqG\nSIb3DQEBCwUAA4IBAQBFW1R037y7wllg/gRk9p2T1stiG8iIXosblmL4Ak1YToTQ\n/0to5GY2ZYW29+rbA4SDTS5eeu2YqZ0A/fF3wey7ggzMS7KyNBOvx5QBJRw3PJGn\n+THfhXvdfkOyeUC6KWRGLgl+/zBFvgh6vFDq3jmv0NI4ehVBTBMCJn7r6577S16T\nwtgKMCooizII0Odu5HIF10gTieFIH3PQYm9JBji9iyemb9Ht3wn7fXQptfGadz/l\nWz/Dv9+a6IOr7JVJMHnqAIvPzpkav4efuVPOX1zbhjg4K5g+nRYfjr5F5upOd0Y3\nznWTUBUyI7CXRkpHtSDXfEqKgnk/8uv7GWw+hyKr\n-----END CERTIFICATE-----\n"
|
||||
"certificate_path": "/etc/certificates/freenas_default.crt"
|
||||
"chain": false
|
||||
"chain_list": [
|
||||
"-----BEGIN CERTIFICATE-----\nMIIDqjCCApKgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgDELMAkGA1UEBhMCVVMx\nEjAQBgNVBAoMCWlYc3lzdGVtczESMBAGA1UEAwwJbG9jYWxob3N0MSEwHwYJKoZI\nhvcNAQkBFhJpbmZvQGl4c3lzdGVtcy5jb20xEjAQBgNVBAgMCVRlbm5lc3NlZTES\nMBAGA1UEBwwJTWFyeXZpbGxlMB4XDTIwMDkyNTE0MDUzOFoXDTIyMTIyOTE0MDUz\nOFowgYAxCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlpWHN5c3RlbXMxEjAQBgNVBAMM\nCWxvY2FsaG9zdDEhMB8GCSqGSIb3DQEJARYSaW5mb0BpeHN5c3RlbXMuY29tMRIw\nEAYDVQQIDAlUZW5uZXNzZWUxEjAQBgNVBAcMCU1hcnl2aWxsZTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALpoGliii6X8DeoFdLcR7jjsfJIn3nC8f1pT\nLQ3RURHUOEyhPT3Z6TkhaHeHoj8D6kiXROhyJJq3kw5OeqGZisfpGQhkxjpxkfh9\nfAhlvhuLwCWHaMvSh1TaT+h9+eHfcx3un5CIaH8b1KYRBMH+jmKFpr7jkPNkBXLS\nMA7jKIIa8pD9R6lF4gAsbqJafCbT3R7bqkd9xp3n3j2YhqQzETU2lmu4fra3BPio\nofK47kSkguUC6mtk6VrDf2+QtCKlY0dtbF3e2ZBNWo1aj86sjCtoEmqOCMsPRLc/\nXwQcfEqHY4XfafXwqk0G0UxV2ce18xKoR/pN3MpLBZ65NzPnpn0CAwEAAaMtMCsw\nFAYDVR0RBA0wC4IJbG9jYWxob3N0MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqG\nSIb3DQEBCwUAA4IBAQBFW1R037y7wllg/gRk9p2T1stiG8iIXosblmL4Ak1YToTQ\n/0to5GY2ZYW29+rbA4SDTS5eeu2YqZ0A/fF3wey7ggzMS7KyNBOvx5QBJRw3PJGn\n+THfhXvdfkOyeUC6KWRGLgl+/zBFvgh6vFDq3jmv0NI4ehVBTBMCJn7r6577S16T\nwtgKMCooizII0Odu5HIF10gTieFIH3PQYm9JBji9iyemb9Ht3wn7fXQptfGadz/l\nWz/Dv9+a6IOr7JVJMHnqAIvPzpkav4efuVPOX1zbhjg4K5g+nRYfjr5F5upOd0Y3\nznWTUBUyI7CXRkpHtSDXfEqKgnk/8uv7GWw+hyKr\n-----END CERTIFICATE-----\n"
|
||||
]
|
||||
"city": "Maryville"
|
||||
"common": "localhost"
|
||||
"country": "US"
|
||||
"csr_path": "/etc/certificates/freenas_default.csr"
|
||||
"digest_algorithm": "SHA256"
|
||||
"email": "info@ixsystems.com"
|
||||
"extensions":
|
||||
"ExtendedKeyUsage": "TLS Web Server Authentication"
|
||||
"SubjectAltName": "DNS:localhost"
|
||||
"fingerprint": "9C:5A:1D:1B:E7:9E:0B:89:2B:37:F4:19:83:ED:3C:6B:D8:14:0D:9B"
|
||||
"from": "Fri Sep 25 16:05:38 2020"
|
||||
"id": 1
|
||||
"internal": "NO"
|
||||
"issuer": "external"
|
||||
"key_length": 2048
|
||||
"key_type": "RSA"
|
||||
"lifetime": 825
|
||||
"name": "freenas_default"
|
||||
"organization": "iXsystems"
|
||||
"organizational_unit": ""
|
||||
"parsed": true
|
||||
"privatekey": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC6aBpYooul/A3q\nBXS3Ee447HySJ95wvH9aUy0N0VER1DhMoT092ek5IWh3h6I/A+pIl0TociSat5MO\nTnqhmYrH6RkIZMY6cZH4fXwIZb4bi8Alh2jL0odU2k/offnh33Md7p+QiGh/G9Sm\nEQTB/o5ihaa+45DzZAVy0jAO4yiCGvKQ/UepReIALG6iWnwm090e26pHfcad5949\nmIakMxE1NpZruH62twT4qKHyuO5EpILlAuprZOlaw39vkLQipWNHbWxd3tmQTVqN\nWo/OrIwraBJqjgjLD0S3P18EHHxKh2OF32n18KpNBtFMVdnHtfMSqEf6TdzKSwWe\nuTcz56Z9AgMBAAECggEARwcb4uIs7BZbBu0FSCyg5TfXT6m5bKOmszg2VqmHho+i\n1DAsMcEyyP4d3E3mWLSZNQfOzfOQVxPUCQOGXsUuyHXdgAFGN0bHJDRMara59a0O\njj5GhEO4JXD6OdCmwpZuOt2OF3iiuKxWHuElOvZQMuJSYzI7LULTgKjufv23lbsf\nxMO/v9yi57c5EGgnQ8siLKOy/FQZapn4Z9qKn+lVyk5gfaKP0pDsvV4d7nGYMDD2\nYijfkSyNecApFdtWiLE5zLUlvF6oNj8o66z3YrVNKrCPzhA/5Rkkwwk32SNxvKU3\nVZFSNPeOZ60BicxYcWO+b2aAa0WF+uazJAZ4q52gUQKBgQDu88R+0wm76secYkzE\nQglteLNZKFcvth0kI5xH42Hmk9IXkGimFoDJCIrLAuopyGnfNmqmh2is3QUMUPdR\n/wDLnKc4MCezEidNoD2RBC+bzM1hB9oye/b5sOZUDFXSa0k4XSLu1UEuy1yWhkuS\n6JjY1KQfc4FN0K0Fjqqo7UCTCwKBgQDHtKQh/NvMJ2ok4YW+/QAsus4mEK9eCyUy\nOuyDszQYrGvjkS7STKJVNxGLhWb0XKSIAxMZ66b1MwOt+71h7xNn6pcancfVdK7F\n1Xl5J+76SwbXSgQwTZuoMDxPIvZn7v/2ep5Ni/BcOhMcPIcobWb/OmXrFN1brBvo\nlFNQyWWhlwKBgFDAyPMjVvLO0U6kWdUpjA4W8GV9IJnbLdX8wt/4lClcY2/bOcKH\ncFaAMIeTIJemR0FMHpbQxCtHNmGHK03mo9orwsdWXtRBmk69jJDpnT1F5VKZWMAe\n7MRNaEmXMZm+8CvALgIQx8qMp2mnUPsA6Ea+9gg6/MPTdeWe5UXZiC0pAoGAGtSt\nPJfBXBNrklruYjORo3DRo5GYThVHQRFjl2orNKltsVxfIwgCw1ortEgPBgOwY0mu\ndkwP2V+qPeTVk+PQAqUk+gF6yLXtiUzeDiYMWHpeB+y81VSH9jfM0oELA/m7T/03\naYnEmE+BI8kKC6dvMBlDeisKdneQJFZRP0hfrC8CgYEAgYIyCGwcydKpe2Nkj0Fz\nKTtCMC/k4DvJfd5Kb9AbmrPUfKgA9Xj4GT6yPG6uBMi8r5etvLCKJ2x2NtN024a8\nQJLATYPrSsaZkE+9zM0j5nYAgbKpxBhlDzDAzn//3ByVzfgJ25S80XhTI2lfbLH/\nU07ssxdZaQCo+WuD82OvNcg=\n-----END PRIVATE KEY-----\n"
|
||||
"privatekey_path": "/etc/certificates/freenas_default.key"
|
||||
"revoked": false
|
||||
"revoked_date": ""
|
||||
"root_path": "/etc/certificates"
|
||||
"san": [
|
||||
"DNS:localhost"
|
||||
]
|
||||
"serial": 1
|
||||
"signedby": ""
|
||||
"state": "Tennessee"
|
||||
"subject_name_hash": 3193428416
|
||||
"type": 8
|
||||
"until": "Thu Dec 29 15:05:38 2022"
|
||||
@@ -0,0 +1,84 @@
|
||||
image:
|
||||
repository: traefik/whoami
|
||||
pullPolicy: IfNotPresent
|
||||
tag: v1.6.1@sha256:2c52bb2c848038a33e40415c300b655d7976bafaf033ecf4a6679cb9e1715917
|
||||
|
||||
service:
|
||||
main:
|
||||
ports:
|
||||
main:
|
||||
port: 8080
|
||||
|
||||
args:
|
||||
- --port
|
||||
- '8080'
|
||||
|
||||
ingress:
|
||||
main:
|
||||
enabled: true
|
||||
|
||||
probes:
|
||||
liveness:
|
||||
enabled: true
|
||||
readiness:
|
||||
enabled: true
|
||||
startup:
|
||||
enabled: true
|
||||
|
||||
addons:
|
||||
netshoot:
|
||||
enabled: true
|
||||
|
||||
"ixCertificateAuthorities": {}
|
||||
"ixCertificates":
|
||||
"1":
|
||||
"CA_type_existing": false
|
||||
"CA_type_intermediate": false
|
||||
"CA_type_internal": false
|
||||
"CSR": ""
|
||||
"DN": "/C=US/O=iXsystems/CN=localhost/emailAddress=info@ixsystems.com/ST=Tennessee/L=Maryville/subjectAltName=DNS:localhost"
|
||||
"cert_type": "CERTIFICATE"
|
||||
"cert_type_CSR": false
|
||||
"cert_type_existing": true
|
||||
"cert_type_internal": false
|
||||
"certificate": "-----BEGIN CERTIFICATE-----\nMIIDqjCCApKgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgDELMAkGA1UEBhMCVVMx\nEjAQBgNVBAoMCWlYc3lzdGVtczESMBAGA1UEAwwJbG9jYWxob3N0MSEwHwYJKoZI\nhvcNAQkBFhJpbmZvQGl4c3lzdGVtcy5jb20xEjAQBgNVBAgMCVRlbm5lc3NlZTES\nMBAGA1UEBwwJTWFyeXZpbGxlMB4XDTIwMDkyNTE0MDUzOFoXDTIyMTIyOTE0MDUz\nOFowgYAxCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlpWHN5c3RlbXMxEjAQBgNVBAMM\nCWxvY2FsaG9zdDEhMB8GCSqGSIb3DQEJARYSaW5mb0BpeHN5c3RlbXMuY29tMRIw\nEAYDVQQIDAlUZW5uZXNzZWUxEjAQBgNVBAcMCU1hcnl2aWxsZTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALpoGliii6X8DeoFdLcR7jjsfJIn3nC8f1pT\nLQ3RURHUOEyhPT3Z6TkhaHeHoj8D6kiXROhyJJq3kw5OeqGZisfpGQhkxjpxkfh9\nfAhlvhuLwCWHaMvSh1TaT+h9+eHfcx3un5CIaH8b1KYRBMH+jmKFpr7jkPNkBXLS\nMA7jKIIa8pD9R6lF4gAsbqJafCbT3R7bqkd9xp3n3j2YhqQzETU2lmu4fra3BPio\nofK47kSkguUC6mtk6VrDf2+QtCKlY0dtbF3e2ZBNWo1aj86sjCtoEmqOCMsPRLc/\nXwQcfEqHY4XfafXwqk0G0UxV2ce18xKoR/pN3MpLBZ65NzPnpn0CAwEAAaMtMCsw\nFAYDVR0RBA0wC4IJbG9jYWxob3N0MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqG\nSIb3DQEBCwUAA4IBAQBFW1R037y7wllg/gRk9p2T1stiG8iIXosblmL4Ak1YToTQ\n/0to5GY2ZYW29+rbA4SDTS5eeu2YqZ0A/fF3wey7ggzMS7KyNBOvx5QBJRw3PJGn\n+THfhXvdfkOyeUC6KWRGLgl+/zBFvgh6vFDq3jmv0NI4ehVBTBMCJn7r6577S16T\nwtgKMCooizII0Odu5HIF10gTieFIH3PQYm9JBji9iyemb9Ht3wn7fXQptfGadz/l\nWz/Dv9+a6IOr7JVJMHnqAIvPzpkav4efuVPOX1zbhjg4K5g+nRYfjr5F5upOd0Y3\nznWTUBUyI7CXRkpHtSDXfEqKgnk/8uv7GWw+hyKr\n-----END CERTIFICATE-----\n"
|
||||
"certificate_path": "/etc/certificates/freenas_default.crt"
|
||||
"chain": false
|
||||
"chain_list": [
|
||||
"-----BEGIN CERTIFICATE-----\nMIIDqjCCApKgAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgDELMAkGA1UEBhMCVVMx\nEjAQBgNVBAoMCWlYc3lzdGVtczESMBAGA1UEAwwJbG9jYWxob3N0MSEwHwYJKoZI\nhvcNAQkBFhJpbmZvQGl4c3lzdGVtcy5jb20xEjAQBgNVBAgMCVRlbm5lc3NlZTES\nMBAGA1UEBwwJTWFyeXZpbGxlMB4XDTIwMDkyNTE0MDUzOFoXDTIyMTIyOTE0MDUz\nOFowgYAxCzAJBgNVBAYTAlVTMRIwEAYDVQQKDAlpWHN5c3RlbXMxEjAQBgNVBAMM\nCWxvY2FsaG9zdDEhMB8GCSqGSIb3DQEJARYSaW5mb0BpeHN5c3RlbXMuY29tMRIw\nEAYDVQQIDAlUZW5uZXNzZWUxEjAQBgNVBAcMCU1hcnl2aWxsZTCCASIwDQYJKoZI\nhvcNAQEBBQADggEPADCCAQoCggEBALpoGliii6X8DeoFdLcR7jjsfJIn3nC8f1pT\nLQ3RURHUOEyhPT3Z6TkhaHeHoj8D6kiXROhyJJq3kw5OeqGZisfpGQhkxjpxkfh9\nfAhlvhuLwCWHaMvSh1TaT+h9+eHfcx3un5CIaH8b1KYRBMH+jmKFpr7jkPNkBXLS\nMA7jKIIa8pD9R6lF4gAsbqJafCbT3R7bqkd9xp3n3j2YhqQzETU2lmu4fra3BPio\nofK47kSkguUC6mtk6VrDf2+QtCKlY0dtbF3e2ZBNWo1aj86sjCtoEmqOCMsPRLc/\nXwQcfEqHY4XfafXwqk0G0UxV2ce18xKoR/pN3MpLBZ65NzPnpn0CAwEAAaMtMCsw\nFAYDVR0RBA0wC4IJbG9jYWxob3N0MBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0GCSqG\nSIb3DQEBCwUAA4IBAQBFW1R037y7wllg/gRk9p2T1stiG8iIXosblmL4Ak1YToTQ\n/0to5GY2ZYW29+rbA4SDTS5eeu2YqZ0A/fF3wey7ggzMS7KyNBOvx5QBJRw3PJGn\n+THfhXvdfkOyeUC6KWRGLgl+/zBFvgh6vFDq3jmv0NI4ehVBTBMCJn7r6577S16T\nwtgKMCooizII0Odu5HIF10gTieFIH3PQYm9JBji9iyemb9Ht3wn7fXQptfGadz/l\nWz/Dv9+a6IOr7JVJMHnqAIvPzpkav4efuVPOX1zbhjg4K5g+nRYfjr5F5upOd0Y3\nznWTUBUyI7CXRkpHtSDXfEqKgnk/8uv7GWw+hyKr\n-----END CERTIFICATE-----\n"
|
||||
]
|
||||
"city": "Maryville"
|
||||
"common": "localhost"
|
||||
"country": "US"
|
||||
"csr_path": "/etc/certificates/freenas_default.csr"
|
||||
"digest_algorithm": "SHA256"
|
||||
"email": "info@ixsystems.com"
|
||||
"extensions":
|
||||
"ExtendedKeyUsage": "TLS Web Server Authentication"
|
||||
"SubjectAltName": "DNS:localhost"
|
||||
"fingerprint": "9C:5A:1D:1B:E7:9E:0B:89:2B:37:F4:19:83:ED:3C:6B:D8:14:0D:9B"
|
||||
"from": "Fri Sep 25 16:05:38 2020"
|
||||
"id": 1
|
||||
"internal": "NO"
|
||||
"issuer": "external"
|
||||
"key_length": 2048
|
||||
"key_type": "RSA"
|
||||
"lifetime": 825
|
||||
"name": "freenas_default"
|
||||
"organization": "iXsystems"
|
||||
"organizational_unit": ""
|
||||
"parsed": true
|
||||
"privatekey": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC6aBpYooul/A3q\nBXS3Ee447HySJ95wvH9aUy0N0VER1DhMoT092ek5IWh3h6I/A+pIl0TociSat5MO\nTnqhmYrH6RkIZMY6cZH4fXwIZb4bi8Alh2jL0odU2k/offnh33Md7p+QiGh/G9Sm\nEQTB/o5ihaa+45DzZAVy0jAO4yiCGvKQ/UepReIALG6iWnwm090e26pHfcad5949\nmIakMxE1NpZruH62twT4qKHyuO5EpILlAuprZOlaw39vkLQipWNHbWxd3tmQTVqN\nWo/OrIwraBJqjgjLD0S3P18EHHxKh2OF32n18KpNBtFMVdnHtfMSqEf6TdzKSwWe\nuTcz56Z9AgMBAAECggEARwcb4uIs7BZbBu0FSCyg5TfXT6m5bKOmszg2VqmHho+i\n1DAsMcEyyP4d3E3mWLSZNQfOzfOQVxPUCQOGXsUuyHXdgAFGN0bHJDRMara59a0O\njj5GhEO4JXD6OdCmwpZuOt2OF3iiuKxWHuElOvZQMuJSYzI7LULTgKjufv23lbsf\nxMO/v9yi57c5EGgnQ8siLKOy/FQZapn4Z9qKn+lVyk5gfaKP0pDsvV4d7nGYMDD2\nYijfkSyNecApFdtWiLE5zLUlvF6oNj8o66z3YrVNKrCPzhA/5Rkkwwk32SNxvKU3\nVZFSNPeOZ60BicxYcWO+b2aAa0WF+uazJAZ4q52gUQKBgQDu88R+0wm76secYkzE\nQglteLNZKFcvth0kI5xH42Hmk9IXkGimFoDJCIrLAuopyGnfNmqmh2is3QUMUPdR\n/wDLnKc4MCezEidNoD2RBC+bzM1hB9oye/b5sOZUDFXSa0k4XSLu1UEuy1yWhkuS\n6JjY1KQfc4FN0K0Fjqqo7UCTCwKBgQDHtKQh/NvMJ2ok4YW+/QAsus4mEK9eCyUy\nOuyDszQYrGvjkS7STKJVNxGLhWb0XKSIAxMZ66b1MwOt+71h7xNn6pcancfVdK7F\n1Xl5J+76SwbXSgQwTZuoMDxPIvZn7v/2ep5Ni/BcOhMcPIcobWb/OmXrFN1brBvo\nlFNQyWWhlwKBgFDAyPMjVvLO0U6kWdUpjA4W8GV9IJnbLdX8wt/4lClcY2/bOcKH\ncFaAMIeTIJemR0FMHpbQxCtHNmGHK03mo9orwsdWXtRBmk69jJDpnT1F5VKZWMAe\n7MRNaEmXMZm+8CvALgIQx8qMp2mnUPsA6Ea+9gg6/MPTdeWe5UXZiC0pAoGAGtSt\nPJfBXBNrklruYjORo3DRo5GYThVHQRFjl2orNKltsVxfIwgCw1ortEgPBgOwY0mu\ndkwP2V+qPeTVk+PQAqUk+gF6yLXtiUzeDiYMWHpeB+y81VSH9jfM0oELA/m7T/03\naYnEmE+BI8kKC6dvMBlDeisKdneQJFZRP0hfrC8CgYEAgYIyCGwcydKpe2Nkj0Fz\nKTtCMC/k4DvJfd5Kb9AbmrPUfKgA9Xj4GT6yPG6uBMi8r5etvLCKJ2x2NtN024a8\nQJLATYPrSsaZkE+9zM0j5nYAgbKpxBhlDzDAzn//3ByVzfgJ25S80XhTI2lfbLH/\nU07ssxdZaQCo+WuD82OvNcg=\n-----END PRIVATE KEY-----\n"
|
||||
"privatekey_path": "/etc/certificates/freenas_default.key"
|
||||
"revoked": false
|
||||
"revoked_date": ""
|
||||
"root_path": "/etc/certificates"
|
||||
"san": [
|
||||
"DNS:localhost"
|
||||
]
|
||||
"serial": 1
|
||||
"signedby": ""
|
||||
"state": "Tennessee"
|
||||
"subject_name_hash": 3193428416
|
||||
"type": 8
|
||||
"until": "Thu Dec 29 15:05:38 2022"
|
||||
@@ -15,4 +15,4 @@ maintainers:
|
||||
name: common
|
||||
sources: null
|
||||
type: library
|
||||
version: 8.0.11
|
||||
version: 8.0.12
|
||||
|
||||
@@ -2,16 +2,12 @@
|
||||
The code-server sidecar container to be inserted.
|
||||
*/}}
|
||||
{{- define "common.addon.codeserver.container" -}}
|
||||
{{- if lt (len .Values.addons.codeserver.volumeMounts) 1 }}
|
||||
{{- fail "At least 1 volumeMount is required for codeserver container" }}
|
||||
{{- end -}}
|
||||
name: codeserver
|
||||
image: "{{ .Values.codeserverImage.repository }}:{{ .Values.codeserverImage.tag }}"
|
||||
imagePullPolicy: {{ .Values.codeserverImage.pullPolicy }}
|
||||
{{- with .Values.addons.codeserver.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
env:
|
||||
{{- range $envList := .Values.addons.codeserver.envList }}
|
||||
{{- if and $envList.name $envList.value }}
|
||||
@@ -37,10 +33,10 @@ args:
|
||||
{{- end }}
|
||||
- "--port"
|
||||
- "{{ .Values.addons.codeserver.service.ports.codeserver.port }}"
|
||||
- {{ .Values.addons.codeserver.workingDir | default (first .Values.addons.codeserver.volumeMounts).mountPath }}
|
||||
- {{ .Values.addons.codeserver.workingDir | default "/" }}
|
||||
{{- with (include "common.controller.volumeMounts" . | trim) }}
|
||||
volumeMounts:
|
||||
{{- with .Values.addons.codeserver.volumeMounts }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{ nindent 2 . }}
|
||||
{{- end }}
|
||||
{{- if or .Values.addons.codeserver.git.deployKey .Values.addons.codeserver.git.deployKeyBase64 .Values.addons.codeserver.git.deployKeySecret }}
|
||||
- name: deploykey
|
||||
|
||||
@@ -5,10 +5,13 @@ The netshoot sidecar container to be inserted.
|
||||
name: netshoot
|
||||
image: "{{ .Values.netshootImage.repository }}:{{ .Values.netshootImage.tag }}"
|
||||
imagePullPolicy: {{ .Values.netshootImage.pullPolicy }}
|
||||
{{- with .Values.addons.netshoot.securityContext }}
|
||||
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
capabilities:
|
||||
add:
|
||||
- NET_ADMIN
|
||||
|
||||
env:
|
||||
{{- range $envList := .Values.addons.netshoot.envList }}
|
||||
|
||||
@@ -2,16 +2,13 @@
|
||||
The promtail sidecar container to be inserted.
|
||||
*/}}
|
||||
{{- define "common.addon.promtail.container" -}}
|
||||
{{- if lt (len .Values.addons.promtail.volumeMounts) 1 }}
|
||||
{{- fail "At least 1 volumeMount is required for the promtail container" }}
|
||||
{{- end -}}
|
||||
name: promtail
|
||||
image: "{{ .Values.promtailImage.repository }}:{{ .Values.promtailImage.tag }}"
|
||||
imagePullPolicy: {{ .Values.promtailImage.pullPolicy }}
|
||||
{{- with .Values.addons.promtail.securityContext }}
|
||||
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
runAsUser: 0
|
||||
runAsGroup: 0
|
||||
|
||||
env:
|
||||
{{- range $envList := .Values.addons.promtail.envList }}
|
||||
@@ -38,8 +35,8 @@ volumeMounts:
|
||||
mountPath: /etc/promtail/promtail.yaml
|
||||
subPath: promtail.yaml
|
||||
readOnly: true
|
||||
{{- with .Values.addons.promtail.volumeMounts }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- with (include "common.controller.volumeMounts" . | trim) }}
|
||||
{{ nindent 2 . }}
|
||||
{{- end }}
|
||||
{{- with .Values.addons.promtail.resources }}
|
||||
resources:
|
||||
|
||||
@@ -12,9 +12,6 @@ securityContext:
|
||||
add:
|
||||
- NET_ADMIN
|
||||
- SYS_MODULE
|
||||
{{- with .Values.addons.vpn.securityContext }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
env:
|
||||
{{- range $envList := .Values.addons.vpn.envList }}
|
||||
{{- if and $envList.name $envList.value }}
|
||||
|
||||
@@ -12,9 +12,6 @@ securityContext:
|
||||
add:
|
||||
- NET_ADMIN
|
||||
- SYS_MODULE
|
||||
{{- with .Values.addons.vpn.securityContext }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
env:
|
||||
- name: SEPARATOR
|
||||
value: ";"
|
||||
|
||||
@@ -764,15 +764,9 @@ addons:
|
||||
# - --user-data-dir
|
||||
# - "/config/.vscode"
|
||||
|
||||
# -- Specify a list of volumes that get mounted in the code-server container.
|
||||
# At least 1 volumeMount is required!
|
||||
volumeMounts: []
|
||||
# - name: config
|
||||
# mountPath: /data/config
|
||||
|
||||
# -- Specify the working dir that will be opened when code-server starts
|
||||
# If not given, the app will default to the mountpah of the first specified volumeMount
|
||||
workingDir: ""
|
||||
workingDir: "/"
|
||||
|
||||
# -- Optionally allow access a Git repository by passing in a private SSH key
|
||||
# @default -- See below
|
||||
@@ -799,16 +793,13 @@ addons:
|
||||
## Specify the nodePort value for the LoadBalancer and NodePort service types.
|
||||
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
|
||||
##
|
||||
# nodePort:
|
||||
annotations: {}
|
||||
labels: {}
|
||||
# nodePort: 36107
|
||||
|
||||
ingress:
|
||||
# -- Enable an ingress for the code-server add-on.
|
||||
enabled: false
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
labels: {}
|
||||
hosts:
|
||||
- host: code.chart-example.local
|
||||
@@ -817,12 +808,7 @@ addons:
|
||||
# Ignored if not kubeVersion >= 1.14-0
|
||||
pathType: Prefix
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - code.chart-example.local
|
||||
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
|
||||
# -- The common library supports adding a promtail add-on to to access logs and ship them to loki. It can be configured under this key.
|
||||
# @default -- See values.yaml
|
||||
@@ -845,13 +831,6 @@ addons:
|
||||
# - name: log
|
||||
# path: /config/logs/*.log
|
||||
|
||||
# -- Specify a list of volumes that get mounted in the promtail container.
|
||||
# At least 1 volumeMount is required!
|
||||
volumeMounts: []
|
||||
# - name: config
|
||||
# mountPath: /config
|
||||
# readOnly: true
|
||||
|
||||
securityContext:
|
||||
runAsUser: 0
|
||||
|
||||
@@ -868,8 +847,3 @@ addons:
|
||||
envList: []
|
||||
#- name: someenv
|
||||
# value: somevalue
|
||||
|
||||
securityContext:
|
||||
capabilities:
|
||||
add:
|
||||
- NET_ADMIN
|
||||
|
||||
@@ -126,5 +126,7 @@ These defaults can ofcoarse be changed, but as we guarantee "sane, working defau
|
||||
| teamspeak3 | main | 36104 | | |
|
||||
| teamspeak3 | query | 36105 | | |
|
||||
| teamspeak3 | files | 36106 | | |
|
||||
| CodeServer | ADDON | 36107 | | |
|
||||
|
||||
|
||||
#### Note: TCP and UPD ports that are the same in each App, are not by mistake.
|
||||
|
||||
+130
-46
@@ -134,8 +134,8 @@
|
||||
type: string
|
||||
required: true
|
||||
|
||||
- variable: promtail
|
||||
label: "Promtail"
|
||||
- variable: codeserver
|
||||
label: "Codeserver"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
@@ -146,18 +146,81 @@
|
||||
default: false
|
||||
show_subquestions_if: true
|
||||
subquestions:
|
||||
- variable: git
|
||||
label: "Git Settings"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: deployKey
|
||||
description: "Raw SSH private key"
|
||||
label: "deployKey"
|
||||
schema:
|
||||
type: string
|
||||
- variable: deployKeyBase64
|
||||
description: "Base64-encoded SSH private key. When both variables are set, the raw SSH key takes precedence"
|
||||
label: "deployKeyBase64"
|
||||
schema:
|
||||
type: string
|
||||
- variable: service
|
||||
label: ""
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: type
|
||||
label: "Service Type"
|
||||
description: "ClusterIP's are only internally available, nodePorts expose the container to the host node System, Loadbalancer exposes the service using the system loadbalancer"
|
||||
schema:
|
||||
type: string
|
||||
default: "NodePort"
|
||||
enum:
|
||||
- value: "NodePort"
|
||||
description: "NodePort"
|
||||
- value: "ClusterIP"
|
||||
description: "ClusterIP"
|
||||
- value: "LoadBalancer"
|
||||
description: "LoadBalancer"
|
||||
- variable: loadBalancerIP
|
||||
label: "LoadBalancer IP"
|
||||
description: "LoadBalancerIP"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: externalIPs
|
||||
label: "External IP's"
|
||||
description: "External IP's"
|
||||
schema:
|
||||
show_if: [["type", "=", "LoadBalancer"]]
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: externalIP
|
||||
label: "External IP"
|
||||
schema:
|
||||
type: string
|
||||
- variable: ports
|
||||
label: ""
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: codeserver
|
||||
label: ""
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: nodePort
|
||||
description: "leave empty to disable"
|
||||
label: "nodePort"
|
||||
schema:
|
||||
type: int
|
||||
default: 36107
|
||||
- variable: envList
|
||||
label: "Promtail environment Variables"
|
||||
label: "Codeserver environment Variables"
|
||||
schema:
|
||||
type: list
|
||||
show_if: [["type", "!=", "disabled"]]
|
||||
default: []
|
||||
items:
|
||||
- variable: loki
|
||||
label: "Loki URL"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: envItem
|
||||
label: "Environment Variable"
|
||||
schema:
|
||||
@@ -173,20 +236,61 @@
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: args
|
||||
label: "Promtail ecommand line arguments"
|
||||
|
||||
|
||||
- variable: promtail
|
||||
label: "Promtail"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: "enabled"
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
show_subquestions_if: true
|
||||
subquestions:
|
||||
- variable: loki
|
||||
label: "Loki URL"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: logs
|
||||
label: "Log Paths"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: list
|
||||
show_if: [["type", "!=", "disabled"]]
|
||||
default: []
|
||||
items:
|
||||
- variable: arg
|
||||
label: "Arg"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: logs
|
||||
label: "Log Paths"
|
||||
type: string
|
||||
required: true
|
||||
- variable: path
|
||||
label: "Path"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: args
|
||||
label: "Promtail ecommand line arguments"
|
||||
schema:
|
||||
type: list
|
||||
show_if: [["type", "!=", "disabled"]]
|
||||
default: []
|
||||
items:
|
||||
- variable: arg
|
||||
label: "Arg"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: envList
|
||||
label: "Promtail environment Variables"
|
||||
schema:
|
||||
type: list
|
||||
show_if: [["type", "!=", "disabled"]]
|
||||
default: []
|
||||
items:
|
||||
- variable: envItem
|
||||
label: "Environment Variable"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
@@ -195,34 +299,14 @@
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: path
|
||||
label: "Path"
|
||||
- variable: value
|
||||
label: "Value"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: volumeMounts
|
||||
label: "volumeMounts"
|
||||
description: "At least 1 volumeMount is required!"
|
||||
schema:
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: "Name"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: mountPath
|
||||
label: "mountPath"
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
- variable: readOnly
|
||||
label: "readOnly"
|
||||
schema:
|
||||
type: boolean
|
||||
required: true
|
||||
default: true
|
||||
hidden: true
|
||||
|
||||
|
||||
|
||||
|
||||
- variable: netshoot
|
||||
label: "Netshoot"
|
||||
|
||||
@@ -9,13 +9,7 @@ class Test < ChartTest
|
||||
baseValues = {
|
||||
addons: {
|
||||
codeserver: {
|
||||
enabled: true,
|
||||
volumeMounts: [
|
||||
{
|
||||
name: "config",
|
||||
mountPath: "/data/config"
|
||||
}
|
||||
]
|
||||
enabled: true
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -110,39 +104,6 @@ class Test < ChartTest
|
||||
refute_nil(deploykeyVolume)
|
||||
assert_equal("common-test-deploykey", deploykeyVolume["secret"]["secretName"])
|
||||
end
|
||||
|
||||
it 'an existing secret can be passed as a git deployKey' do
|
||||
values = baseValues.deep_merge_override({
|
||||
addons: {
|
||||
codeserver: {
|
||||
git: {
|
||||
deployKeySecret: "existingSecret"
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
chart.value values
|
||||
deployment = chart.resources(kind: "Deployment").first
|
||||
secret = chart.resources(kind: "Secret").first
|
||||
containers = deployment["spec"]["template"]["spec"]["containers"]
|
||||
volumes = deployment["spec"]["template"]["spec"]["volumes"]
|
||||
codeserverContainer = containers.find{ |c| c["name"] == "codeserver" }
|
||||
|
||||
# Check that the secret has not been created
|
||||
assert_nil(secret)
|
||||
|
||||
# Make sure the deployKey volumeMount is present in the sidecar container
|
||||
deploykeyVolumeMount = codeserverContainer["volumeMounts"].find { |v| v["name"] == "deploykey"}
|
||||
refute_nil(deploykeyVolumeMount)
|
||||
assert_equal("/root/.ssh/id_rsa", deploykeyVolumeMount["mountPath"])
|
||||
assert_equal("id_rsa", deploykeyVolumeMount["subPath"])
|
||||
|
||||
# Make sure the deployKey volume is present in the Deployment
|
||||
deploykeyVolume = volumes.find{ |v| v["name"] == "deploykey" }
|
||||
refute_nil(deploykeyVolume)
|
||||
assert_equal(values[:addons][:codeserver][:git][:deployKeySecret], deploykeyVolume["secret"]["secretName"])
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -18,14 +18,7 @@ class Test < ChartTest
|
||||
values = {
|
||||
addons: {
|
||||
promtail: {
|
||||
enabled: true,
|
||||
volumeMounts: [
|
||||
{
|
||||
name: "config",
|
||||
mountPath: "/tmp",
|
||||
readOnly: true
|
||||
}
|
||||
]
|
||||
enabled: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user