示例#1
0
def test_config():
    arg_parser = get_arg_parser()
    core_add_args(arg_parser)
    arg_parser.parse_known_args()
    cfg = Config("test")
    cfg.add_config(ConfigTest)
    cfg.init_default_config()
    assert Config.dict() == {
        "configtest": {
            "testvar1": "testing123",
            "testvar2": 12345,
            "testvar3": {
                "mydict": {
                    "foo": "bar",
                    "abc": {
                        "def": "ghi"
                    }
                },
                "myint": 0,
                "mystr": "Hello",
            },
        }
    }
    cfg2 = Config("test2")
    assert cfg.configtest.testvar1 == cfg2.configtest.testvar1
    assert cfg.configtest.testvar1 == Config.configtest.testvar1
    assert cfg.configtest.testvar2 == cfg2.configtest.testvar2
    assert cfg.configtest.testvar3 == cfg2.configtest.testvar3
    Config.configtest.testvar2 += 1
    assert cfg.configtest.testvar2 == 12346
    with pytest.raises(ConfigNotFoundError):
        Config.does_not_exist.foo = "bar"
    with pytest.raises(ConfigNotFoundError):
        cfg.does_not_exist.foo = "bar"
示例#2
0
def test_args():
    arg_parser = get_arg_parser()
    OneLoginPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.onelogin_region == "us"
    assert ArgumentParser.args.onelogin_client_id is None
    assert ArgumentParser.args.onelogin_client_secret is None
示例#3
0
def main() -> None:
    # Add cli args
    arg_parser = get_arg_parser()
    add_args(arg_parser)
    arg_parser.parse_args()
    accounts = get_org_accounts()
    for account in accounts:
        print(account)
示例#4
0
def test_args():
    arg_parser = get_arg_parser()
    OnpremCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.onprem_location == "Default location"
    assert ArgumentParser.args.onprem_region == "Default region"
    assert ArgumentParser.args.onprem_ssh_user == "root"
    assert ArgumentParser.args.onprem_ssh_key is None
    assert len(ArgumentParser.args.onprem_server) == 0
示例#5
0
def test_args():
    arg_parser = get_arg_parser()
    GCPCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert len(ArgumentParser.args.gcp_service_account) == 0
    assert len(ArgumentParser.args.gcp_project) == 0
    assert len(ArgumentParser.args.gcp_collect) == 0
    assert len(ArgumentParser.args.gcp_no_collect) == 0
    assert ArgumentParser.args.gcp_project_pool_size == 5
    assert ArgumentParser.args.gcp_fork is False
示例#6
0
def test_args():
    arg_parser = get_arg_parser()
    KubernetesCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert len(ArgumentParser.args.k8s_context) == 0
    assert ArgumentParser.args.k8s_config is None
    assert len(ArgumentParser.args.k8s_cluster) == 0
    assert len(ArgumentParser.args.k8s_apiserver) == 0
    assert len(ArgumentParser.args.k8s_token) == 0
    assert len(ArgumentParser.args.k8s_cacert) == 0
    assert len(ArgumentParser.args.k8s_collect) == 0
    assert len(ArgumentParser.args.k8s_no_collect) == 0
    assert ArgumentParser.args.k8s_pool_size == 5
    assert ArgumentParser.args.k8s_fork is False
示例#7
0
def test_args():
    assert ArgumentParser.args.does_not_exist is None

    os.environ["RESOTO_PSK"] = "changeme"
    arg_parser = get_arg_parser()
    logging_add_args(arg_parser)
    jwt_add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.verbose is False
    assert ArgumentParser.args.psk == "changeme"

    os.environ["RESOTO_PSK"] = ""
    os.environ["RESOTO_VERBOSE"] = "true"
    os.environ["RESOTO_TEST_INT"] = "123"
    os.environ["RESOTO_TEST_LIST0"] = "foobar"
    arg_parser = get_arg_parser()
    logging_add_args(arg_parser)
    jwt_add_args(arg_parser)
    arg_parser.add_argument(
        "--test-int",
        dest="test_int",
        type=int,
        default=0,
    )
    arg_parser.add_argument(
        "--test-list",
        dest="test_list",
        type=str,
        default=[],
        nargs="+",
    )

    arg_parser.parse_args()
    assert ArgumentParser.args.verbose is True
    assert ArgumentParser.args.psk is None
    assert ArgumentParser.args.test_int == 123
    assert ArgumentParser.args.test_list[0] == "foobar"
