UNPKG

@pulumi/aws

Version:

A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.

138 lines 4.73 kB
"use strict"; // *** WARNING: this file was generated by pulumi-language-nodejs. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** Object.defineProperty(exports, "__esModule", { value: true }); exports.getFunctionUrlOutput = exports.getFunctionUrl = void 0; const pulumi = require("@pulumi/pulumi"); const utilities = require("../utilities"); /** * Provides details about an AWS Lambda Function URL. Use this data source to retrieve information about an existing function URL configuration. * * ## Example Usage * * ### Basic Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.lambda.getFunctionUrl({ * functionName: "my_lambda_function", * }); * export const functionUrl = example.then(example => example.functionUrl); * ``` * * ### With Qualifier * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * import * as std from "@pulumi/std"; * * const example = aws.lambda.getFunctionUrl({ * functionName: exampleAwsLambdaFunction.functionName, * qualifier: "production", * }); * // Use the URL in other resources * const lambdaAlias = new aws.route53.Record("lambda_alias", { * zoneId: exampleAwsRoute53Zone.zoneId, * name: "api.example.com", * type: aws.route53.RecordType.CNAME, * ttl: 300, * records: [example.then(example => std.replace({ * text: example.functionUrl, * search: "https://", * replace: "", * })).then(invoke => invoke.result)], * }); * ``` * * ### Retrieve CORS Configuration * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.lambda.getFunctionUrl({ * functionName: "api_function", * }); * const corsConfig = pulumi.all([example.then(example => example.cors).length, example]).apply(([length, example]) => length > 0 ? example.cors?.[0] : null); * const allowedOrigins = corsConfig != null ? corsConfig?.allowOrigins : []; * export const corsAllowedOrigins = allowedOrigins; * ``` */ function getFunctionUrl(args, opts) { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws:lambda/getFunctionUrl:getFunctionUrl", { "functionName": args.functionName, "qualifier": args.qualifier, "region": args.region, }, opts); } exports.getFunctionUrl = getFunctionUrl; /** * Provides details about an AWS Lambda Function URL. Use this data source to retrieve information about an existing function URL configuration. * * ## Example Usage * * ### Basic Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.lambda.getFunctionUrl({ * functionName: "my_lambda_function", * }); * export const functionUrl = example.then(example => example.functionUrl); * ``` * * ### With Qualifier * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * import * as std from "@pulumi/std"; * * const example = aws.lambda.getFunctionUrl({ * functionName: exampleAwsLambdaFunction.functionName, * qualifier: "production", * }); * // Use the URL in other resources * const lambdaAlias = new aws.route53.Record("lambda_alias", { * zoneId: exampleAwsRoute53Zone.zoneId, * name: "api.example.com", * type: aws.route53.RecordType.CNAME, * ttl: 300, * records: [example.then(example => std.replace({ * text: example.functionUrl, * search: "https://", * replace: "", * })).then(invoke => invoke.result)], * }); * ``` * * ### Retrieve CORS Configuration * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = aws.lambda.getFunctionUrl({ * functionName: "api_function", * }); * const corsConfig = pulumi.all([example.then(example => example.cors).length, example]).apply(([length, example]) => length > 0 ? example.cors?.[0] : null); * const allowedOrigins = corsConfig != null ? corsConfig?.allowOrigins : []; * export const corsAllowedOrigins = allowedOrigins; * ``` */ function getFunctionUrlOutput(args, opts) { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invokeOutput("aws:lambda/getFunctionUrl:getFunctionUrl", { "functionName": args.functionName, "qualifier": args.qualifier, "region": args.region, }, opts); } exports.getFunctionUrlOutput = getFunctionUrlOutput; //# sourceMappingURL=getFunctionUrl.js.map