def _main():
    """Entry point."""
    cli_args = args.parse_args()
    # Build the base image first
    docker.build("-t", "py-deploy-base-image", "-f", BASE_DOCKERFILE_PATH,
                 SCRIPT_DIR)
    # Extend with specific image
    docker.build("-t", cli_args.image, "-f", cli_args.dockerfile,
                 cli_args.workdir)
    # Run the container
    docker.run("--name", cli_args.container, cli_args.image)
    # Copy artifacts if required
    if cli_args.cp:
        docker.cp("{}:{}".format(cli_args.container, cli_args.cp),
                  cli_args.workdir)
    # Clean up
    docker.rm(cli_args.container)
Exemple #2
0
def main():
    args = parse_args()

    s = requests.session()
    s.verify = False if args.notlscheck else True
    atexit.register(lambda: s.close())

    r = s.get(
        f'{args.prometheus}/api/v1/query_range?query={args.query}&start={args.start}Z&end={args.end}&step=1s'
    )
    r.raise_for_status()

    over = 0
    under = 0
    total_nonnull = 0
    run_time = 0
    min_tstp = sys.maxsize
    max_tstp = -sys.maxsize

    for pod in r.json()['data']['result']:
        for v in pod['values']:

            # Time bound detection
            if v[0] < min_tstp:
                min_tstp = v[0]
            if v[0] > max_tstp:
                max_tstp = v[0]

            m = float(v[1])  # Value
            if m > args.value:
                over += (m - args.value)

            elif (m < args.value) and (m != 0):
                under += (args.value - m)

            if m != 0:
                total_nonnull += 1

            run_time += 1

    user_time_duration = max_tstp - min_tstp

    print("Average pods running: %.3f" % (run_time / user_time_duration))
    print("Overusage: %d%%" % (over * 100 / total_nonnull))
    print("Underusage: %d%%" % (under * 100 / total_nonnull))
Exemple #3
0
Description: Search through KEGG KGML Pathway map files for a given substring
"""

from src.biodata import *
from src.config import load_configuration
from src import arguments, error
from sys import stdout, exit
from lib.pygrep import grep
from lib.args import parse_args
from os.path import isfile
import threading

# Argument handling

args = parse_args("search",
	[('o', 'search by organism', [str, str], arguments.organism),
	('m', 'search by map file', [str, str], arguments.mapfile),
	('l', 'list organisms', [], arguments.listOrganisms)])


def organism_file_path(organism):
	"Construct path to organism file"
	return config['map_file_directory'] + "/" + organism + '*'


def map_file_path(mapfile):
	"Construct path to map file"
	return config['map_file_directory'] + "/" + mapfile


def print_results(lines):
	if len(lines) > 0:
Exemple #4
0
from src.config import load_configuration
from src import error
from sys import stdout, exit
from lib.args import parse_args
from os.path import isfile
import threading
import sys

sys.path.append(sys.path[0]+'/pkg')

# Argument handling


args = parse_args("download",
	[('o', 'download organism', [str], "Download all files for a given organism"),
	('u', 'update', [], "Update any existing map files"),
	('r', 'retry', [], "Retry any previously failed map file url's"),
	('a', 'download all', [], "Download all available map files for every organism"),
	('l', 'list organisms', [], "List all organism codes")])


def remote_resource_previously_failed(url):
	if isfile(config['failed_list']):
		return url in open(config['failed_list'], 'r').read()
	return False


def multi_thread_download(links, forceOverwrite):
	def dl(l, o):
		download(l, o, forceOverwrite)
	for item in links:
		# Need to add ability to skip