UNPKG

@equinix-labs/pulumi-equinix

Version:

A Pulumi package for creating and managing equinix cloud resources.

172 lines (171 loc) 5.75 kB
import * as pulumi from "@pulumi/pulumi"; import * as enums from "../types/enums"; /** * Resource `equinix.networkedge.NetworkFile` allows creation and management of Equinix Network Edge files. * * ## Example Usage * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as equinix from "@equinix-labs/pulumi-equinix"; * import * as std from "@pulumi/std"; * * const config = new pulumi.Config(); * const filepath = config.get("filepath") || "fileFolder/fileName.txt"; * const testFile = new equinix.networkedge.NetworkFile("test-file", { * fileName: "fileName.txt", * content: std.fileOutput({ * input: filepath, * }).apply(invoke => invoke.result), * metroCode: equinix.index.Metro.SiliconValley, * deviceTypeCode: "AVIATRIX_EDGE_10", * processType: equinix.networkedge.FileType.CloudInit, * selfManaged: true, * byol: true, * }); * ``` * * ## Import * * This resource can be imported using an existing ID: * * ```sh * $ pulumi import equinix:networkedge/networkFile:NetworkFile example {existing_id} * ``` * * The `content`, `self_managed` and `byol` fields can not be imported. */ export declare class NetworkFile extends pulumi.CustomResource { /** * Get an existing NetworkFile resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkFileState, opts?: pulumi.CustomResourceOptions): NetworkFile; /** * Returns true if the given object is an instance of NetworkFile. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is NetworkFile; /** * Boolean value that determines device licensing mode, i.e., `bring your own license` or `subscription`. */ readonly byol: pulumi.Output<boolean>; /** * Uploaded file content, expected to be a UTF-8 encoded string. */ readonly content: pulumi.Output<string>; /** * Device type code */ readonly deviceTypeCode: pulumi.Output<string>; /** * File name. */ readonly fileName: pulumi.Output<string>; /** * File upload location metro code. It should match the device location metro code. */ readonly metroCode: pulumi.Output<string>; /** * File process type (LICENSE or CLOUD_INIT). */ readonly processType: pulumi.Output<string>; /** * Boolean value that determines device management mode, i.e., `self-managed` or `Equinix-managed`. */ readonly selfManaged: pulumi.Output<boolean>; /** * File upload status. */ readonly status: pulumi.Output<string>; /** * Unique identifier of file resource. */ readonly uuid: pulumi.Output<string>; /** * Create a NetworkFile resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: NetworkFileArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering NetworkFile resources. */ export interface NetworkFileState { /** * Boolean value that determines device licensing mode, i.e., `bring your own license` or `subscription`. */ byol?: pulumi.Input<boolean>; /** * Uploaded file content, expected to be a UTF-8 encoded string. */ content?: pulumi.Input<string>; /** * Device type code */ deviceTypeCode?: pulumi.Input<string>; /** * File name. */ fileName?: pulumi.Input<string>; /** * File upload location metro code. It should match the device location metro code. */ metroCode?: pulumi.Input<string | enums.Metro>; /** * File process type (LICENSE or CLOUD_INIT). */ processType?: pulumi.Input<string | enums.networkedge.FileType>; /** * Boolean value that determines device management mode, i.e., `self-managed` or `Equinix-managed`. */ selfManaged?: pulumi.Input<boolean>; /** * File upload status. */ status?: pulumi.Input<string>; /** * Unique identifier of file resource. */ uuid?: pulumi.Input<string>; } /** * The set of arguments for constructing a NetworkFile resource. */ export interface NetworkFileArgs { /** * Boolean value that determines device licensing mode, i.e., `bring your own license` or `subscription`. */ byol: pulumi.Input<boolean>; /** * Uploaded file content, expected to be a UTF-8 encoded string. */ content: pulumi.Input<string>; /** * Device type code */ deviceTypeCode: pulumi.Input<string>; /** * File name. */ fileName: pulumi.Input<string>; /** * File upload location metro code. It should match the device location metro code. */ metroCode: pulumi.Input<string | enums.Metro>; /** * File process type (LICENSE or CLOUD_INIT). */ processType: pulumi.Input<string | enums.networkedge.FileType>; /** * Boolean value that determines device management mode, i.e., `self-managed` or `Equinix-managed`. */ selfManaged: pulumi.Input<boolean>; }