You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datalab.apache.org by lf...@apache.org on 2021/08/31 08:59:11 UTC

[incubator-datalab] branch DATALAB-1342 updated: [DATALAB-1342]: added client name and secret generation to the beginning of ssn configure

This is an automated email from the ASF dual-hosted git repository.

lfrolov pushed a commit to branch DATALAB-1342
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git


The following commit(s) were added to refs/heads/DATALAB-1342 by this push:
     new 7f75f29  [DATALAB-1342]: added client name and secret generation to the beginning of ssn configure
7f75f29 is described below

commit 7f75f29913e10dda4800c2d4dab5a23a962eff80
Author: leonidfrolov <fr...@gmail.com>
AuthorDate: Tue Aug 31 11:58:19 2021 +0300

    [DATALAB-1342]: added client name and secret generation to the beginning of ssn configure
---
 infrastructure-provisioning/scripts/deploy_datalab.py        |  4 ++--
 .../src/general/scripts/aws/ssn_configure.py                 | 12 +++++++++---
 .../src/general/scripts/azure/ssn_configure.py               | 12 +++++++++---
 .../src/general/scripts/gcp/ssn_configure.py                 | 12 +++++++++---
 4 files changed, 29 insertions(+), 11 deletions(-)

diff --git a/infrastructure-provisioning/scripts/deploy_datalab.py b/infrastructure-provisioning/scripts/deploy_datalab.py
index 01d359c..7e9541d 100644
--- a/infrastructure-provisioning/scripts/deploy_datalab.py
+++ b/infrastructure-provisioning/scripts/deploy_datalab.py
@@ -141,8 +141,8 @@ parser.add_argument('--ldap_service_password', type=str, default='service-user-p
                     help='Ldap password for admin user')
 parser.add_argument('--keycloak_realm_name', type=str, default='datalab', help='Keycloak Realm name')
 parser.add_argument('--keycloak_auth_server_url', type=str, default='datalab', help='Keycloak auth server URL')
-parser.add_argument('--keycloak_client_name', type=str, default='datalab', help='Keycloak client name')
-parser.add_argument('--keycloak_client_secret', type=str, default='datalab', help='Keycloak client secret')
+parser.add_argument('--keycloak_client_name', type=str, help='Keycloak client name')
+parser.add_argument('--keycloak_client_secret', type=str, help='Keycloak client secret')
 parser.add_argument('--keycloak_user', type=str, default='datalab', help='Keycloak user')
 parser.add_argument('--keycloak_user_password', type=str, default='keycloak-user-password',
                     help='Keycloak user password')
diff --git a/infrastructure-provisioning/src/general/scripts/aws/ssn_configure.py b/infrastructure-provisioning/src/general/scripts/aws/ssn_configure.py
index 6c4562e..43261d6 100644
--- a/infrastructure-provisioning/src/general/scripts/aws/ssn_configure.py
+++ b/infrastructure-provisioning/src/general/scripts/aws/ssn_configure.py
@@ -31,6 +31,7 @@ import os
 import sys
 import traceback
 import subprocess
+import uuid
 from fabric import *
 
 if __name__ == "__main__":
@@ -149,6 +150,11 @@ if __name__ == "__main__":
                 raise KeyError
         except KeyError:
             os.environ['aws_report_path'] = ''
+
+        if 'keycloak_client_name' not in os.environ:
+            os.environ['keycloak_client_name'] = '{}-ui'.format(ssn_conf['service_base_name'])
+        if 'keycloak_client_secret' not in os.environ:
+            os.environ['keycloak_client_secret'] = str(uuid.uuid4())
     except Exception as err:
         datalab.fab.append_result("Failed to generate variables dictionary.", str(err))
         clear_resources()
@@ -628,11 +634,11 @@ if __name__ == "__main__":
     logging.info('[CREATE KEYCLOAK CLIENT]')
     print('[CREATE KEYCLOAK CLIENT]')
     keycloak_params = "--service_base_name {} --keycloak_auth_server_url {} --keycloak_realm_name {} " \
-                      "--keycloak_user {} --keycloak_user_password {} --instance_public_ip {} " \
+                      "--keycloak_user {} --keycloak_user_password {} --instance_public_ip {} --keycloak_client_secret {} " \
         .format(ssn_conf['service_base_name'], os.environ['keycloak_auth_server_url'],
                 os.environ['keycloak_realm_name'], os.environ['keycloak_user'],
-                os.environ['keycloak_user_password'], datalab.meta_lib.get_instance_hostname(ssn_conf['tag_name'],
-                                                                                             ssn_conf['instance_name']))
+                os.environ['keycloak_user_password'], datalab.meta_lib.get_instance_hostname(
+            ssn_conf['tag_name'], ssn_conf['instance_name']), os.environ['keycloak_client_secret'])
     try:
         subprocess.run("~/scripts/{}.py {}".format('configure_keycloak', keycloak_params), shell=True, check=True)
     except Exception as err:
diff --git a/infrastructure-provisioning/src/general/scripts/azure/ssn_configure.py b/infrastructure-provisioning/src/general/scripts/azure/ssn_configure.py
index 6db08ee..e3ca4da 100644
--- a/infrastructure-provisioning/src/general/scripts/azure/ssn_configure.py
+++ b/infrastructure-provisioning/src/general/scripts/azure/ssn_configure.py
@@ -30,6 +30,7 @@ import os
 import sys
 import traceback
 import subprocess
+import uuid
 from fabric import *
 
 if __name__ == "__main__":
@@ -127,6 +128,11 @@ if __name__ == "__main__":
         if os.environ['conf_os_family'] == 'redhat':
             ssn_conf['initial_user'] = 'ec2-user'
             ssn_conf['sudo_group'] = 'wheel'
+
+        if 'keycloak_client_name' not in os.environ:
+            os.environ['keycloak_client_name'] = '{}-ui'.format(ssn_conf['service_base_name'])
+        if 'keycloak_client_secret' not in os.environ:
+            os.environ['keycloak_client_secret'] = str(uuid.uuid4())
     except Exception as err:
         datalab.fab.append_result("Failed to generate variables dictionary.", str(err))
         clear_resources()
@@ -519,11 +525,11 @@ if __name__ == "__main__":
     logging.info('[CREATE KEYCLOAK CLIENT]')
     print('[CREATE KEYCLOAK CLIENT]')
     keycloak_params = "--service_base_name {} --keycloak_auth_server_url {} --keycloak_realm_name {} " \
-                      "--keycloak_user {} --keycloak_user_password {} --instance_public_ip {} " \
+                      "--keycloak_user {} --keycloak_user_password {} --instance_public_ip {} --keycloak_client_secret {} " \
         .format(ssn_conf['service_base_name'], os.environ['keycloak_auth_server_url'],
                 os.environ['keycloak_realm_name'], os.environ['keycloak_user'],
-                os.environ['keycloak_user_password'], datalab.meta_lib.get_instance_hostname(ssn_conf['tag_name'],
-                                                                                             ssn_conf['instance_name']))
+                os.environ['keycloak_user_password'], datalab.meta_lib.get_instance_hostname(
+            ssn_conf['tag_name'], ssn_conf['instance_name']), os.environ['keycloak_client_secret'])
     try:
         subprocess.run("~/scripts/{}.py {}".format('configure_keycloak', keycloak_params), shell=True, check=True)
     except Exception as err:
diff --git a/infrastructure-provisioning/src/general/scripts/gcp/ssn_configure.py b/infrastructure-provisioning/src/general/scripts/gcp/ssn_configure.py
index 0dba5b5..b7c3d7a 100644
--- a/infrastructure-provisioning/src/general/scripts/gcp/ssn_configure.py
+++ b/infrastructure-provisioning/src/general/scripts/gcp/ssn_configure.py
@@ -31,6 +31,7 @@ import os
 import sys
 import traceback
 import subprocess
+import uuid
 from fabric import *
 
 parser = argparse.ArgumentParser()
@@ -122,6 +123,11 @@ if __name__ == "__main__":
             os.environ['aws_account_id'] = 'None'
             os.environ['aws_billing_bucket'] = 'None'
             os.environ['aws_report_path'] = 'None'
+
+        if 'keycloak_client_name' not in os.environ:
+            os.environ['keycloak_client_name'] = '{}-ui'.format(ssn_conf['service_base_name'])
+        if 'keycloak_client_secret' not in os.environ:
+            os.environ['keycloak_client_secret'] = str(uuid.uuid4())
     except Exception as err:
         datalab.fab.datalab.fab.append_result("Failed deriving names.", str(err))
         clear_resources()
@@ -528,11 +534,11 @@ if __name__ == "__main__":
     logging.info('[CREATE KEYCLOAK CLIENT]')
     print('[CREATE KEYCLOAK CLIENT]')
     keycloak_params = "--service_base_name {} --keycloak_auth_server_url {} --keycloak_realm_name {} " \
-                      "--keycloak_user {} --keycloak_user_password {} --instance_public_ip {} " \
+                      "--keycloak_user {} --keycloak_user_password {} --instance_public_ip {} --keycloak_client_secret {} " \
         .format(ssn_conf['service_base_name'], os.environ['keycloak_auth_server_url'],
                 os.environ['keycloak_realm_name'], os.environ['keycloak_user'],
-                os.environ['keycloak_user_password'], datalab.meta_lib.get_instance_hostname(ssn_conf['tag_name'],
-                                                                                             ssn_conf['instance_name']))
+                os.environ['keycloak_user_password'], datalab.meta_lib.get_instance_hostname(
+            ssn_conf['tag_name'], ssn_conf['instance_name']), os.environ['keycloak_client_secret'])
     try:
         subprocess.run("~/scripts/{}.py {}".format('configure_keycloak', keycloak_params), shell=True, check=True)
     except Exception as err:

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org