Skip to content

Commit

Permalink
Python
Browse files Browse the repository at this point in the history
  • Loading branch information
justinvp committed Dec 18, 2022
1 parent 541355f commit 8d3e5c8
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 4 deletions.
4 changes: 4 additions & 0 deletions sdk/python/lib/pulumi/automation/_local_workspace.py
Expand Up @@ -97,6 +97,7 @@ class LocalWorkspace(Workspace):
_remote: bool = False
_remote_env_vars: Optional[Mapping[str, Union[str, Secret]]]
_remote_pre_run_commands: Optional[List[str]]
_remote_skip_install_dependencies: Optional[bool]
_remote_git_url: str
_remote_git_project_path: Optional[str]
_remote_git_branch: Optional[str]
Expand Down Expand Up @@ -480,6 +481,9 @@ def _remote_args(self) -> List[str]:
args.append("--remote-pre-run-command")
args.append(command)

if self._remote_skip_install_dependencies:
args.append("--remote-skip-install-dependencies")

return args


Expand Down
6 changes: 6 additions & 0 deletions sdk/python/lib/pulumi/automation/_remote_workspace.py
Expand Up @@ -26,15 +26,18 @@ class RemoteWorkspaceOptions:

env_vars: Optional[Mapping[str, Union[str, Secret]]]
pre_run_commands: Optional[List[str]]
skip_install_dependencies: Optional[bool]

def __init__(
self,
*,
env_vars: Optional[Mapping[str, Union[str, Secret]]] = None,
pre_run_commands: Optional[List[str]] = None,
skip_install_dependencies: Optional[bool] = None,
):
self.env_vars = env_vars
self.pre_run_commands = pre_run_commands
self.skip_install_dependencies = skip_install_dependencies


class RemoteGitAuth:
Expand Down Expand Up @@ -199,14 +202,17 @@ def _create_local_workspace(

env_vars = None
pre_run_commands = None
skip_install_dependencies = None
if opts is not None:
env_vars = opts.env_vars
pre_run_commands = opts.pre_run_commands
skip_install_dependencies = opts.skip_install_dependencies

ws = LocalWorkspace()
ws._remote = True
ws._remote_env_vars = env_vars
ws._remote_pre_run_commands = pre_run_commands
ws._remote_skip_install_dependencies = skip_install_dependencies
ws._remote_git_url = url
ws._remote_git_project_path = project_path
ws._remote_git_branch = branch
Expand Down
11 changes: 7 additions & 4 deletions sdk/python/lib/test/automation/test_remote_workspace.py
Expand Up @@ -86,10 +86,13 @@ def test_remote_workspace_stack_lifecycle(factory):
url=test_repo,
branch="refs/heads/master",
project_path="goproj",
opts=RemoteWorkspaceOptions(pre_run_commands=[
f"pulumi config set bar abc --stack {stack_name}",
f"pulumi config set --secret buzz secret --stack {stack_name}",
]),
opts=RemoteWorkspaceOptions(
pre_run_commands=[
f"pulumi config set bar abc --stack {stack_name}",
f"pulumi config set --secret buzz secret --stack {stack_name}",
],
skip_install_dependencies=True,
),
)

# pulumi up
Expand Down

0 comments on commit 8d3e5c8

Please sign in to comment.