2 Commits

Author SHA1 Message Date
Oscar Krause
14f8b54752 test with "76 chars per line" 2025-04-22 07:32:30 +02:00
Oscar Krause
dc783e6518 typos 2025-04-22 07:32:05 +02:00
2 changed files with 20 additions and 7 deletions

View File

@@ -535,9 +535,9 @@ Status endpoint, used for *healthcheck*.
Shows current runtime environment variables and their values. Shows current runtime environment variables and their values.
**`GET /-/config/root-ca`** **`GET /-/config/root-certificate`**
Returns the Root-CA Certificate which is used. This is required for patching `nvidia-gridd` on 18.x releases. Returns the Root-Certificate Certificate which is used. This is required for patching `nvidia-gridd` on 18.x releases.
**`GET /-/readme`** **`GET /-/readme`**

View File

@@ -7,6 +7,7 @@ from hashlib import sha256
from json import loads as json_loads, dumps as json_dumps from json import loads as json_loads, dumps as json_dumps
from os import getenv as env from os import getenv as env
from os.path import join, dirname from os.path import join, dirname
from textwrap import wrap
from uuid import uuid4 from uuid import uuid4
from dateutil.relativedelta import relativedelta from dateutil.relativedelta import relativedelta
@@ -151,10 +152,9 @@ async def _config():
return Response(content=json_dumps(response), media_type='application/json', status_code=200) return Response(content=json_dumps(response), media_type='application/json', status_code=200)
@app.get('/-/config/root-certificate', summary='* Root Certificate', description='returns Root--Certificate needed for patching nvidia-gridd')
@app.get('/-/config/root-ca', summary='* Root CA', description='returns Root-CA needed for patching nvidia-gridd')
async def _config(): async def _config():
return Response(content=my_root_certificate.pem().decode('utf-8'), media_type='text/plain') return Response(content=my_root_certificate.pem().decode('ascii'), media_type='text/plain')
@app.get('/-/readme', summary='* Readme') @app.get('/-/readme', summary='* Readme')
@@ -471,8 +471,21 @@ async def leasing_v1_config_token(request: Request):
my_jwt_encode_key = jwk.construct(my_si_private_key.pem().decode('utf-8'), algorithm=ALGORITHMS.RS256) my_jwt_encode_key = jwk.construct(my_si_private_key.pem().decode('utf-8'), algorithm=ALGORITHMS.RS256)
config_token = jws.sign(payload, key=my_jwt_encode_key, headers=None, algorithm=ALGORITHMS.RS256) config_token = jws.sign(payload, key=my_jwt_encode_key, headers=None, algorithm=ALGORITHMS.RS256)
response_ca_chain = my_ca_certificate.pem().decode('utf-8').strip().replace('\n', '\r\n') response_ca_chain = my_ca_certificate.pem().decode('utf-8').strip() # .replace('\n', '\r\n')
response_si_certificate = my_si_certificate.pem().decode('utf-8').strip().replace('\n', '\r\n') response_ca_chain = response_ca_chain.replace('-----BEGIN CERTIFICATE-----', '')
response_ca_chain = response_ca_chain.replace('-----END CERTIFICATE-----', '')
response_ca_chain = response_ca_chain.replace('\n', '')
response_ca_chain = wrap(response_ca_chain, 76)
response_ca_chain = '\r\n'.join(response_ca_chain)
response_ca_chain = f'-----BEGIN CERTIFICATE-----\r\n{response_ca_chain}\r\n-----END CERTIFICATE-----'
response_si_certificate = my_si_certificate.pem().decode('utf-8').strip() # .replace('\n', '\r\n')
response_si_certificate = response_si_certificate.replace('-----BEGIN CERTIFICATE-----', '')
response_si_certificate = response_si_certificate.replace('-----END CERTIFICATE-----', '')
response_si_certificate = response_si_certificate.replace('\n', '')
response_si_certificate = wrap(response_si_certificate, 76)
response_si_certificate = '\r\n'.join(response_si_certificate)
response_si_certificate = f'-----BEGIN CERTIFICATE-----\r\n{response_si_certificate}\r\n-----END CERTIFICATE-----'
response = { response = {
"certificateConfiguration": { "certificateConfiguration": {