Exemplo n.º 1
0
def test_positive_foreman_maintain_hammer_setup(change_admin_passwd,
                                                ansible_module):
    """Hammer setup using advanced procedure

    :id: 236171c0-5185-465e-9eec-e15dfefb41c3

    :setup:
        1. foreman-maintain should be installed.

    :steps:
        1. Change password for user to any string
        2. Run advanced procedure run hammer-setup with wrong_password.
        3. Verify wrong_password isn't updated in fm_hammer_yml
        4. Run advanced procedure run hammer-setup with changed password.
        5. Verify changed password is updated in fm_hammer_yml
        6. Update admin password back to default
        7. Verify default password is updated in fm_hammer_yml

    :expectedresults:
        1. Run hammer setup with wrong password, it should fail and
           password shouldn't be updated in fm_hammer_yml
        2. Run hammer setup with changed password, it should pass and
           password should be updated in fm_hammer_yml

    :CaseImportance: Critical

    :BZ: 1830355
    """
    # try with incorrect password
    output = ansible_module.expect(
        command=Advanced.run_hammer_setup(),
        responses={"Hammer admin password: "******"wrong_password"},
    )
    for result in output.values():
        logger.info(result)
        assert "Incorrect credential for admin user" in result["stdout"]
        assert result["rc"] == 1

    # Verify wrong_password isn't updated in fm_hammer_yml
    output = ansible_module.command(
        f"grep -i ':password: wrong_password' {fm_hammer_yml}")
    for result in output.values():
        assert result["rc"] != 0
        assert "wrong_password" not in result["stdout"]

    # try with correct password
    output = ansible_module.expect(
        command=Advanced.run_hammer_setup(),
        responses={"Hammer admin password: "******"admin"},
    )
    for result in output.values():
        logger.info(result)
        assert result["rc"] == 0

    # Verify new password updated in fm_hammer_yml
    output = ansible_module.command(
        f"grep -i ':password: admin' {fm_hammer_yml}")
    for result in output.values():
        assert result["rc"] == 0
        assert "admin" in result["stdout"]
Exemplo n.º 2
0
 def default_admin_passwd():
     teardown = ansible_module.command(
         "hammer -u admin -p admin user update --login admin --password 'changeme'"
     )
     for result in teardown.values():
         logger.info(result)
         assert result["rc"] == 0
     # Make default admin creds available in fm_hammer_yml
     output = ansible_module.command(Advanced.run_hammer_setup())
     for result in output.values():
         logger.info(result)
         assert result["rc"] == 0
     # Make sure default password available in fm_hammer_yml
     output = ansible_module.command(
         f"grep -i ':password: changeme' {fm_hammer_yml}")
     for result in output.values():
         assert result["rc"] == 0
         assert "changeme" in result["stdout"]
Exemplo n.º 3
0
def test_positive_foreman_maintain_hammer_setup(setup_install_pexpect, ansible_module):
    """Hammer setup using advanced procedure

    :id: 236171c0-5185-465e-9eec-e15dfefb41c3

    :setup:
        1. foreman-maintain should be installed.

    :steps:
        1. Change password for user to any string
        2. Run advanced procedure run hammer-setup
        3. Change password to original password

    :expectedresults: Hammer setup should successful.

    :CaseImportance: Critical
    """
    try:
        setup = ansible_module.command(
            "hammer -u admin -p changeme"
            " user update"
            " --login admin "
            "--password 'JMNBzJ*a-4;XH!C~'"
        )
        for result in setup.values():
            logger.info(result)
            assert result["rc"] == 0
        output = ansible_module.expect(
            command=Advanced.run_hammer_setup(),
            responses={"Hammer admin password: "******"JMNBzJ*a-4;XH!C~"},
        )
        for result in output.values():
            logger.info(result)
            assert result["rc"] == 0
    finally:
        teardown = ansible_module.command(
            "hammer -u admin "
            "-p 'JMNBzJ*a-4;XH!C~'"
            " user update --login admin"
            " --password 'changeme'"
        )
        for result in teardown.values():
            logger.info(result)
            assert result["rc"] == 0
Exemplo n.º 4
0
def test_positive_foreman_maintain_hammer_setup(setup_install_pexpect, ansible_module):
    """Hammer setup using advanced procedure

    :id: 236171c0-5185-465e-9eec-e15dfefb41c3

    :setup:
        1. foreman-maintain should be installed.

    :steps:
        1. Change password for user to any string
        2. Run advanced procedure run hammer-setup
        3. Change password to original password

    :expectedresults: Hammer setup should successful.

    :CaseImportance: Critical
    """
    try:
        setup = ansible_module.command("hammer -u admin -p changeme"
                                       " user update"
                                       " --login admin "
                                       "--password 'JMNBzJ*a-4;XH!C~'")
        for result in setup.values():
            logger.info(result)
            assert result["rc"] == 0
        output = ansible_module.expect(
            command=Advanced.run_hammer_setup(),
            responses={"Hammer admin password: "******"JMNBzJ*a-4;XH!C~"}
        )
        for result in output.values():
            logger.info(result)
            assert result["rc"] == 0
    finally:
        teardown = ansible_module.command("hammer -u admin "
                                          "-p 'JMNBzJ*a-4;XH!C~'"
                                          " user update --login admin"
                                          " --password 'changeme'")
        for result in teardown.values():
            logger.info(result)
            assert result["rc"] == 0
Exemplo n.º 5
0
def test_positive_foreman_maintain_hammer_setup(ansible_module):
    """Hammer setup using advanced procedure

    :id: 236171c0-5185-465e-9eec-e15dfefb41c3

    :setup:
        1. foreman-maintain should be installed.

    :steps:
        1. Change password for user to any string
        2. Run advanced procedure run hammer-setup
        3. Change password to original password

    :expectedresults: Hammer setup should successful.

    :CaseImportance: Critical
    """
    try:
        setup = ansible_module.command("hammer -u admin -p changeme"
                                       " user update"
                                       " --login admin "
                                       "--password 'JMNBzJ*a-4;XH!C~'")
        for result in setup.values():
            logger.info(result)
            assert result["rc"] == 0
        output = ansible_module.command(Advanced.run_hammer_setup())
        for result in output.values():
            logger.info(result)
            assert "New settings saved into /root/foreman_maintain/config/" \
                   "foreman-maintain-hammer.yml" in result["stdout_lines"]
    finally:
        teardown = ansible_module.command("hammer -u admin "
                                          "-p 'JMNBzJ*a-4;XH!C~'"
                                          " user update --login admin"
                                          " --password 'changeme'")
        for result in teardown.values():
            logger.info(result)
            assert result["rc"] == 0