diff --git a/utils/hostname_ssh.py b/utils/hostname_ssh.py index 01e188bc7..e66e50fd8 100644 --- a/utils/hostname_ssh.py +++ b/utils/hostname_ssh.py @@ -1,9 +1,10 @@ +#!/usr/bin/env python3 import sys import os import subprocess import json import digitalocean -from django.conf import settings +# from django.conf import settings sys.path.append('/srv/newsblur') @@ -12,28 +13,20 @@ os.environ['DJANGO_SETTINGS_MODULE'] = 'newsblur_web.settings' if __name__ == '__main__': # Check and clean second argument (ex: sshdo task 2) second_arg = sys.argv[2] if len(sys.argv) > 2 else "1" - droplet_index = int(second_arg) if second_arg.isnumeric() else 1 + droplet_index = int(second_arg) if str(second_arg).isnumeric() else 1 droplet_name = sys.argv[1] # Use correct Digital Ocean team based on "old" + commands = ['ansible-inventory', '--list'] + env = None if second_arg == "old": - doapi = digitalocean.Manager(token=settings.DO_TOKEN_FABRIC) - # Cycle through droplets finding match - droplets = doapi.get_all_droplets() - for droplet in droplets: - if droplet.name.startswith(droplet_name): - if droplet_index > 1: - droplet_index -= 1 - continue - print(droplet.ip_address) - break - else: - hosts = subprocess.check_output(['ansible-inventory', '--list']) - if not hosts: - print(" ***> Could not load ansible-inventory!") + env = dict(os.environ, ANSIBLE_CONFIG="ansible.old.cfg") + hosts = subprocess.check_output(commands, env=env) + if not hosts: + print(" ***> Could not load ansible-inventory!") - hosts = json.loads(hosts) - for host, ip_host in hosts['_meta']['hostvars'].items(): - if host.startswith(droplet_name): - print(ip_host['ansible_host']) - break + hosts = json.loads(hosts) + for host, ip_host in hosts['_meta']['hostvars'].items(): + if host.startswith(droplet_name): + print(ip_host['ansible_host']) + break diff --git a/utils/ssh.sh b/utils/ssh.sh index 95864f871..d3b857b93 100755 --- a/utils/ssh.sh +++ b/utils/ssh.sh @@ -18,7 +18,7 @@ LPURPLE='\033[01;35m' LCYAN='\033[01;36m' WHITE='\033[01;37m' -ipaddr=`python /srv/newsblur/utils/hostname_ssh.py $1 $2` +ipaddr=`python3 /srv/newsblur/utils/hostname_ssh.py $1 $2` printf "\n ${BLUE}---> ${LBLUE}Connecting to ${LGREEN}$1${BLUE} / ${LRED}$ipaddr${BLUE} <--- ${RESTORE}\n\n" if [ "$2" == "old" ]; then