示例#1
0
def test_setup_doesnt_pass_if_private_registry(monkeypatch):
    environment = CloudEnvironment(private_registry=True)

    config = MagicMock()
    monkeypatch.setattr("kubernetes.config", config)

    v1 = MagicMock()
    v1.list_namespaced_secret.return_value = MagicMock(items=[])
    monkeypatch.setattr("kubernetes.client",
                        MagicMock(CoreV1Api=MagicMock(return_value=v1)))

    create_secret = MagicMock()
    monkeypatch.setattr(
        "prefect.environments.CloudEnvironment._create_namespaced_secret",
        create_secret)
    with set_temporary_config({"cloud.auth_token": "test"}):
        environment.setup(storage=Docker())

    assert create_secret.called
def test_create_secret_isnt_called_if_exists(monkeypatch):
    environment = CloudEnvironment(private_registry=True)

    config = MagicMock()
    monkeypatch.setattr("kubernetes.config", config)

    secret = MagicMock()
    secret.metadata.name = "foo-docker"
    v1 = MagicMock()
    v1.list_namespaced_secret.return_value = MagicMock(items=[secret])
    monkeypatch.setattr("kubernetes.client",
                        MagicMock(CoreV1Api=MagicMock(return_value=v1)))

    create_secret = MagicMock()
    monkeypatch.setattr(
        "prefect.environments.CloudEnvironment._create_namespaced_secret",
        create_secret)
    with set_temporary_config({"cloud.auth_token": "test"}):
        with prefect.context(namespace="foo"):
            environment.setup(storage=Docker())

    assert not create_secret.called
def test_setup_cloud_environment_passes():
    environment = CloudEnvironment()
    environment.setup(storage=Docker())
    assert environment