@natzka-oss/pulumi-netbox
Version:
A Pulumi package for creating and managing Netbox cloud resources.
68 lines • 3.07 kB
JavaScript
;
// *** 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.Platform = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* From the [official documentation](https://docs.netbox.dev/en/stable/features/devices/#platforms):
*
* > A platform defines the type of software running on a device or virtual machine. This can be helpful to model when it is necessary to distinguish between different versions or feature sets. Note that two devices of the same type may be assigned different platforms: For example, one Juniper MX240 might run Junos 14 while another runs Junos 15.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as netbox from "@natzka-oss/pulumi-netbox";
*
* // Resource for PanOS (e.g. Panorama from Palo Alto)
* const PANOS = new netbox.dcim.Platform("PANOS", {name: "PANOS"});
* ```
*/
class Platform extends pulumi.CustomResource {
/**
* Get an existing Platform 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, id, state, opts) {
return new Platform(name, state, Object.assign(Object.assign({}, opts), { id: id }));
}
/**
* Returns true if the given object is an instance of Platform. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === Platform.__pulumiType;
}
constructor(name, argsOrState, opts) {
let resourceInputs = {};
opts = opts || {};
if (opts.id) {
const state = argsOrState;
resourceInputs["manufacturerId"] = state ? state.manufacturerId : undefined;
resourceInputs["name"] = state ? state.name : undefined;
resourceInputs["slug"] = state ? state.slug : undefined;
}
else {
const args = argsOrState;
resourceInputs["manufacturerId"] = args ? args.manufacturerId : undefined;
resourceInputs["name"] = args ? args.name : undefined;
resourceInputs["slug"] = args ? args.slug : undefined;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
super(Platform.__pulumiType, name, resourceInputs, opts);
}
}
exports.Platform = Platform;
/** @internal */
Platform.__pulumiType = 'netbox:dcim/platform:Platform';
//# sourceMappingURL=platform.js.map