Ejemplo n.º 1
0
def test_kubeconfig_default():
    parser = parse_args([
        'interactive',
        '--inventory-kubernetes',
        '--no-cloud'
    ])
    assert parser.kubeconfig is None
Ejemplo n.º 2
0
def test_validate_policy_file_does_not_require_other_arguments():
    parser = parse_args([
        'validate',
        '--policy-file', 'test/config.yml'
    ])
    assert parser.mode == "validate"
    assert parser.policy_file == 'test/config.yml'
Ejemplo n.º 3
0
def test_interactive_mode_integration():
    parser = parse_args([
        'interactive', '--inventory-kubernetes', '--kubeconfig',
        '~/.kube/config', '--no-cloud'
    ])
    assert parser.mode == "interactive"
    assert parser.inventory_kubernetes
    assert parser.kubeconfig == HOME + '/.kube/config'
    assert parser.no_cloud
Ejemplo n.º 4
0
def test_interactive_mode_integration():
    parser = parse_args([
        '--inventory-kubernetes', '--kube-config', '~/.kube/config',
        '--no-cloud', '--interactive'
    ])
    assert parser.inventory_kubernetes
    assert parser.kube_config == '~/.kube/config'
    assert parser.no_cloud
    assert parser.interactive
Ejemplo n.º 5
0
def test_autonomous_mode_integration():
    parser = parse_args([
        'autonomous', '--inventory-kubernetes', '--kubeconfig', '~/config',
        '--no-cloud', '--policy-file', '~/policy.yml'
    ])
    assert parser.mode == "autonomous"
    assert parser.inventory_kubernetes
    assert parser.kubeconfig == HOME + '/config'
    assert parser.no_cloud
    assert parser.policy_file == '~/policy.yml'
Ejemplo n.º 6
0
def test_in_cluster_takes_4th_precedence(monkeypatch, tmpdir):
    p2 = tmpdir.join("kubeconfig2")
    p2.write("{}")
    monkeypatch.delenv('KUBECONFIG', raising=False)
    with patch("powerfulseal.cli.__main__.KUBECONFIG_DEFAULT_PATH",
               "/probably/doesnt/exist"):
        kube_config = powerfulseal.cli.__main__.parse_kubeconfig(
            parse_args(['interactive', '--inventory-kubernetes',
                        '--no-cloud']))
        assert kube_config == None
Ejemplo n.º 7
0
def test_home_kubeconfig_takes_3rd_precedence(monkeypatch, tmpdir):
    p2 = tmpdir.join("kubeconfig2")
    p2.write("{}")
    monkeypatch.delenv('KUBECONFIG', raising=False)
    with patch("powerfulseal.cli.__main__.KUBECONFIG_DEFAULT_PATH",
               str(p2.realpath())):
        kube_config = powerfulseal.cli.__main__.parse_kubeconfig(
            parse_args(['interactive', '--inventory-kubernetes',
                        '--no-cloud']))
        assert kube_config == str(p2.realpath())
Ejemplo n.º 8
0
def test_autonomous_mode_integration():
    parser = parse_args([
        '--inventory-kubernetes', '--kube-config', '~/.kube/config',
        '--no-cloud', '--run-policy-file', '~/policy.yml',
        '--inventory-kubernetes'
    ])
    assert parser.inventory_kubernetes
    assert parser.kube_config == '~/.kube/config'
    assert parser.no_cloud
    assert parser.run_policy_file == '~/policy.yml'
    assert parser.inventory_kubernetes
Ejemplo n.º 9
0
def test_flag_takes_precedence(monkeypatch, tmpdir):
    p1 = tmpdir.join("kubeconfig1")
    p1.write("{}")
    p2 = tmpdir.join("kubeconfig2")
    p2.write("{}")
    monkeypatch.setenv('KUBECONFIG', str(p1.realpath()))
    with patch("powerfulseal.cli.__main__.KUBECONFIG_DEFAULT_PATH",
               str(p2.realpath())):
        kube_config = powerfulseal.cli.__main__.parse_kubeconfig(
            parse_args([
                'interactive', '--kubeconfig', '~/LOL',
                '--inventory-kubernetes', '--no-cloud'
            ]))
        assert kube_config == HOME + "/LOL"