示例#1
0
def deploy_nfs_client_provisioner():
    logs.info("Deploying nfs client provisioner to provide cca-ckan storage class")
    from ckan_cloud_operator.providers.apps import manager as apps_manager
    apps_manager.create(
        deployment_provider="none", instance_id="nfs-client-provisioner",
        values={
            "namespace": "ckan-cloud",
            "app-type": "nfs-client-provisioner",
            "nfs-server-ip": _config_get("nfs-client-provsioner-server-ip"),
            "storageclass": "cca-ckan",
            "nfs-server-path": _config_get("nfs-client-provsioner-server-path"),
            "archive-on-delete": "true"
        },
        update_=True
    )
示例#2
0
def create(tiller_namespace_name=None,
           chart_repo=None,
           chart_version=None,
           chart_release_name=None,
           values=None,
           values_filename=None,
           with_service_account=False,
           chart_name=None,
           chart_repo_name=None,
           app_type=None,
           values_json=None,
           **create_kwargs):
    if values_filename:
        assert not values and not values_json
        with open(values_filename) as f:
            values = yaml.safe_load(f.read())
    elif values:
        assert not values_filename and not values_json
    elif values_json:
        assert not values_filename and not values
        values = json.loads(values_json)
    spec = {
        **({
            'tiller-namespace-name': tiller_namespace_name
        } if tiller_namespace_name else {}),
        **({
            'chart-name': chart_name
        } if chart_name else {}),
        **({
            'chart-repo': chart_repo
        } if chart_repo else {}),
        **({
            'chart-repo-name': chart_repo_name
        } if chart_repo_name else {}),
        **({
            'chart-version': chart_version
        } if chart_version else {}),
        **({
            'chart-release-name': chart_release_name
        } if chart_release_name else {}),
        **({
            'with-service-account': True
        } if with_service_account else {}),
        **({
            'values': values
        } if values else {}),
        **({
            'app-type': app_type
        } if app_type else {}),
    }
    assert 'values' not in create_kwargs
    from ckan_cloud_operator.providers.apps import manager as apps_manager
    return apps_manager.create('helm', values=spec, **create_kwargs)