const getStackRef = Effect.cachedFunction((stack) =>
Effect.sync(() =>
new pulumi.StackReference(`stack-ref-${stack}`,
{ name: [pulumi.getOrganization(), pulumi.getProject(), stack].join("/") },
)
)
);
const getNetworkOutputs = getStackRef.pipe(
Effect.flatMap((stackRef) => stackRef("network")),
Effect.flatMap((stackRef) =>
Effect.promise(() => stackRef.getOutputValue("default")).pipe(
Effect.flatMap(Schema.decode(NetworkSchema)),
Effect.cached,
)
)
);
const getSecurityOutputs = getStackRef.pipe(
Effect.flatMap((stackRef) => stackRef("security")),
Effect.flatMap((stackRef) =>
Effect.promise(() => stackRef.getOutputValue("default")).pipe(
Effect.flatMap(Schema.decode(SecuritySchema)),
Effect.cached,
)
)
);
const getStackRef = Effect.cachedFunction((stack) =>
Effect.sync(() =>
new pulumi.StackReference(`stack-ref-${stack}`,
{ name: [pulumi.getOrganization(), pulumi.getProject(), stack].join("/") },
)
)
);
const getNetworkOutputs = getStackRef.pipe(
Effect.flatMap((stackRef) => stackRef("network")),
Effect.flatMap((stackRef) =>
Effect.promise(() => stackRef.getOutputValue("default")).pipe(
Effect.flatMap(Schema.decode(NetworkSchema)),
Effect.cached,
)
)
);
const getSecurityOutputs = getStackRef.pipe(
Effect.flatMap((stackRef) => stackRef("security")),
Effect.flatMap((stackRef) =>
Effect.promise(() => stackRef.getOutputValue("default")).pipe(
Effect.flatMap(Schema.decode(SecuritySchema)),
Effect.cached,
)
)
);