Skip to content

Commit 41b89bc

Browse files
Merge pull request #109 from dataiku/task/update-deployment-creation
Add new parameters to project deployment creation
2 parents 72b3646 + b75b5e8 commit 41b89bc

1 file changed

Lines changed: 17 additions & 11 deletions

File tree

dataikuapi/dss/projectdeployer.py

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -35,23 +35,33 @@ def get_deployment(self, deployment_id):
3535
"""
3636
return DSSProjectDeployerDeployment(self.client, deployment_id)
3737

38-
def create_deployment(self, deployment_id, project_key, infra_id, bundle_id):
38+
def create_deployment(self, deployment_id, project_key, infra_id, bundle_id,
39+
deployed_project_key=None, project_folder_id=None):
3940
"""
4041
Creates a deployment and returns the handle to interact with it. The returned deployment
4142
is not yet started and you need to call :meth:`~DSSProjectDeployerDeployment.start_update`
4243
4344
:param str deployment_id: Identifier of the deployment to create
44-
:param str project_key: Identifier of the published project target
45+
:param str project_key: The source published project key
4546
:param str infra_id: Identifier of the deployment infrastructure to use
4647
:param str bundle_id: Identifier of the bundle to deploy
48+
:param str deployed_project_key: The project key to use when deploying this project to the automation node. If
49+
not set, the project will be created with the same project key as the source
50+
published project
51+
:param str project_folder_id: The automation node project folder id to deploy this project into. If not set,
52+
the project will be created in the root folder
4753
:rtype: :class:`DSSProjectDeployerDeployment`
4854
"""
4955
settings = {
50-
"deploymentId" : deployment_id,
51-
"publishedProjectKey" : project_key,
52-
"infraId" : infra_id,
53-
"bundleId" : bundle_id
56+
"deploymentId": deployment_id,
57+
"publishedProjectKey": project_key,
58+
"infraId": infra_id,
59+
"bundleId": bundle_id
5460
}
61+
if deployed_project_key:
62+
settings["deployedProjectKey"] = deployed_project_key
63+
if project_folder_id:
64+
settings["projectFolderId"] = project_folder_id
5565
self.client._perform_json("POST", "/project-deployer/deployments", body=settings)
5666
return self.get_deployment(deployment_id)
5767

@@ -128,7 +138,7 @@ def create_project(self, project_key):
128138
:rtype: :class:`DSSProjectDeployerProject`
129139
"""
130140
settings = {
131-
"projectKey" : project_key
141+
"publishedProjectKey": project_key
132142
}
133143
self.client._perform_json("POST", "/project-deployer/projects", body=settings)
134144
return self.get_project(project_key)
@@ -292,10 +302,6 @@ def get_raw(self):
292302
"""
293303
return self.settings
294304

295-
def set_enabled(self, enabled):
296-
"""Enables or disables this deployment"""
297-
self.settings["enabled"] = enabled
298-
299305
def save(self):
300306
"""Saves back these settings to the deployment"""
301307
self.client._perform_empty(

0 commit comments

Comments
 (0)