All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.cloudflare.kotlin.AccessCustomPage.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

The newest version!
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.cloudflare.kotlin

import com.pulumi.core.Output
import com.pulumi.kotlin.KotlinCustomResource
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.ResourceMapper
import com.pulumi.kotlin.options.CustomResourceOptions
import com.pulumi.kotlin.options.CustomResourceOptionsBuilder
import com.pulumi.resources.Resource
import kotlin.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit

/**
 * Builder for [AccessCustomPage].
 */
@PulumiTagMarker
public class AccessCustomPageResourceBuilder internal constructor() {
    public var name: String? = null

    public var args: AccessCustomPageArgs = AccessCustomPageArgs()

    public var opts: CustomResourceOptions = CustomResourceOptions()

    /**
     * @param name The _unique_ name of the resulting resource.
     */
    public fun name(`value`: String) {
        this.name = value
    }

    /**
     * @param block The arguments to use to populate this resource's properties.
     */
    public suspend fun args(block: suspend AccessCustomPageArgsBuilder.() -> Unit) {
        val builder = AccessCustomPageArgsBuilder()
        block(builder)
        this.args = builder.build()
    }

    /**
     * @param block A bag of options that control this resource's behavior.
     */
    public suspend fun opts(block: suspend CustomResourceOptionsBuilder.() -> Unit) {
        this.opts = com.pulumi.kotlin.options.CustomResourceOptions.opts(block)
    }

    internal fun build(): AccessCustomPage {
        val builtJavaResource = com.pulumi.cloudflare.AccessCustomPage(
            this.name,
            this.args.toJava(),
            this.opts.toJava(),
        )
        return AccessCustomPage(builtJavaResource)
    }
}

/**
 * Provides a resource to customize the pages your end users will see
 * when trying to reach applications behind Cloudflare Access.
 * ## Example Usage
 * 
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as cloudflare from "@pulumi/cloudflare";
 * const example = new cloudflare.AccessCustomPage("example", {
 *     zoneId: "0da42c8d2132a9ddaf714f9e7c920711",
 *     name: "example",
 *     type: "forbidden",
 *     customHtml: "

Forbidden

", * }); * ``` * ```python * import pulumi * import pulumi_cloudflare as cloudflare * example = cloudflare.AccessCustomPage("example", * zone_id="0da42c8d2132a9ddaf714f9e7c920711", * name="example", * type="forbidden", * custom_html="

Forbidden

") * ``` * ```csharp * using System.Collections.Generic; * using System.Linq; * using Pulumi; * using Cloudflare = Pulumi.Cloudflare; * return await Deployment.RunAsync(() => * { * var example = new Cloudflare.AccessCustomPage("example", new() * { * ZoneId = "0da42c8d2132a9ddaf714f9e7c920711", * Name = "example", * Type = "forbidden", * CustomHtml = "

Forbidden

", * }); * }); * ``` * ```go * package main * import ( * "github.com/pulumi/pulumi-cloudflare/sdk/v5/go/cloudflare" * "github.com/pulumi/pulumi/sdk/v3/go/pulumi" * ) * func main() { * pulumi.Run(func(ctx *pulumi.Context) error { * _, err := cloudflare.NewAccessCustomPage(ctx, "example", &cloudflare.AccessCustomPageArgs{ * ZoneId: pulumi.String("0da42c8d2132a9ddaf714f9e7c920711"), * Name: pulumi.String("example"), * Type: pulumi.String("forbidden"), * CustomHtml: pulumi.String("

Forbidden

"), * }) * if err != nil { * return err * } * return nil * }) * } * ``` * ```java * package generated_program; * import com.pulumi.Context; * import com.pulumi.Pulumi; * import com.pulumi.core.Output; * import com.pulumi.cloudflare.AccessCustomPage; * import com.pulumi.cloudflare.AccessCustomPageArgs; * import java.util.List; * import java.util.ArrayList; * import java.util.Map; * import java.io.File; * import java.nio.file.Files; * import java.nio.file.Paths; * public class App { * public static void main(String[] args) { * Pulumi.run(App::stack); * } * public static void stack(Context ctx) { * var example = new AccessCustomPage("example", AccessCustomPageArgs.builder() * .zoneId("0da42c8d2132a9ddaf714f9e7c920711") * .name("example") * .type("forbidden") * .customHtml("

Forbidden

") * .build()); * } * } * ``` * ```yaml * resources: * example: * type: cloudflare:AccessCustomPage * properties: * zoneId: 0da42c8d2132a9ddaf714f9e7c920711 * name: example * type: forbidden * customHtml:

Forbidden

* ``` * */ public class AccessCustomPage internal constructor( override val javaResource: com.pulumi.cloudflare.AccessCustomPage, ) : KotlinCustomResource(javaResource, AccessCustomPageMapper) { /** * The account identifier to target for the resource. Conflicts with `zone_id`. **Modifying this attribute will force creation of a new resource.** */ public val accountId: Output? get() = javaResource.accountId().applyValue({ args0 -> args0.map({ args0 -> args0 }).orElse(null) }) /** * Number of apps to display on the custom page. */ public val appCount: Output? get() = javaResource.appCount().applyValue({ args0 -> args0.map({ args0 -> args0 }).orElse(null) }) /** * Custom HTML to display on the custom page. */ public val customHtml: Output? get() = javaResource.customHtml().applyValue({ args0 -> args0.map({ args0 -> args0 }).orElse(null) }) /** * Friendly name of the Access Custom Page configuration. */ public val name: Output get() = javaResource.name().applyValue({ args0 -> args0 }) /** * Type of Access custom page to create. Available values: `identity_denied`, `forbidden`. */ public val type: Output get() = javaResource.type().applyValue({ args0 -> args0 }) /** * The zone identifier to target for the resource. Conflicts with `account_id`. **Modifying this attribute will force creation of a new resource.** */ public val zoneId: Output? get() = javaResource.zoneId().applyValue({ args0 -> args0.map({ args0 -> args0 }).orElse(null) }) } public object AccessCustomPageMapper : ResourceMapper { override fun supportsMappingOfType(javaResource: Resource): Boolean = com.pulumi.cloudflare.AccessCustomPage::class == javaResource::class override fun map(javaResource: Resource): AccessCustomPage = AccessCustomPage( javaResource as com.pulumi.cloudflare.AccessCustomPage, ) } /** * @see [AccessCustomPage]. * @param name The _unique_ name of the resulting resource. * @param block Builder for [AccessCustomPage]. */ public suspend fun accessCustomPage( name: String, block: suspend AccessCustomPageResourceBuilder.() -> Unit, ): AccessCustomPage { val builder = AccessCustomPageResourceBuilder() builder.name(name) block(builder) return builder.build() } /** * @see [AccessCustomPage]. * @param name The _unique_ name of the resulting resource. */ public fun accessCustomPage(name: String): AccessCustomPage { val builder = AccessCustomPageResourceBuilder() builder.name(name) return builder.build() }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy