Exemple #1
0
def makefile_check():
    """Detects if you have a makefile and runs some sanity tests against
    it to ensure it is paasta-ready"""
    makefile_path = is_file_in_dir('Makefile', os.getcwd())
    if makefile_path:
        print PaastaCheckMessages.MAKEFILE_FOUND

        if makefile_has_a_tab(makefile_path):
            print PaastaCheckMessages.MAKEFILE_HAS_A_TAB
        else:
            print PaastaCheckMessages.MAKEFILE_HAS_NO_TABS

        if makefile_has_docker_tag(makefile_path):
            print PaastaCheckMessages.MAKEFILE_HAS_DOCKER_TAG
        else:
            print PaastaCheckMessages.MAKEFILE_HAS_NO_DOCKER_TAG

        if makefile_responds_to('cook-image'):
            print PaastaCheckMessages.MAKEFILE_RESPONDS_BUILD_IMAGE
        else:
            print PaastaCheckMessages.MAKEFILE_RESPONDS_BUILD_IMAGE_FAIL

        if makefile_responds_to('itest'):
            print PaastaCheckMessages.MAKEFILE_RESPONDS_ITEST
        else:
            print PaastaCheckMessages.MAKEFILE_RESPONDS_ITEST_FAIL

        if makefile_responds_to('test'):
            print PaastaCheckMessages.MAKEFILE_RESPONDS_TEST
        else:
            print PaastaCheckMessages.MAKEFILE_RESPONDS_TEST_FAIL
    else:
        print PaastaCheckMessages.MAKEFILE_MISSING
Exemple #2
0
def makefile_check():
    """Detects if you have a makefile and runs some sanity tests against
    it to ensure it is paasta-ready"""
    makefile_path = is_file_in_dir("Makefile", os.getcwd())
    if makefile_path:
        print PaastaCheckMessages.MAKEFILE_FOUND

        if makefile_has_a_tab(makefile_path):
            print PaastaCheckMessages.MAKEFILE_HAS_A_TAB
        else:
            print PaastaCheckMessages.MAKEFILE_HAS_NO_TABS

        if makefile_has_docker_tag(makefile_path):
            print PaastaCheckMessages.MAKEFILE_HAS_DOCKER_TAG
        else:
            print PaastaCheckMessages.MAKEFILE_HAS_NO_DOCKER_TAG

        if makefile_responds_to("cook-image"):
            print PaastaCheckMessages.MAKEFILE_RESPONDS_BUILD_IMAGE
        else:
            print PaastaCheckMessages.MAKEFILE_RESPONDS_BUILD_IMAGE_FAIL

        if makefile_responds_to("itest"):
            print PaastaCheckMessages.MAKEFILE_RESPONDS_ITEST
        else:
            print PaastaCheckMessages.MAKEFILE_RESPONDS_ITEST_FAIL

        if makefile_responds_to("test"):
            print PaastaCheckMessages.MAKEFILE_RESPONDS_TEST
        else:
            print PaastaCheckMessages.MAKEFILE_RESPONDS_TEST_FAIL
    else:
        print PaastaCheckMessages.MAKEFILE_MISSING
Exemple #3
0
def deploy_check(service_path):
    """Check whether deploy.yaml exists in service directory. Prints success or
    error message.

    :param service_path: path to a directory containing deploy.yaml"""
    if is_file_in_dir("deploy.yaml", service_path):
        print PaastaCheckMessages.DEPLOY_YAML_FOUND
    else:
        print PaastaCheckMessages.DEPLOY_YAML_MISSING
Exemple #4
0
def deploy_check(service_path):
    """Check whether deploy.yaml exists in service directory. Prints success or
    error message.

    :param service_path: path to a directory containing deploy.yaml"""
    if is_file_in_dir('deploy.yaml', service_path):
        print PaastaCheckMessages.DEPLOY_YAML_FOUND
    else:
        print PaastaCheckMessages.DEPLOY_YAML_MISSING
Exemple #5
0
def marathon_check(service_path):
    """Check whether a marathon yaml file exists in service directory, and
    print success/failure message.

    :param service_path: path to a directory containing the marathon yaml
                         files
    """
    if is_file_in_dir("marathon*.yaml", service_path):
        print PaastaCheckMessages.MARATHON_YAML_FOUND
    else:
        print PaastaCheckMessages.MARATHON_YAML_MISSING
Exemple #6
0
def marathon_check(service_path):
    """Check whether a marathon yaml file exists in service directory, and
    print success/failure message.

    :param service_path: path to a directory containing the marathon yaml
                         files
    """
    if is_file_in_dir('marathon*.yaml', service_path):
        print PaastaCheckMessages.MARATHON_YAML_FOUND
    else:
        print PaastaCheckMessages.MARATHON_YAML_MISSING
