from gql import gql from dds import client as dds_client name = "default" portals_name_query = gql(""" query PortalQuery ($name: String!){ portals(name: $name) { portals { name logoUrl } } } """) result = dds_client.execute(portals_name_query, {"name": name})["portals"] print(f"portal name: {result['portals'][0]['name']}") print(f"portal logo URL: {result['portals'][0]['logoUrl']}")
from gql import gql from dds import client as dds_client remove_collaborators_mutation = gql(""" mutation { removeCollaborators( teams: ["test-team-0", "test-team-1"], users: ["test-user-0", "test-user-1"], appname: "test-app" ) { app { collaborators { users teams } } error } } """) result = dds_client.execute( remove_collaborators_mutation)["removeCollaborators"] print(f"remaining teams: {result['app']['collaborators']['teams']}") print(f"remaining users: {result['app']['collaborators']['users']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client name = "test-app" # Set allApps to True if you have set an admin user in dds.py and you would like to query from all apps on DDS # and not just apps you created. allApps = False apps_name_query = gql(""" query Apps($name: String!, $allApps: Boolean!) { apps(name: $name, allApps: $allApps) { apps { name status { running } } } } """) result = dds_client.execute(apps_name_query, { "name": name, "allApps": allApps })["apps"] print(f"app name: {result['apps'][0]['name']}") print(f"app status running: {result['apps'][0]['status']['running']}")
from gql import gql from dds import client as dds_client global_environment_variables_query = gql(""" { globalEnvironmentVariables { name value readonly } } """) result = dds_client.execute( global_environment_variables_query)["globalEnvironmentVariables"] print(f"first environment variable name: {result[0]['name']}")
"ws+vzg1sHAxoU008FMYsLxb6qVbU/+9fPe9Zl7g8CLbnnWUgqyH" "tIwVD37yDNIBBItCmzaDR2J2sH2zisEwpISVjIOsK964kYqWDi6" "YnayMx9DVOueUc9LIHv7tXjunqB5+EkSyT3bq0+2tHDhMJhJzFs" "bEt9+Tjvz9+cOmw+om1tZvD [email protected]") key2 = ("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9HuXvYJPtQE/o" "/7TYi63yAopsrJ6TP+lDGdyQ+nVVp+5ojAIy9h8/h99UlNxjkiFT" "2YhI3Fl/pgNDRO4PVo6tlgb3CwiAZjSdeE5RnF79Dkj5XsM4j+FL" "MoXtbRw0K9ok9RKjz6ygIs1JDmaOdXexFnq4nAYU3fSLUa6Woccq" "THe8bFuJoAv1gbnx09Js8YcVMD96mpTJ3V/MK5YfIv10dbtrDhGu" "g3IS1V2J+0BB9orbQja554N+4S0I9rFBgVCpvPmQqddDHd/AdGkL" "v/zjEfGytjnvp68bEfDinkQkPfuxw01yd5MbcvLv39VVICWtKbqW" "263HT5LvSxwKorR7 [email protected]") keys = "\n".join((key1, key2)) update_ssh_keys_mutation = gql(""" mutation UpdateSSHKeys ($keys: String!) { updateSshKeys(keys: $keys) { ok error } } """) result = dds_client.execute(update_ssh_keys_mutation, {"keys": keys})["updateSshKeys"] print(f"success: {result['ok']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client apps_count_query = gql(""" { appsCount { username count } } """) result = dds_client.execute(apps_count_query)["appsCount"] print(f"first count: {result[0]['count']}") print(f"first username: {result[0]['username']}")
from gql import gql from dds import client as dds_client delete_app_mutation = gql(""" mutation { deleteApp(name: "test-app") { ok error } } """) result = dds_client.execute(delete_app_mutation)["deleteApp"] print(f"success: {result['ok']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client unmount_directory_mutation = gql(""" mutation { unmountDirectory(targetDir: "target", hostDir: "host", appname: "test-app") { ok error } } """) result = dds_client.execute(unmount_directory_mutation)["unmountDirectory"] print(f"success: {result['ok']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client add_app_mutation = gql( """ mutation { addApp(name: "test-app") { app { name } error } } """ ) result = dds_client.execute(add_app_mutation)["addApp"] print(f"new app name: {result['app']['name']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client delete_service_mutation = gql(""" mutation { deleteService(serviceType: REDIS, name: "test-service") { ok error } } """) result = dds_client.execute(delete_service_mutation)["deleteService"] print(f"success: {result['ok']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client config_query = gql(""" { config { OAUTH_CLIENT_ID PLOTLY_AUTH_WEBAPP_URL AUTH_SAML_ENABLED SSL_DASH_CERT_GENERATE AUTH_PASSWORD } } """) config = dds_client.execute(config_query)["config"] print(f"auth password: {config['AUTH_PASSWORD']}")
from gql import gql from dds import client as dds_client unlink_service_mutation = gql(""" mutation { unlinkService( serviceType: REDIS, serviceName: "test-service", appname: "test-app" ) { ok error } } """) result = dds_client.execute(unlink_service_mutation)["unlinkService"] print(f"success: {result['ok']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client current_query = gql(""" { current { username isAdmin } } """) current = dds_client.execute(current_query)["current"] print(f"username: {current['username']}") print(f"is admin user: {current['isAdmin']}")
from gql import gql from dds import client as dds_client change_password_mutation = gql(""" mutation { changePassword(currentPassword: "******", newPassword: "******") { ok currentPasswordError newPasswordError } } """) result = dds_client.execute(change_password_mutation)["changePassword"] print(f"success: {result['ok']}") print(f"current password error: {result['currentPasswordError']}") print(f"new password error: {result['newPasswordError']}")
from gql import gql from dds import client as dds_client ssh_keys_query = gql( """ { sshKeys { keys } } """ ) result = dds_client.execute(ssh_keys_query)["sshKeys"] print(f"ssh keys: {result['keys']}")
email: "*****@*****.**" } }, appname: "test-app" ) { app { name metadata { title description tags showInPortal contact { name email } } } error } } """) result = dds_client.execute(update_app_mutation)["updateApp"] print(f"updated app name: {result['app']['name']}") print( f"updated metadata contact email: {result['app']['metadata']['contact']['email']}" ) print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client services_query = gql( """ { services { name serviceType created } } """ ) result = dds_client.execute(services_query)["services"] print(f"first services name: {result[0]['name']}")
from gql import gql from dds import client as dds_client add_collaborators_mutation = gql( """ mutation { addCollaborators( teams: ["test-team-0", "test-team-1"], users: ["test-user-0", "test-user-1"], appname: "test-app" ) { app { collaborators { users teams } } error } } """ ) result = dds_client.execute(add_collaborators_mutation)["addCollaborators"] print(f"new user collaborator: {result['app']['collaborators']['users'][0]}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client purge_cache_mutation = gql(""" mutation { purgeCache(appname: "test-app") { ok error } } """) result = dds_client.execute(purge_cache_mutation)["purgeCache"] print(f"success: {result['ok']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client remove_environment_variable_mutation = gql(""" mutation { removeEnvironmentVariable(appname: "test-env-var", name: "test-app"){ ok error } } """) result = dds_client.execute( remove_environment_variable_mutation)["removeEnvironmentVariable"] print(f"ok: {result['ok']}") print(f"error: {result['error']}")
from gql import gql from dds import client as dds_client add_environment_variable_mutation = gql(""" mutation { addEnvironmentVariable( name: "test-env-var", value: "value", appname: "test-app" ){ ok error } } """) result = dds_client.execute( add_environment_variable_mutation)["addEnvironmentVariable"] print(f"ok: {result['ok']}") print(f"error: {result['error']}")
update_portal_mutation = gql(""" mutation UpdatePortal($metadata: JSONString!) { updatePortal( portalname: "default", metadata: $metadata ) { portal { name metadata apps { apps { name } nextPage } } error } } """) result = dds_client.execute(update_portal_mutation, {"metadata": metadata})["updatePortal"] print(f"updated portal name: {result['portal']['name']}") print(f"updated metadata: {json.loads(result['portal']['metadata'])}") print( f"updated portal's first app name: {result['portal']['apps']['apps'][0]['name']}" ) print(f"error: {result['error']}")