@mstuercke/pulumi-modules 0.0.15 → 0.0.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { type CustomResourceOptions, type Output, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Output } from '@pulumi/pulumi';
2
2
  export type Auth0Domain = `${string}.auth0.com`;
3
3
  export type Auth0URL = `http://${string}` | `https://${string}`;
4
4
  export interface Auth0User {
@@ -22,9 +22,9 @@ export interface Auth0Args {
22
22
  defaultUsers?: Auth0User[];
23
23
  disableSignup?: boolean;
24
24
  }
25
- export declare class Auth0 extends Resource {
25
+ export declare class Auth0 extends ComponentResource {
26
26
  domain: string;
27
27
  clientId: Output<string>;
28
- constructor(id: string, args: Auth0Args, opts?: CustomResourceOptions);
28
+ constructor(id: string, args: Auth0Args, opts?: ComponentResourceOptions);
29
29
  }
30
30
  //# sourceMappingURL=Auth0.d.ts.map
@@ -1,10 +1,10 @@
1
- import { Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource } from '@pulumi/pulumi';
2
2
  import { Client, ClientCredentials, Connection, ConnectionClient, Provider, Tenant, User } from '@pulumi/auth0';
3
- export class Auth0 extends Resource {
3
+ export class Auth0 extends ComponentResource {
4
4
  domain;
5
5
  clientId;
6
6
  constructor(id, args, opts) {
7
- super('mstuercke:auth0:Auth0', id, false, undefined, opts);
7
+ super('mstuercke:auth0:Auth0', id, undefined, opts);
8
8
  const { projectId, environmentName, tenantDisplayName, clientDisplayName, domain, m2mClientId, allowedUrls, allowedLoginCallbackUrls, allowedLogoutCallbackUrls, nativeAppId, defaultUsers = [], disableSignup = false, } = args;
9
9
  new Provider('provider', {}, { parent: this });
10
10
  new Tenant('tenant', {
@@ -1,7 +1,7 @@
1
1
  import { iam } from '@pulumi/aws';
2
2
  import type { SimpleIamRolePolicyConfig } from './SimpleIamRolePolicyConfig.ts';
3
- import { type CustomResourceOptions } from '@pulumi/pulumi';
3
+ import { type ComponentResourceOptions } from '@pulumi/pulumi';
4
4
  export declare class SimpleIamRolePolicy extends iam.RolePolicy {
5
- constructor(iamRoleId: string, config: SimpleIamRolePolicyConfig, opts?: CustomResourceOptions);
5
+ constructor(iamRoleId: string, config: SimpleIamRolePolicyConfig, opts?: ComponentResourceOptions);
6
6
  }
7
7
  //# sourceMappingURL=SimpleIamRolePolicy.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type CustomResourceOptions, type Input, type Output, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Input, type Output } from '@pulumi/pulumi';
2
2
  export type LambdaCronTriggerArgs = {
3
3
  name: string;
4
4
  lambdaFunction: {
@@ -9,9 +9,9 @@ export type LambdaCronTriggerArgs = {
9
9
  lambdaExecutionInput?: object;
10
10
  projectId: string;
11
11
  };
12
- export declare class LambdaCronTrigger extends Resource {
12
+ export declare class LambdaCronTrigger extends ComponentResource {
13
13
  ruleName: string;
14
14
  ruleArn: Output<string>;
15
- constructor(args: LambdaCronTriggerArgs, opts?: CustomResourceOptions);
15
+ constructor(args: LambdaCronTriggerArgs, opts?: ComponentResourceOptions);
16
16
  }
17
17
  //# sourceMappingURL=LambdaCronTrigger.d.ts.map
@@ -1,10 +1,10 @@
1
- import { Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource } from '@pulumi/pulumi';
2
2
  import { cloudwatch, lambda } from '@pulumi/aws';
3
- export class LambdaCronTrigger extends Resource {
3
+ export class LambdaCronTrigger extends ComponentResource {
4
4
  ruleName;
5
5
  ruleArn;
6
6
  constructor(args, opts) {
7
- super('mstuercke:lambda:LambdaCronTrigger', args.name, false, undefined, opts);
7
+ super('mstuercke:lambda:LambdaCronTrigger', args.name, undefined, opts);
8
8
  const { name, lambdaFunction, cronExpression, lambdaExecutionInput, projectId } = args;
9
9
  const trigger = new cloudwatch.EventRule('trigger', {
10
10
  name,
@@ -1,4 +1,4 @@
1
- import { type CustomResourceOptions, type Output, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Output } from '@pulumi/pulumi';
2
2
  import { type SimpleIamRolePolicyConfig } from '../iam/index.ts';
3
3
  import type { WithInputs } from './WithInputs.ts';
4
4
  export type NodeLambdaFunctionArgs<EnvironmentVariables> = {
@@ -12,10 +12,10 @@ export type NodeLambdaFunctionArgs<EnvironmentVariables> = {
12
12
  environmentVariables?: WithInputs<EnvironmentVariables>;
13
13
  projectId: string;
14
14
  };
15
- export declare class NodeLambdaFunction<EnvironmentVariables extends Record<string, string> = Record<string, string>> extends Resource {
15
+ export declare class NodeLambdaFunction<EnvironmentVariables extends Record<string, string> = Record<string, string>> extends ComponentResource {
16
16
  name: string;
17
17
  arn: Output<string>;
18
18
  invokeArn: Output<string>;
19
- constructor(args: NodeLambdaFunctionArgs<EnvironmentVariables>, opts?: CustomResourceOptions);
19
+ constructor(args: NodeLambdaFunctionArgs<EnvironmentVariables>, opts?: ComponentResourceOptions);
20
20
  }
21
21
  //# sourceMappingURL=NodeLambdaFunction.d.ts.map
@@ -1,13 +1,13 @@
1
1
  import { iam, lambda } from '@pulumi/aws';
2
2
  import { getFile } from '@pulumi/archive';
3
- import { asset, Resource } from '@pulumi/pulumi';
3
+ import { asset, ComponentResource } from '@pulumi/pulumi';
4
4
  import { SimpleIamRolePolicy } from "../iam/index.js";
5
- export class NodeLambdaFunction extends Resource {
5
+ export class NodeLambdaFunction extends ComponentResource {
6
6
  name;
7
7
  arn;
8
8
  invokeArn;
9
9
  constructor(args, opts) {
10
- super('mstuercke:lambda:NodeLambdaFunction', args.name, false, undefined, opts);
10
+ super('mstuercke:lambda:NodeLambdaFunction', args.name, undefined, opts);
11
11
  const { name, additionalIamRolePolicies = [], environmentVariables = undefined, runtime = 'nodejs22.x', functionHandler = 'lambdaFunction.lambdaHandler', memorySize = 128, timeoutSeconds = 30, projectId, } = args;
12
12
  const role = new iam.Role(name, {
13
13
  name: `${name}-lambda`,
@@ -1,13 +1,13 @@
1
- import { type CustomResourceOptions, type Output, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Output } from '@pulumi/pulumi';
2
2
  export type MongoDBCustomInstanceArgs = {
3
3
  organizationId: string;
4
4
  projectId: string;
5
5
  environmentName: string;
6
6
  };
7
- export declare class MongoDBCustomInstance extends Resource {
7
+ export declare class MongoDBCustomInstance extends ComponentResource {
8
8
  readonly mongoProjectId: Output<string>;
9
9
  readonly connectionString: Output<string>;
10
10
  readonly databaseName: string;
11
- constructor(name: string, args: MongoDBCustomInstanceArgs, opts?: CustomResourceOptions);
11
+ constructor(name: string, args: MongoDBCustomInstanceArgs, opts?: ComponentResourceOptions);
12
12
  }
13
13
  //# sourceMappingURL=MongoDBCustomInstance.d.ts.map
@@ -1,12 +1,12 @@
1
- import { Resource } from '@pulumi/pulumi';
2
- import { FlexCluster, Project, ProjectIpAccessList } from '@pulumi/mongodbatlas';
3
- export class MongoDBCustomInstance extends Resource {
1
+ import { ComponentResource } from '@pulumi/pulumi';
2
+ import { Project, ProjectIpAccessList, ServerlessInstance } from '@pulumi/mongodbatlas';
3
+ export class MongoDBCustomInstance extends ComponentResource {
4
4
  mongoProjectId;
5
5
  connectionString;
6
6
  databaseName;
7
7
  constructor(name, args, opts) {
8
8
  const { organizationId, projectId, environmentName } = args;
9
- super('mstuercke:mongodb:MongoDBCustomInstance', name, false, undefined, opts);
9
+ super('mstuercke:mongodb:MongoDBCustomInstance', name, undefined, opts);
10
10
  const mongoProject = new Project('project', {
11
11
  orgId: organizationId,
12
12
  name: `${projectId}-${environmentName}`,
@@ -18,16 +18,15 @@ export class MongoDBCustomInstance extends Resource {
18
18
  projectId: mongoProject.id,
19
19
  cidrBlock: '0.0.0.0/0',
20
20
  }, { parent: this });
21
- const mongoInstance = new FlexCluster('database', {
21
+ const mongoInstance = new ServerlessInstance('database', {
22
22
  projectId: mongoProject.id,
23
23
  name: `${projectId}-${environmentName}`,
24
- providerSettings: {
25
- backingProviderName: 'AWS',
26
- regionName: 'EU_CENTRAL_1',
27
- },
24
+ providerSettingsBackingProviderName: 'AWS',
25
+ providerSettingsProviderName: 'SERVERLESS',
26
+ providerSettingsRegionName: 'EU_WEST_1', // Ireland
28
27
  }, { parent: this });
29
28
  this.mongoProjectId = mongoProject.id;
30
- this.connectionString = mongoInstance.connectionStrings.standardSrv;
29
+ this.connectionString = mongoInstance.connectionStringsStandardSrv;
31
30
  this.databaseName = `${projectId}-${environmentName}`;
32
31
  }
33
32
  }
@@ -1,12 +1,12 @@
1
- import { type CustomResourceOptions, type Output, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Output } from '@pulumi/pulumi';
2
2
  export type MongoDBDefaultInstanceArgs = {
3
3
  projectId: string;
4
4
  environmentName: string;
5
5
  };
6
- export declare class MongoDBDefaultInstance extends Resource {
6
+ export declare class MongoDBDefaultInstance extends ComponentResource {
7
7
  readonly mongoProjectId: Output<string>;
8
8
  readonly connectionString: Output<string>;
9
9
  readonly databaseName: string;
10
- constructor(name: string, args: MongoDBDefaultInstanceArgs, opts?: CustomResourceOptions);
10
+ constructor(name: string, args: MongoDBDefaultInstanceArgs, opts?: ComponentResourceOptions);
11
11
  }
12
12
  //# sourceMappingURL=MongoDBDefaultInstance.d.ts.map
@@ -1,19 +1,19 @@
1
- import { output, Resource } from '@pulumi/pulumi';
2
- import { getFlexCluster, getProject } from '@pulumi/mongodbatlas';
3
- export class MongoDBDefaultInstance extends Resource {
1
+ import { ComponentResource, output } from '@pulumi/pulumi';
2
+ import { getProject, getServerlessInstance } from '@pulumi/mongodbatlas';
3
+ export class MongoDBDefaultInstance extends ComponentResource {
4
4
  mongoProjectId;
5
5
  connectionString;
6
6
  databaseName;
7
7
  constructor(name, args, opts) {
8
8
  const { projectId, environmentName } = args;
9
- super('mstuercke:mongodb:MongoDBDefaultInstance', name, false, undefined, opts);
9
+ super('mstuercke:mongodb:MongoDBDefaultInstance', name, undefined, opts);
10
10
  const mongoProject = output(getProject({ name: 'default' }));
11
- const mongoInstance = mongoProject.id.apply((mongoProjectId) => output(getFlexCluster({
11
+ const mongoInstance = mongoProject.id.apply((mongoProjectId) => output(getServerlessInstance({
12
12
  projectId: mongoProjectId,
13
13
  name: 'default',
14
14
  })));
15
15
  this.mongoProjectId = mongoProject.id;
16
- this.connectionString = mongoInstance.connectionStrings.standardSrv;
16
+ this.connectionString = mongoInstance.connectionStringsStandardSrv;
17
17
  this.databaseName = `${projectId}-${environmentName}`;
18
18
  }
19
19
  }
@@ -1,13 +1,13 @@
1
- import { type CustomResourceOptions, type Input, type Output, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Input, type Output } from '@pulumi/pulumi';
2
2
  export type MongoDBUserArgs = {
3
3
  mongoProjectId: Input<string>;
4
4
  databaseName: string;
5
5
  projectId: string;
6
6
  environmentName: string;
7
7
  };
8
- export declare class MongoDBUser extends Resource {
8
+ export declare class MongoDBUser extends ComponentResource {
9
9
  readonly username: string;
10
10
  readonly password: Output<string>;
11
- constructor(name: string, args: MongoDBUserArgs, opts?: CustomResourceOptions);
11
+ constructor(name: string, args: MongoDBUserArgs, opts?: ComponentResourceOptions);
12
12
  }
13
13
  //# sourceMappingURL=MongoDBUser.d.ts.map
@@ -1,13 +1,13 @@
1
- import { Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource } from '@pulumi/pulumi';
2
2
  import { RandomPassword } from '@pulumi/random';
3
3
  import { DatabaseUser } from '@pulumi/mongodbatlas';
4
- export class MongoDBUser extends Resource {
4
+ export class MongoDBUser extends ComponentResource {
5
5
  username;
6
6
  password;
7
7
  constructor(name, args, opts) {
8
8
  const { mongoProjectId, databaseName, projectId, environmentName } = args;
9
9
  const username = `${projectId}-${environmentName}`;
10
- super('mstuercke:mongodb:MongoDBUser', name, false, undefined, opts);
10
+ super('mstuercke:mongodb:MongoDBUser', name, undefined, opts);
11
11
  const password = new RandomPassword('password', {
12
12
  length: 32,
13
13
  special: false,
@@ -1,16 +1,16 @@
1
- import { type Input, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Input } from '@pulumi/pulumi';
2
2
  export type PostgresOptions = {
3
3
  apiKey?: string;
4
4
  neonProjectId: string;
5
5
  projectId: string;
6
6
  environmentName: string;
7
7
  };
8
- export declare class Postgres extends Resource {
8
+ export declare class Postgres extends ComponentResource {
9
9
  readonly connectionUrl: Input<string>;
10
10
  readonly host: Input<string>;
11
11
  readonly databaseName: Input<string>;
12
12
  readonly username: Input<string>;
13
13
  readonly password: Input<string>;
14
- constructor(name: string, options: PostgresOptions);
14
+ constructor(name: string, options: PostgresOptions, opts?: ComponentResourceOptions);
15
15
  }
16
16
  //# sourceMappingURL=Postgres.d.ts.map
@@ -1,13 +1,13 @@
1
- import { interpolate, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, interpolate } from '@pulumi/pulumi';
2
2
  import { Database, Project, Provider, Role } from '@mstuercke/pulumi-neon';
3
- export class Postgres extends Resource {
3
+ export class Postgres extends ComponentResource {
4
4
  connectionUrl;
5
5
  host;
6
6
  databaseName;
7
7
  username;
8
8
  password;
9
- constructor(name, options) {
10
- super(`mstuercke:postgres:Postgres`, name, false);
9
+ constructor(name, options, opts) {
10
+ super(`mstuercke:postgres:Postgres`, name, undefined, opts);
11
11
  const { apiKey, neonProjectId, projectId, environmentName } = options;
12
12
  new Provider('provider', { apiKey });
13
13
  const project = Project.get(name, neonProjectId);
@@ -1,5 +1,5 @@
1
1
  import * as aws from '@pulumi/aws';
2
- import type { CustomResourceOptions, Input } from '@pulumi/pulumi';
2
+ import type { ComponentResourceOptions, Input } from '@pulumi/pulumi';
3
3
  import type { NodeLambdaFunction } from '../lambda/index.ts';
4
4
  export interface RestApiArgs {
5
5
  name: string;
@@ -15,6 +15,6 @@ export interface RestApiArgs {
15
15
  }
16
16
  export declare class RestApi extends aws.apigateway.RestApi {
17
17
  readonly url: string;
18
- constructor(id: string, args: RestApiArgs, opts?: CustomResourceOptions);
18
+ constructor(id: string, args: RestApiArgs, opts?: ComponentResourceOptions);
19
19
  }
20
20
  //# sourceMappingURL=RestApi.d.ts.map
@@ -1,12 +1,12 @@
1
1
  import { Bucket, type BucketArgs } from '@pulumi/aws/s3';
2
- import type { CustomResourceOptions } from '@pulumi/pulumi';
2
+ import type { ComponentResourceOptions } from '@pulumi/pulumi';
3
3
  type PublicS3BucketArgs = {
4
4
  name: string;
5
5
  allowPresignedPost?: boolean;
6
6
  tags?: BucketArgs['tags'];
7
7
  };
8
8
  export declare class PublicS3Bucket extends Bucket {
9
- constructor(id: string, args: PublicS3BucketArgs, opts?: CustomResourceOptions);
9
+ constructor(id: string, args: PublicS3BucketArgs, opts?: ComponentResourceOptions);
10
10
  }
11
11
  export {};
12
12
  //# sourceMappingURL=PublicS3Bucket.d.ts.map
@@ -1,4 +1,4 @@
1
- import { type CustomResourceOptions, type Input, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Input } from '@pulumi/pulumi';
2
2
  import { type PublicS3Bucket } from '../s3/index.ts';
3
3
  export interface StaticWebsiteArgs {
4
4
  projectId: string;
@@ -10,9 +10,9 @@ export interface StaticWebsiteArgs {
10
10
  usEast1CertificateArn: Input<string>;
11
11
  };
12
12
  }
13
- export declare class StaticWebsite extends Resource {
13
+ export declare class StaticWebsite extends ComponentResource {
14
14
  url: string;
15
15
  bucket: PublicS3Bucket;
16
- constructor(id: string, args: StaticWebsiteArgs, opts?: CustomResourceOptions);
16
+ constructor(id: string, args: StaticWebsiteArgs, opts?: ComponentResourceOptions);
17
17
  }
18
18
  //# sourceMappingURL=StaticWebsite.d.ts.map
@@ -1,14 +1,14 @@
1
- import { Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource } from '@pulumi/pulumi';
2
2
  import { s3 } from "../s3/index.js";
3
3
  import { BucketObject } from '@pulumi/aws/s3';
4
4
  import { Distribution } from '@pulumi/aws/cloudfront';
5
5
  import { Record } from '@pulumi/aws/route53';
6
6
  import { readFilesRecursive } from "./readFilesRecursive.js";
7
- export class StaticWebsite extends Resource {
7
+ export class StaticWebsite extends ComponentResource {
8
8
  url;
9
9
  bucket;
10
10
  constructor(id, args, opts) {
11
- super('mstuercke:website:StaticWebsite', id, false, undefined, opts);
11
+ super('mstuercke:website:StaticWebsite', id, undefined, opts);
12
12
  const { projectId, environmentName, filesPath, customDomain } = args;
13
13
  const bucket = new s3.PublicS3Bucket('bucket', {
14
14
  name: `${projectId}-web-${environmentName}`,
@@ -1,4 +1,4 @@
1
- import { type CustomResourceOptions, type Input, type Output, Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource, type ComponentResourceOptions, type Input, type Output } from '@pulumi/pulumi';
2
2
  import type { NodeLambdaFunction } from '../lambda/index.ts';
3
3
  export interface WebsocketApiArgs {
4
4
  name: string;
@@ -15,9 +15,9 @@ export interface WebsocketApiArgs {
15
15
  };
16
16
  projectId: string;
17
17
  }
18
- export declare class WebsocketApi extends Resource {
18
+ export declare class WebsocketApi extends ComponentResource {
19
19
  id: Output<string>;
20
20
  url: string;
21
- constructor(id: string, args: WebsocketApiArgs, opts?: CustomResourceOptions);
21
+ constructor(id: string, args: WebsocketApiArgs, opts?: ComponentResourceOptions);
22
22
  }
23
23
  //# sourceMappingURL=WebsocketApi.d.ts.map
@@ -1,12 +1,12 @@
1
- import { Resource } from '@pulumi/pulumi';
1
+ import { ComponentResource } from '@pulumi/pulumi';
2
2
  import { Api, ApiMapping, Deployment, DomainName, Integration, IntegrationResponse, Route, Stage, } from '@pulumi/aws/apigatewayv2';
3
3
  import { Policy, Role } from '@pulumi/aws/iam';
4
4
  import { Record } from '@pulumi/aws/route53';
5
- export class WebsocketApi extends Resource {
5
+ export class WebsocketApi extends ComponentResource {
6
6
  id;
7
7
  url;
8
8
  constructor(id, args, opts) {
9
- super('mstuercke:websocket:WebsocketApi', id, false, undefined, opts);
9
+ super('mstuercke:websocket:WebsocketApi', id, undefined, opts);
10
10
  const { name, lambdaFunction, routeThrottling, stageName = 'v1', domain, projectId } = args;
11
11
  const api = new Api('api', {
12
12
  name,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mstuercke/pulumi-modules",
3
- "version": "0.0.15",
3
+ "version": "0.0.17",
4
4
  "files": [
5
5
  "dist/**/!(*.test|*.fixture){.d.ts,.js}",
6
6
  "README.md"