1. Список говнокодов пользователя Niyakiy

    Всего: 2

  2. Python / Говнокод #16615

    −100

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    def serve_module(is_deployed=False, name="dummy", timeout=60):
        env_name = "%s-env" % name
        screen_log_file_name = "/screenlog.0"
    
        if not booleanize(is_deployed):
            run_tests(is_deployed, name)
    
        with prefix(workon_prefix), prefix(source_prefix), \
             cd(run("echo $WORKON_HOME") + "/" + env_name), \
             prefix("workon " + env_name),\    
             prefix("export LANG=en_US.UTF-8"),\
             prefix("export LLC=en_US.UTF-8"):
    
            print("Serving module " + name)
            if exists(".%s" % screen_log_file_name):
                run("rm -f .%s" % screen_log_file_name)
    
            run("screen -S %s-serve -X quit" % name, warn_only=True)
            run("screen -wipe", warn_only=True)
            run("screen -L -dmS %s-serve-screen sh -c 'echo $! > ./serve.pid; %s serve'" % (name, name), pty=False)
            time.sleep(2)
    
            log_file_path = run("pwd") + screen_log_file_name
    
            time_with_timeout = time.time() + timeout
            while True:
                if contains(log_file_path, "Started"):
                    break
    
                if time.time() > time_with_timeout:
                    run("cat ./screenlog.0")
                    sys.exit(1)
    
                print('Looking for startup indicator in file: ' + log_file_path)
                time.sleep(2)
    
            print 'Module %s started' % name

    Это часть скрипта для Continious Intergration одного из проектов.
    Зачетный талант системного администратора пользовавшего
    python fabric и "толковые" советы из StackOverflow.
    Особенно впечатляет супервайзинг при помощи screen.

    Niyakiy, 29 Августа 2014

    Комментарии (3)
  3. Python / Говнокод #16614

    −102

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    def booleanize(value):
        """Return value as a boolean."""
    
        true_values = ("yes", "true", "1")
        false_values = ("no", "false", "0")
    
        if isinstance(value, bool):
            return value
    
        if value.lower() in true_values:
            return True
    
        elif value.lower() in false_values:
            return False

    В комментариях не нуждается.

    Niyakiy, 29 Августа 2014

    Комментарии (5)