示例#8
0
def test_args():
    arg_parser = get_arg_parser()
    AWSPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.aws_access_key_id is None
    assert ArgumentParser.args.aws_secret_access_key is None
    assert ArgumentParser.args.aws_role is None
    assert ArgumentParser.args.aws_role_override is False
    assert ArgumentParser.args.aws_account is None
    assert ArgumentParser.args.aws_region is None
    assert ArgumentParser.args.aws_scrape_org is False
    assert len(ArgumentParser.args.aws_scrape_exclude_account) == 0
    assert ArgumentParser.args.aws_assume_current is False
    assert ArgumentParser.args.aws_dont_scrape_current is False
    assert ArgumentParser.args.aws_account_pool_size == 5
    assert ArgumentParser.args.aws_region_pool_size == 20
示例#9
0
def test_config_override():
    arg_parser = get_arg_parser()
    core_add_args(arg_parser)
    arg_parser.parse_known_args()
    cfg = Config("test")
    cfg.add_config(ConfigTest)
    cfg.init_default_config()
    assert Config.dict() == {
        "configtest": {
            "testvar1": "testing123",
            "testvar2": 12346,
            "testvar3": {
                "mydict": {
                    "foo": "bar",
                    "abc": {
                        "def": "ghi"
                    }
                },
                "myint": 0,
                "mystr": "Hello",
            },
        }
    }
    ArgumentParser.args.config_override = [
        "configtest.testvar1=testing124",
        "configtest.testvar3.myint=1",
        "configtest.testvar3.mystr=World",
        "configtest.testvar3.mydict.foo=baz",
        "configtest.testvar3.mydict.abc.def=jkl",
    ]
    cfg.override_config(cfg.running_config)
    assert Config.dict() == {
        "configtest": {
            "testvar1": "testing124",
            "testvar2": 12346,
            "testvar3": {
                "mydict": {
                    "foo": "baz",
                    "abc": {
                        "def": "jkl"
                    }
                },
                "myint": 1,
                "mystr": "World",
            },
        }
    }
示例#10
0
def test_args():
    arg_parser = get_arg_parser()
    CleanupExpiredPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.cleanup_expired is False
示例#11
0
def test_args():
    arg_parser = get_arg_parser()
    ExampleCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
示例#12
0
def test_args():
    arg_parser = get_arg_parser()
    CleanupAWSAlarmsPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.cleanup_aws_alarms is False
    assert ArgumentParser.args.cleanup_aws_alarms_config is None
示例#13
0
def test_args():
    arg_parser = get_arg_parser()
    SlackBotPlugin.add_args(arg_parser)
    SlackCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.slack_bot_token is None
示例#14
0
def test_args():
    arg_parser = get_arg_parser()
    CleanupVolumesPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.cleanup_volumes is False
    assert ArgumentParser.args.cleanup_volumes_age == "14 days"
示例#15
0
def test_args():
    arg_parser = get_arg_parser()
    GithubCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.github_access_token is None
示例#16
0
def test_args():
    arg_parser = get_arg_parser()
    CleanupUntaggedPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.cleanup_untagged_config is None
示例#17
0
def test_args():
    arg_parser = get_arg_parser()
    VSphereCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.vsphere_port == 443
示例#18
0
    )
    default_history_file = pathlib.Path.home() / ".resoto_s3_history"
    cli_history_default = None
    if default_history_file.exists():
        cli_history_default = str(default_history_file)
    arg_parser.add_argument(
        "--aws-s3-cli-history",
        help=("Path to AWS S3 CLI history file"
              " (default: None or ~/.resoto_s3_history if exists)"),
        dest="aws_s3_cli_history",
        type=str,
        default=cli_history_default,
    )


arg_parser = get_arg_parser()
add_args(arg_parser)
arg_parser.parse_args()
engine_args = ""
engine = create_engine(
    f"sqlite:///{ArgumentParser.args.aws_s3_db}",
    echo=ArgumentParser.args.aws_s3_db_debug,
)
Base = declarative_base(bind=engine)
Session = sessionmaker()


class Bucket(Base):
    __tablename__ = "buckets"
    __table_args__ = (PrimaryKeyConstraint("account", "name"), )
示例#19
0
def test_args():
    arg_parser = get_arg_parser()
    TagValidatorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.tagvalidator_config is None
    assert ArgumentParser.args.tagvalidator_dry_run is False
示例#20
0
def test_args():
    arg_parser = get_arg_parser()
    ExampleCollectorPlugin.add_args(arg_parser)
    arg_parser.parse_args()
    assert ArgumentParser.args.example_region is None