white-forest-65475
02/19/2023, 5:24 PMauto.LocalWorkstation
, why am I getting errors about not having set PULUMI_ACCESS_TOKEN? How should I tell the automation SDK to please use a locally managed service backend for this stack?
Here’s a small snippet I think is relevant:
def get_stack(env: str, stack_name: Optional[str]) -> auto.Stack:
if not stack_name:
stack_name = env
if env == "minikube":
from .minikube import build_minikube
program = build_minikube
else:
raise ValueError("Unknown environment: %s", env)
workdir = PULUMI_WORKDIR / 'stack_name'
if not workdir.exists():
workdir.mkdir()
# TODO provide secrets, etc. here
workspace = auto.LocalWorkspace(work_dir=str(workdir), program=program)
try:
stack = workspace.select_stack(stack_name)
except auto.CommandError:
stack = workspace.create_stack(stack_name)
assert stack is not None
return stack
billowy-army-68599
02/19/2023, 5:43 PMHow should I tell the automation SDK to please use a locally managed service backend for this stack?Run
pulumi login --local
before running the stackwhite-forest-65475
02/19/2023, 5:48 PMbillowy-army-68599
02/19/2023, 5:54 PMopts=LocalWorkspaceOptions(
secrets_provider=SECRET_PROVIDER,
work_dir=WORK_DIR,
project_settings=ProjectSettings(
name=PROJECT_NAME,
runtime='python',
backend=ProjectBackend(backend_url) # here
)))
PULUMI_BACKEND_URL
white-forest-65475
02/19/2023, 5:56 PMf"file://{WORK_DIR}/{STACK_NAME}"
? would that be a reasonable approach to managing pulumi service backend state in a git repo? (I’m aware there are some problems with this approach when it comes to eg. merge conflicts - that’s an issue for another day)billowy-army-68599
02/19/2023, 6:01 PMwhite-forest-65475
02/19/2023, 6:02 PMbillowy-army-68599
02/19/2023, 6:03 PMwhite-forest-65475
02/19/2023, 6:04 PM