def fp_status(name): if not name.startswith('fp-'): return "n/a" ip = ip_by_name().get(name) if not ip: return "destroyed" if ip in bakedin(): return "baked-in" cfgs = srv_cfg_by_name(name) if not cfgs: return "???" region = vps_util.region_by_name(name) for cfg in cfgs[1]: if redis_shell.zscore(region + ':slices', cfg): return "open" else: return "full"
def fp_status(name): if not name.startswith('fp-'): return "n/a" ip = ip_by_name().get(name) if not ip: return "destroyed" if ip in bakedin(): return "baked-in" cfg = srv_cfg_by_name(name) if not cfg: return "???" region = vps_util.region_by_name(name) for srv in cfg[1]: for suffix in ["", "|0"]: if redis_shell.zscore(region + ':slices', "%s%s" % (srv, suffix)): return "open" else: return "full"
import datetime import os from alert import alert, send_to_slack from redis_util import redis_shell import vps_util auth_token = "{{ pillar['cfgsrv_token'] }}" instance_id = "{{ grains['id'] }}" region = vps_util.region_by_name(instance_id) # {% from 'ip.sls' import external_ip %} ip = "{{ external_ip(grains) }}" close_flag_filename = "server_closed" retire_flag_filename = "server_retired" def flag_as_done(flag_filename): file(flag_filename, 'w').write(str(datetime.datetime.utcnow())) def am_I_closed(): return vps_util.proxy_status(name=instance_id, ip=ip) == 'closed' def close_server(msg): if os.path.exists(close_flag_filename): print "Not closing myself again." return txn = redis_shell.pipeline() vps_util.actually_close_proxy(name=instance_id, ip=ip, pipeline=txn)
import datetime from email.mime.text import MIMEText import os import smtplib import subprocess import time import traceback from redis_util import redis_shell import requests import vps_util auth_token = "{{ pillar['cfgsrv_token'] }}" instance_id = "{{ grains['id'] }}" region = vps_util.region_by_name(instance_id) # {% from 'ip.sls' import external_ip %} ip = "{{ external_ip(grains) }}" split_flag_filename = "server_split" retire_flag_filename = "server_retired" def send_mail(from_, to, subject, body): msg = MIMEText(body) msg['Subject'] = subject msg['From'] = from_ msg['To'] = to s = smtplib.SMTP('localhost') s.sendmail(from_, [to], msg.as_string()) s.close()