Exemple #7
0
def docker_check():
    """Check whether Dockerfile exists in service directory, and is valid.
    Prints suitable message depending on outcome"""
    docker_file_path = is_file_in_dir("Dockerfile", os.getcwd())
    if docker_file_path:
        print PaastaCheckMessages.DOCKERFILE_FOUND

        if docker_file_reads_from_yelpcorp(docker_file_path):
            print PaastaCheckMessages.DOCKERFILE_YELPCORP
        else:
            print PaastaCheckMessages.DOCKERFILE_NOT_YELPCORP
    else:
        print PaastaCheckMessages.DOCKERFILE_MISSING
Exemple #8
0
def docker_check():
    """Check whether Dockerfile exists in service directory, and is valid.
    Prints suitable message depending on outcome"""
    docker_file_path = is_file_in_dir('Dockerfile', os.getcwd())
    if docker_file_path:
        print PaastaCheckMessages.DOCKERFILE_FOUND

        if docker_file_reads_from_yelpcorp(docker_file_path):
            print PaastaCheckMessages.DOCKERFILE_YELPCORP
        else:
            print PaastaCheckMessages.DOCKERFILE_NOT_YELPCORP
    else:
        print PaastaCheckMessages.DOCKERFILE_MISSING
Exemple #9
0
def sensu_check(service, service_path):
    """Check whether monitoring.yaml exists in service directory,
    and that the team name is declared.

    :param service: name of service currently being examined
    :param service_path: path to loction of monitoring.yaml file"""
    if is_file_in_dir("monitoring.yaml", service_path):
        print PaastaCheckMessages.SENSU_MONITORING_FOUND
        team = get_team(service=service, overrides={})
        if team is None:
            print PaastaCheckMessages.SENSU_TEAM_MISSING
        else:
            print PaastaCheckMessages.sensu_team_found(team)
    else:
        print PaastaCheckMessages.SENSU_MONITORING_MISSING
Exemple #10
0
def sensu_check(service, service_path):
    """Check whether monitoring.yaml exists in service directory,
    and that the team name is declared.

    :param service: name of service currently being examined
    :param service_path: path to loction of monitoring.yaml file"""
    if is_file_in_dir('monitoring.yaml', service_path):
        print PaastaCheckMessages.SENSU_MONITORING_FOUND
        team = get_team(service=service, overrides={})
        if team is None:
            print PaastaCheckMessages.SENSU_TEAM_MISSING
        else:
            print PaastaCheckMessages.sensu_team_found(team)
    else:
        print PaastaCheckMessages.SENSU_MONITORING_MISSING
Exemple #11
0
def smartstack_check(service, service_path):
    """Check whether smartstack.yaml exists in service directory, and the proxy
    ports are declared.  Print appropriate message depending on outcome.

    :param service: name of service currently being examined
    :param service_path: path to loction of smartstack.yaml file"""
    if is_file_in_dir("smartstack.yaml", service_path):
        print PaastaCheckMessages.SMARTSTACK_YAML_FOUND
        instances = get_all_namespaces_for_service(service)
        if len(instances) > 0:
            for namespace, config in get_all_namespaces_for_service(service, full_name=False):
                if "proxy_port" in config:
                    print PaastaCheckMessages.smartstack_port_found(namespace, config.get("proxy_port"))
                else:
                    print PaastaCheckMessages.SMARTSTACK_PORT_MISSING
        else:
            print PaastaCheckMessages.SMARTSTACK_PORT_MISSING
Exemple #12
0
def smartstack_check(service, service_path):
    """Check whether smartstack.yaml exists in service directory, and the proxy
    ports are declared.  Print appropriate message depending on outcome.

    :param service: name of service currently being examined
    :param service_path: path to loction of smartstack.yaml file"""
    if is_file_in_dir('smartstack.yaml', service_path):
        print PaastaCheckMessages.SMARTSTACK_YAML_FOUND
        instances = get_all_namespaces_for_service(service)
        if len(instances) > 0:
            for namespace, config in get_all_namespaces_for_service(service, full_name=False):
                if 'proxy_port' in config:
                    print PaastaCheckMessages.smartstack_port_found(
                        namespace, config.get('proxy_port'))
                else:
                    print PaastaCheckMessages.SMARTSTACK_PORT_MISSING
        else:
            print PaastaCheckMessages.SMARTSTACK_PORT_MISSING