Skip to content

Commit

Permalink
Merge pull request #632 from GrahamDumpleton/session-user-details-secret
Browse files Browse the repository at this point in the history
Create a secret per session with user details from training portal.
  • Loading branch information
GrahamDumpleton authored Feb 6, 2025
2 parents 21c17af + ea6bc57 commit e97a0bf
Showing 1 changed file with 41 additions and 0 deletions.
41 changes: 41 additions & 0 deletions training-portal/src/project/apps/workshops/manager/sessions.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,47 @@ def default_value(param):


def create_request_resources(session):
secret_body = {
"apiVersion": "v1",
"kind": "Secret",
"metadata": {
"name": f"{session.name}-user",
"namespace": session.environment.name,
"labels": {
f"training.{settings.OPERATOR_API_GROUP}/component": "request",
f"training.{settings.OPERATOR_API_GROUP}/component.group": "variables",
f"training.{settings.OPERATOR_API_GROUP}/workshop.name": session.environment.workshop.name,
f"training.{settings.OPERATOR_API_GROUP}/portal.name": settings.PORTAL_NAME,
f"training.{settings.OPERATOR_API_GROUP}/portal.uid": settings.PORTAL_UID,
f"training.{settings.OPERATOR_API_GROUP}/environment.name": session.environment.name,
f"training.{settings.OPERATOR_API_GROUP}/session.name": session.name,
},
"ownerReferences": [
{
"apiVersion": f"training.{settings.OPERATOR_API_GROUP}/v1beta1",
"kind": "WorkshopSession",
"blockOwnerDeletion": True,
"controller": True,
"name": session.name,
"uid": session.uid,
}
],
},
"data": {},
}

for key, value in (
("username", session.owner.username),
("first_name", session.owner.first_name),
("last_name", session.owner.last_name),
("email", session.owner.email)
):
secret_body["data"][key] = base64.b64encode(value.encode("UTF-8")).decode(
"UTF-8"
)

pykube.Secret(api, secret_body).create()

secret_body = {
"apiVersion": "v1",
"kind": "Secret",
Expand Down

0 comments on commit e97a0bf

Please sign in to comment.