amarao (amarao_san) wrote,
amarao
amarao_san

Клёвый баг

Тест для сервера, что он "поднялся" после ребута. Задача: проверить, что сервер действительно прошёл ребут.

Код:
@pytest.mark.timeout(timeout=600)
def test_reboot(ssh_backend, wait_for_port):
    '''
        This check assures instance can be accessed via SSH
        after reboot, and that reboot has actually happened.
    '''
    def get_uptime():
        uptime_line = ssh_backend.Command.check_output('cat /proc/uptime')
        uptime = float(uptime_line.split(' ')[0])
        return uptime

    old_uptime = get_uptime()
    ssh_backend.Command.run('sudo nohup reboot &')
    time.sleep(20)  ## rather arbitrary number
    wait_for_port(timeout=500)
    time.sleep(3)
    new_uptime = get_uptime()
    assert new_uptime < old_uptime

И у меня оно сработало с таким assert'ом:

E assert 75.23 < 73.35

Багу я поправил, но забавность бага от этого меньше не стала.
Subscribe

  • innernet

    Кто-то с ним работал? https://blog.tonari.no/introducing-innernet Пока что по описанию оно звучит как офигенно.

  • ансибло-философия

    А вот я хочу продолжить думать умное про ансибл, ci/cd и прочую рабочую фигню между гитом и сервером. Классическое программирование стремится…

  • positive nagging

    Для повышения морали в коллективе было решено запретить токсичные и негативные сообщения в чате. Теперь все сообщения в чате выглядят так: Resolved…

  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 11 comments

  • innernet

    Кто-то с ним работал? https://blog.tonari.no/introducing-innernet Пока что по описанию оно звучит как офигенно.

  • ансибло-философия

    А вот я хочу продолжить думать умное про ансибл, ci/cd и прочую рабочую фигню между гитом и сервером. Классическое программирование стремится…

  • positive nagging

    Для повышения морали в коллективе было решено запретить токсичные и негативные сообщения в чате. Теперь все сообщения в чате выглядят так: Resolved…