def test_backup_and_restore_to_s3(): key_id = os.getenv('AWS_ACCESS_KEY_ID') if not key_id: assert False, 'AWS credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not aws"' plan_parameters = { 'AWS_ACCESS_KEY_ID': key_id, 'AWS_SECRET_ACCESS_KEY': os.getenv('AWS_SECRET_ACCESS_KEY'), 'AWS_REGION': os.getenv('AWS_REGION', 'us-west-2'), 'S3_BUCKET_NAME': os.getenv('AWS_BUCKET_NAME', 'infinity-framework-test'), 'SNAPSHOT_NAME': str(uuid.uuid1()), 'CASSANDRA_KEYSPACES': '"testspace1 testspace2"', } config.run_backup_and_restore(config.get_foldered_service_name(), 'backup-s3', 'restore-s3', plan_parameters, config.get_foldered_node_address())
def test_backup_and_restore_to_s3(): print("MDS debugging..") traceback.print_stack() key_id = os.getenv('MDS_AWS_ACCESS_ID') if not key_id: assert False, 'AWS credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not aws"' plan_parameters = { 'AWS_ACCESS_KEY_ID': key_id, 'AWS_SECRET_ACCESS_KEY': os.getenv('MDS_AWS_ACCOUNT_KEY'), 'AWS_REGION': 'us-west-2', 'external_location': 'shaugupt245-backup', 'backup_name': str(uuid.uuid1()), 'CASSANDRA_KEYSPACES': '"system"', } config.run_backup_and_restore(config.get_foldered_service_name(), 'backup-s3', 'restore-s3', plan_parameters, config.get_foldered_node_address())
def test_backup_and_restore(): plan_parameters = { 'S3_BUCKET_NAME': os.getenv('AWS_BUCKET_NAME', 'infinity-framework-test'), 'AWS_ACCESS_KEY_ID': os.getenv('AWS_ACCESS_KEY_ID'), 'AWS_SECRET_ACCESS_KEY': os.getenv('AWS_SECRET_ACCESS_KEY'), 'AWS_REGION': os.getenv('AWS_REGION', 'us-west-2'), 'SNAPSHOT_NAME': str(uuid.uuid1()), 'CASSANDRA_KEYSPACES': '"testspace1 testspace2"', } with sdk_jobs.InstallJobContext([ config.get_write_data_job(), config.get_verify_data_job(), config.get_delete_data_job(), config.get_verify_deletion_job() ]): config.run_backup_and_restore(config.SERVICE_NAME, 'backup-s3', 'restore-s3', plan_parameters)
def test_backup_and_restore_to_azure(): client_id = os.getenv('AZURE_CLIENT_ID') if not client_id: assert False, 'Azure credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not azure"' plan_parameters = { 'AZURE_CLIENT_ID': client_id, 'AZURE_CLIENT_SECRET': os.getenv('AZURE_CLIENT_SECRET'), 'AZURE_TENANT_ID': os.getenv('AZURE_TENANT_ID'), 'AZURE_STORAGE_ACCOUNT': os.getenv('AZURE_STORAGE_ACCOUNT'), 'AZURE_STORAGE_KEY': os.getenv('AZURE_STORAGE_KEY'), 'CONTAINER_NAME': os.getenv('CONTAINER_NAME', 'cassandra-test'), 'SNAPSHOT_NAME': str(uuid.uuid1()), 'CASSANDRA_KEYSPACES': '"testspace1 testspace2"', } config.run_backup_and_restore(config.get_foldered_service_name(), 'backup-azure', 'restore-azure', plan_parameters, config.get_foldered_node_address())
def test_backup_and_restore_to_s3(): key_id = os.getenv('AWS_ACCESS_KEY_ID') if not key_id: assert False, 'AWS credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not aws"' plan_parameters = { 'AWS_ACCESS_KEY_ID': key_id, 'AWS_SECRET_ACCESS_KEY': os.getenv('AWS_SECRET_ACCESS_KEY'), 'AWS_REGION': os.getenv('AWS_REGION', 'us-west-2'), 'S3_BUCKET_NAME': os.getenv('AWS_BUCKET_NAME', 'infinity-framework-test'), 'SNAPSHOT_NAME': str(uuid.uuid1()), 'CASSANDRA_KEYSPACES': '"testspace1 testspace2"', } config.run_backup_and_restore( config.get_foldered_service_name(), 'backup-s3', 'restore-s3', plan_parameters, config.get_foldered_node_address())
def test_backup_and_restore_to_azure(): client_id = os.getenv('AZURE_CLIENT_ID') if not client_id: assert False, 'Azure credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not azure"' plan_parameters = { 'CLIENT_ID': client_id, 'CLIENT_SECRET': os.getenv('AZURE_CLIENT_SECRET'), 'TENANT_ID': os.getenv('AZURE_TENANT_ID'), 'AZURE_STORAGE_ACCOUNT': os.getenv('AZURE_STORAGE_ACCOUNT'), 'AZURE_STORAGE_KEY': os.getenv('AZURE_STORAGE_KEY'), 'CONTAINER_NAME': os.getenv('CONTAINER_NAME', 'cassandra-test'), 'SNAPSHOT_NAME': str(uuid.uuid1()), 'CASSANDRA_KEYSPACES': '"testspace1 testspace2"', } config.run_backup_and_restore( config.get_foldered_service_name(), 'backup-azure', 'restore-azure', plan_parameters, config.get_foldered_node_address())
def test_backup_and_restore_to_s3() -> None: key_id = os.getenv("AWS_ACCESS_KEY_ID") if not key_id: assert ( False ), 'AWS credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not aws"' plan_parameters = { "AWS_ACCESS_KEY_ID": key_id, "AWS_SECRET_ACCESS_KEY": os.getenv("AWS_SECRET_ACCESS_KEY"), "AWS_REGION": os.getenv("AWS_REGION", "us-west-2"), "S3_BUCKET_NAME": os.getenv("AWS_BUCKET_NAME", "infinity-framework-test"), "SNAPSHOT_NAME": str(uuid.uuid1()), "CASSANDRA_KEYSPACES": '"testspace1 testspace2"', } config.run_backup_and_restore( config.get_foldered_service_name(), "backup-s3", "restore-s3", plan_parameters, config.get_foldered_node_address(), )
def test_backup_and_restore(): plan_parameters = { 'S3_BUCKET_NAME': os.getenv( 'AWS_BUCKET_NAME', 'infinity-framework-test' ), 'AWS_ACCESS_KEY_ID': os.getenv('AWS_ACCESS_KEY_ID'), 'AWS_SECRET_ACCESS_KEY': os.getenv('AWS_SECRET_ACCESS_KEY'), 'AWS_REGION': os.getenv('AWS_REGION', 'us-west-2'), 'SNAPSHOT_NAME': str(uuid.uuid1()), 'CASSANDRA_KEYSPACES': '"testspace1 testspace2"', } with sdk_jobs.InstallJobContext([ config.get_write_data_job(), config.get_verify_data_job(), config.get_delete_data_job(), config.get_verify_deletion_job()]): config.run_backup_and_restore( config.SERVICE_NAME, 'backup-s3', 'restore-s3', plan_parameters)
def test_backup_and_restore_to_azure() -> None: client_id = os.getenv("AZURE_CLIENT_ID") if not client_id: assert ( False ), 'Azure credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not azure"' plan_parameters = { "CLIENT_ID": client_id, "CLIENT_SECRET": os.getenv("AZURE_CLIENT_SECRET"), "TENANT_ID": os.getenv("AZURE_TENANT_ID"), "AZURE_STORAGE_ACCOUNT": os.getenv("AZURE_STORAGE_ACCOUNT"), "AZURE_STORAGE_KEY": os.getenv("AZURE_STORAGE_KEY"), "CONTAINER_NAME": os.getenv("CONTAINER_NAME", "cassandra-test"), "SNAPSHOT_NAME": str(uuid.uuid1()), "CASSANDRA_KEYSPACES": '"testspace1 testspace2"', } config.run_backup_and_restore( config.get_foldered_service_name(), "backup-azure", "restore-azure", plan_parameters, config.get_foldered_node_address(), )
def test_backup_and_restore_to_s3_compatible_storage() -> None: try: sdk_install.install( "minio", "minio", expected_running_tasks=0, package_version="0.0.13-RELEASE.2018-10-06T00-15-16Z", wait_for_deployment=False, ) temp_key_id = os.getenv("AWS_ACCESS_KEY_ID") if not temp_key_id: assert ( False ), 'AWS credentials are required for this test. Disable test with e.g. TEST_TYPES="sanity and not aws"' temp_secret_access_key = os.getenv("AWS_SECRET_ACCESS_KEY") options = "" if sdk_utils.is_strict_mode(): sdk_security.create_service_account( service_account_name="marathon-lb-sa", service_account_secret="marathon-lb/service-account-secret", ) sdk_cmd.run_cli( "security org users grant marathon-lb-sa dcos:service:marathon:marathon:services:/ read" ) sdk_cmd.run_cli( 'security org users grant marathon-lb-sa dcos:service:marathon:marathon:admin:events read --description "Allows access to Marathon events"' ) options = { "marathon-lb": { "secret_name": "marathon-lb/service-account-secret", "marathon-uri": "https://marathon.mesos:8443", } } sdk_install.install( "marathon-lb", "marathon-lb", expected_running_tasks=0, additional_options=options, package_version="1.14.0", wait_for_deployment=False, ) host = sdk_marathon.get_scheduler_host("marathon-lb") _, public_node_ip, _ = sdk_cmd.agent_ssh(host, "curl -s ifconfig.co") minio_endpoint_url = "http://" + public_node_ip + ":9000" os.environ["AWS_ACCESS_KEY_ID"] = config.MINIO_AWS_ACCESS_KEY_ID os.environ["AWS_SECRET_ACCESS_KEY"] = config.MINIO_AWS_SECRET_ACCESS_KEY subprocess.run( [ "aws", "s3", "mb", "s3://" + config.MINIO_BUCKET_NAME, "--endpoint", minio_endpoint_url, ] ) plan_parameters = { "AWS_ACCESS_KEY_ID": os.getenv("AWS_ACCESS_KEY_ID"), "AWS_SECRET_ACCESS_KEY": os.getenv("AWS_SECRET_ACCESS_KEY"), "AWS_REGION": os.getenv("AWS_REGION", "us-west-2"), "S3_BUCKET_NAME": config.MINIO_BUCKET_NAME, "SNAPSHOT_NAME": str(uuid.uuid1()), "CASSANDRA_KEYSPACES": '"testspace1 testspace2"', "S3_ENDPOINT_URL": minio_endpoint_url, } config.run_backup_and_restore( config.get_foldered_service_name(), "backup-s3", "restore-s3", plan_parameters, config.get_foldered_node_address(), ) finally: sdk_install.uninstall("minio", "minio") sdk_install.uninstall("marathon-lb", "marathon-lb") os.environ["AWS_ACCESS_KEY_ID"] = temp_key_id os.environ["AWS_SECRET_ACCESS_KEY"] = temp_secret_access_key