From 4974545cf8fa3f08198e3cac99db218e249985bf Mon Sep 17 00:00:00 2001 From: Brad Seiler Date: Fri, 30 Apr 2021 16:16:10 -0400 Subject: [PATCH] chore(#644): Upgrade python templates to use RemoteBackend class --- .../templates/python-pip/.hooks.sscaff.js | 19 ++++++++--------- .../templates/python/.hooks.sscaff.js | 21 +++++++++---------- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/packages/cdktf-cli/templates/python-pip/.hooks.sscaff.js b/packages/cdktf-cli/templates/python-pip/.hooks.sscaff.js index e72998469d..624a07b25d 100644 --- a/packages/cdktf-cli/templates/python-pip/.hooks.sscaff.js +++ b/packages/cdktf-cli/templates/python-pip/.hooks.sscaff.js @@ -41,16 +41,15 @@ exports.post = options => { function terraformCloudConfig(baseName, organizationName, workspaceName) { template = readFileSync('./main.py', 'utf-8'); - const result = template.replace(`MyStack(app, "${baseName}")`, `stack = MyStack(app, "${baseName}") -stack.add_override('terraform.backend', { - 'remote': { - 'hostname': 'app.terraform.io', - 'organization': '${organizationName}', - 'workspaces': { - 'name': '${workspaceName}' - } - } -})`); + const templateWithImports = template.replace(`from cdktf import App, TerraformStack`, + `from cdktf import App, TerraformStack, RemoteBackend, NamedRemoteWorkspace`) + + const result = templateWithImports.replace(`MyStack(app, "${baseName}")`, `stack = MyStack(app, "${baseName}") +RemoteBackend(stack, + hostname='app.terraform.io', + organization='${organizationName}', + workspaces=NamedRemoteWorkspace('${workspaceName}') +)`); writeFileSync('./main.py', result, 'utf-8'); } diff --git a/packages/cdktf-cli/templates/python/.hooks.sscaff.js b/packages/cdktf-cli/templates/python/.hooks.sscaff.js index a00d9e3dba..edb6ed2c2c 100644 --- a/packages/cdktf-cli/templates/python/.hooks.sscaff.js +++ b/packages/cdktf-cli/templates/python/.hooks.sscaff.js @@ -41,16 +41,15 @@ exports.post = options => { function terraformCloudConfig(baseName, organizationName, workspaceName) { template = readFileSync('./main.py', 'utf-8'); - const result = template.replace(`MyStack(app, "${baseName}")`, `stack = MyStack(app, "${baseName}") -stack.add_override('terraform.backend', { - 'remote': { - 'hostname': 'app.terraform.io', - 'organization': '${organizationName}', - 'workspaces': { - 'name': '${workspaceName}' - } - } -})`); + const templateWithImports = template.replace(`from cdktf import App, TerraformStack`, + `from cdktf import App, TerraformStack, RemoteBackend, NamedRemoteWorkspace`) + + const result = templateWithImports.replace(`MyStack(app, "${baseName}")`, `stack = MyStack(app, "${baseName}") +RemoteBackend(stack, + hostname='app.terraform.io', + organization='${organizationName}', + workspaces=NamedRemoteWorkspace('${workspaceName}') +)`); writeFileSync('./main.py', result, 'utf-8'); -} \ No newline at end of file +}