proud-cricket-86351
05/03/2022, 8:29 PMwet-soccer-72485
05/04/2022, 6:46 PMimport {PluginManager} from "live-plugin-manager";
const manager = new PluginManager();
async function run(packageName = "my-pulumi-project", componentName = 'MyPulumiResource', id = slugify(`${packageName}-${componentName}-main`), args = {}, options = {}) {
await manager.install(packageName);
const { [componentName]: TargetComponentResource } = manager.require(packageName);
const resource = new TargetComponentResource(id, args, options);
return { resource };
}
run();
proud-cricket-86351
05/04/2022, 6:49 PMwet-soccer-72485
05/04/2022, 6:54 PMproud-cricket-86351
05/04/2022, 6:54 PMwet-soccer-72485
05/04/2022, 6:55 PMpathToComponentFile = '/src/my-component';
...
const { [componentName]: TargetComponentResource } = manager.require(packageName + pathToComponentFile);
proud-cricket-86351
05/04/2022, 6:56 PMwet-soccer-72485
05/04/2022, 6:57 PMproud-cricket-86351
05/04/2022, 6:58 PMwet-soccer-72485
05/04/2022, 6:58 PMproud-cricket-86351
05/04/2022, 7:00 PMwet-soccer-72485
05/04/2022, 7:06 PMproud-cricket-86351
05/04/2022, 7:08 PMimport {PluginManager} from "live-plugin-manager";
const manager = new PluginManager();
async function run(packageName = "my-pulumi-project", componentName = 'MyPulumiResource', id = slugify(`${packageName}-${componentName}-main`), args = {}, options = {}) {
await manager.install(packageName);
const { [componentName]: TargetComponentResource } = manager.require(packageName);
const resource = new TargetComponentResource(id, args, options);
return { resource };
}
run();
should the return resource of the run function be the value of the program parameter?wet-soccer-72485
05/04/2022, 7:08 PMprogram
?proud-cricket-86351
05/04/2022, 7:08 PMwet-soccer-72485
05/04/2022, 7:09 PMprogram: () => run()
, is how i’d do itproud-cricket-86351
05/04/2022, 7:09 PMwet-soccer-72485
05/04/2022, 7:10 PMasync
too:program: async () => run(),
program: async () => await run(),
proud-cricket-86351
05/04/2022, 7:38 PMreturn { resource };
wet-soccer-72485
05/04/2022, 10:05 PMreturn { resource }
I can always expect to look at the stack’s resource
key to get the outputs for the component.
Had I written return resource
, the stack’s outputs would become dynamic and dependent on whatever outputs resource
happens to have.
All this said, there might be some property on ComponentResource that contains the actual outputs instead of the full resource object, like maybe:
resource.outputs
so in either case I’d write:
return resource.outputs
return { resource: resource.outputs }
But I don’t know if there a convention for outputs for ComponentResource or exactly how Pulumi handles stack outputs, as I rarely use/consume stack outputs.proud-cricket-86351
05/05/2022, 2:37 PMnpm install
npm start
wet-soccer-72485
05/05/2022, 11:20 PM@pulumi/s3
is not a package I am familiar with. I’m sorry, the process.on thing is not something I’ve ever seen. Anyone else?