示例#1
0
def test_list_apps(fake_deployment, fake_stateful_set, invalid_app):
    mock_kube_client = mock.MagicMock()
    with mock.patch(
            "paasta_tools.cleanup_kubernetes_jobs.KubeClient",
            return_value=mock_kube_client,
            autospec=True,
    ), mock.patch(
            "paasta_tools.cleanup_kubernetes_jobs.get_services_for_cluster",
            return_value={},
            autospec=True,
    ), mock.patch("paasta_tools.cleanup_kubernetes_jobs.alert_state_change",
                  autospec=True) as mock_alert_state_change:
        mock_alert_state_change.__enter__ = mock.Mock(
            return_value=(mock.Mock(), None))
        mock_alert_state_change.__exit__ = mock.Mock(return_value=None)
        cleanup_unused_apps("soa_dir", kill_threshold=1, force=False)
        assert mock_kube_client.deployments.list_namespaced_deployment.call_count == 1
        assert mock_kube_client.deployments.list_namespaced_stateful_set.call_count == 1
示例#2
0
def test_cleanup_unused_apps_dont_kill_everything(fake_deployment,
                                                  fake_stateful_set,
                                                  invalid_app):
    mock_kube_client = mock.MagicMock()
    with mock.patch(
            "paasta_tools.cleanup_kubernetes_jobs.KubeClient",
            return_value=mock_kube_client,
            autospec=True,
    ), mock.patch(
            "paasta_tools.cleanup_kubernetes_jobs.list_namespaced_applications",
            return_value=[DeploymentWrapper(fake_deployment)],
            autospec=True,
    ), mock.patch(
            "paasta_tools.cleanup_kubernetes_jobs.get_services_for_cluster",
            return_value={},
            autospec=True,
    ), mock.patch("paasta_tools.cleanup_kubernetes_jobs.alert_state_change",
                  autospec=True) as mock_alert_state_change:
        mock_alert_state_change.__enter__ = mock.Mock(
            return_value=(mock.Mock(), None))
        mock_alert_state_change.__exit__ = mock.Mock(return_value=None)
        with raises(DontKillEverythingError):
            cleanup_unused_apps("soa_dir", kill_threshold=0, force=False)
        assert mock_kube_client.deployments.delete_namespaced_deployment.call_count == 0