You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dlab.apache.org by lf...@apache.org on 2020/05/28 08:28:35 UTC
[incubator-dlab] branch DLAB-1835 updated: [DLAB-1835]: added
checker if keycloak and nginx are already installed
This is an automated email from the ASF dual-hosted git repository.
lfrolov pushed a commit to branch DLAB-1835
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
The following commit(s) were added to refs/heads/DLAB-1835 by this push:
new 70eaf25 [DLAB-1835]: added checker if keycloak and nginx are already installed
70eaf25 is described below
commit 70eaf2539aa1fe90ede54f8a37915a9721865afd
Author: leonidfrolov <fr...@gmail.com>
AuthorDate: Thu May 28 11:27:20 2020 +0300
[DLAB-1835]: added checker if keycloak and nginx are already installed
---
.../scripts/deploy_keycloak/deploy_keycloak.py | 73 +++++++++++++---------
1 file changed, 42 insertions(+), 31 deletions(-)
diff --git a/infrastructure-provisioning/scripts/deploy_keycloak/deploy_keycloak.py b/infrastructure-provisioning/scripts/deploy_keycloak/deploy_keycloak.py
index 3839309..073cfc8 100644
--- a/infrastructure-provisioning/scripts/deploy_keycloak/deploy_keycloak.py
+++ b/infrastructure-provisioning/scripts/deploy_keycloak/deploy_keycloak.py
@@ -65,33 +65,43 @@ def ensure_jre_jdk(os_user):
sys.exit(1)
def configure_keycloak():
- sudo('wget https://downloads.jboss.org/keycloak/' + keycloak_version + '/keycloak-' + keycloak_version + '.tar.gz -O /tmp/keycloak-' + keycloak_version + '.tar.gz')
- sudo('tar -zxvf /tmp/keycloak-' + keycloak_version + '.tar.gz -C /opt/')
- sudo('ln -s /opt/keycloak-' + keycloak_version + ' /opt/keycloak')
- sudo('chown ' + args.os_user + ':' + args.os_user + ' -R /opt/keycloak-' + keycloak_version)
- sudo('/opt/keycloak/bin/add-user-keycloak.sh -r master -u ' + args.keycloak_user + ' -p ' + args.keycloak_user_password) #create initial admin user in master realm
- put(templates_dir + 'realm.json', '/tmp/' + args.keycloak_realm_name + '-realm.json')
- put(templates_dir + 'keycloak.service', '/tmp/keycloak.service')
- sudo("cp /tmp/keycloak.service /etc/systemd/system/keycloak.service")
- sudo("sed -i 's|realm-name|" + args.keycloak_realm_name + "|' /tmp/" + args.keycloak_realm_name + "-realm.json")
- sudo("sed -i 's|OS_USER|" + args.os_user + "|' /etc/systemd/system/keycloak.service")
- sudo("sed -i 's|private_ip_address|" + private_ip_address + "|' /etc/systemd/system/keycloak.service")
- sudo("sed -i 's|keycloak_realm_name|" + args.keycloak_realm_name + "|' /etc/systemd/system/keycloak.service")
- sudo("systemctl daemon-reload")
- sudo("systemctl enable keycloak")
- sudo("systemctl start keycloak")
+ if not exists('/home/' + os_user + '/.ensure_dir/keycloak_ensured'):
+ try:
+ sudo('wget https://downloads.jboss.org/keycloak/' + keycloak_version + '/keycloak-' + keycloak_version + '.tar.gz -O /tmp/keycloak-' + keycloak_version + '.tar.gz')
+ sudo('tar -zxvf /tmp/keycloak-' + keycloak_version + '.tar.gz -C /opt/')
+ sudo('ln -s /opt/keycloak-' + keycloak_version + ' /opt/keycloak')
+ sudo('chown ' + args.os_user + ':' + args.os_user + ' -R /opt/keycloak-' + keycloak_version)
+ sudo('/opt/keycloak/bin/add-user-keycloak.sh -r master -u ' + args.keycloak_user + ' -p ' + args.keycloak_user_password) #create initial admin user in master realm
+ put(templates_dir + 'realm.json', '/tmp/' + args.keycloak_realm_name + '-realm.json')
+ put(templates_dir + 'keycloak.service', '/tmp/keycloak.service')
+ sudo("cp /tmp/keycloak.service /etc/systemd/system/keycloak.service")
+ sudo("sed -i 's|realm-name|" + args.keycloak_realm_name + "|' /tmp/" + args.keycloak_realm_name + "-realm.json")
+ sudo("sed -i 's|OS_USER|" + args.os_user + "|' /etc/systemd/system/keycloak.service")
+ sudo("sed -i 's|private_ip_address|" + private_ip_address + "|' /etc/systemd/system/keycloak.service")
+ sudo("sed -i 's|keycloak_realm_name|" + args.keycloak_realm_name + "|' /etc/systemd/system/keycloak.service")
+ sudo("systemctl daemon-reload")
+ sudo("systemctl enable keycloak")
+ sudo("systemctl start keycloak")
+ sudo('touch /home/' + os_user + '/.ensure_dir/keycloak_ensured')
+ except:
+ sys.exit(1)
def configure_nginx():
- sudo('apt install -y nginx')
- put(templates_dir + 'nginx.conf', '/tmp/nginx.conf')
- sudo("cp /tmp/nginx.conf /etc/nginx/conf.d/nginx.conf")
- sudo("sed -i 's|80|81|' /etc/nginx/sites-enabled/default")
- sudo("sed -i 's|external_port|" + external_port + "|' /etc/nginx/conf.d/nginx.conf")
- sudo("sed -i 's|internal_port|" + internal_port + "|' /etc/nginx/conf.d/nginx.conf")
- sudo("sed -i 's|private_ip_address|" + private_ip_address + "|' /etc/nginx/conf.d/nginx.conf")
- sudo("systemctl daemon-reload")
- sudo("systemctl enable nginx")
- sudo("systemctl restart nginx")
+ if not exists('/home/' + os_user + '/.ensure_dir/nginx_ensured'):
+ try:
+ sudo('apt install -y nginx')
+ put(templates_dir + 'nginx.conf', '/tmp/nginx.conf')
+ sudo("cp /tmp/nginx.conf /etc/nginx/conf.d/nginx.conf")
+ sudo("sed -i 's|80|81|' /etc/nginx/sites-enabled/default")
+ sudo("sed -i 's|external_port|" + external_port + "|' /etc/nginx/conf.d/nginx.conf")
+ sudo("sed -i 's|internal_port|" + internal_port + "|' /etc/nginx/conf.d/nginx.conf")
+ sudo("sed -i 's|private_ip_address|" + private_ip_address + "|' /etc/nginx/conf.d/nginx.conf")
+ sudo("systemctl daemon-reload")
+ sudo("systemctl enable nginx")
+ sudo("systemctl restart nginx")
+ sudo('touch /home/' + os_user + '/.ensure_dir/nginx_ensured')
+ except:
+ sys.exit(1)
if __name__ == "__main__":
local("sudo mkdir /logs/keycloak -p")
@@ -135,15 +145,16 @@ if __name__ == "__main__":
sys.exit(1)
try:
- print("installing Keycloak")
- configure_keycloak()
+ print("installing nginx")
+ configure_nginx()
except Exception as err:
- print("Failed keycloak install: " + str(err))
+ print("Failed nginx install: " + str(err))
sys.exit(1)
try:
- print("installing nginx")
- configure_nginx()
+ print("installing Keycloak")
+ configure_keycloak()
except Exception as err:
- print("Failed nginx install: " + str(err))
+ print("Failed keycloak install: " + str(err))
sys.exit(1)
+
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@dlab.apache.org
For additional commands, e-mail: commits-help@dlab.apache.org