UNPKG

@pagopa/dx-cli

Version:

A CLI useful to manage DX tools.

17 lines (16 loc) 940 B
import * as assert from "node:assert/strict"; import { payloadSchema, } from "../generators/environment/prompts.js"; export const provisionTerraformBackend = async (payload, cloudAccountService) => { assert.ok(payload.init, "This action requires initialization data in the payload"); assert.ok(payload.init.terraformBackend, "This action requires terraformBackend data in the payload"); const terraformBackend = await cloudAccountService.provisionTerraformBackend(payload.init.terraformBackend.cloudAccount, payload.env, payload.tags); return terraformBackend; }; export default function (plop, cloudAccountService) { plop.setActionType("provisionTerraformBackend", async (data) => { const payload = payloadSchema.parse(data); data.terraform ??= {}; data.terraform.backend = await provisionTerraformBackend(payload, cloudAccountService); return "Terraform Backend Provisioned"; }); }