spectrocloud.ApplicationProfile
Explore with Pulumi AI
Provisions an Application Profile. App Profiles are templates created with preconfigured services. You can create as many profiles as required, with multiple tiers serving different functionalities per use case.
Example Usage
App Profile with Container
import * as pulumi from "@pulumi/pulumi";
import * as spectrocloud from "@pulumi/spectrocloud";
const config = new pulumi.Config();
const single_container_image = config.get("single-container-image") || "ghcr.io/spectrocloud/hello-universe:1.0.8";
const beehive = spectrocloud.getClusterGroup({
name: "beehive",
context: "system",
});
const containerRegistry = spectrocloud.getRegistry({
name: "Public Repo",
});
const containerPack = containerRegistry.then(containerRegistry => spectrocloud.getPackSimple({
type: "container",
name: "container",
version: "1.0.0",
registryUid: containerRegistry.id,
}));
const hello_universe_ui = new spectrocloud.ApplicationProfile("hello-universe-ui", {
description: "Hello Universe as a single UI instance",
packs: [{
name: "hello-universe-ui",
type: containerPack.then(containerPack => containerPack.type),
registryUid: containerRegistry.then(containerRegistry => containerRegistry.id),
sourceAppTier: containerPack.then(containerPack => containerPack.id),
values: `containerService:
serviceName: "hello-universe-ui-test"
registryUrl: ""
image: ${single_container_image}
access: public
ports:
- "8080"
serviceType: LoadBalancer
`,
}],
tags: ["scenario-1"],
});
import pulumi
import pulumi_spectrocloud as spectrocloud
config = pulumi.Config()
single_container_image = config.get("single-container-image")
if single_container_image is None:
single_container_image = "ghcr.io/spectrocloud/hello-universe:1.0.8"
beehive = spectrocloud.get_cluster_group(name="beehive",
context="system")
container_registry = spectrocloud.get_registry(name="Public Repo")
container_pack = spectrocloud.get_pack_simple(type="container",
name="container",
version="1.0.0",
registry_uid=container_registry.id)
hello_universe_ui = spectrocloud.ApplicationProfile("hello-universe-ui",
description="Hello Universe as a single UI instance",
packs=[{
"name": "hello-universe-ui",
"type": container_pack.type,
"registry_uid": container_registry.id,
"source_app_tier": container_pack.id,
"values": f"""containerService:
serviceName: "hello-universe-ui-test"
registryUrl: ""
image: {single_container_image}
access: public
ports:
- "8080"
serviceType: LoadBalancer
""",
}],
tags=["scenario-1"])
package main
import (
"fmt"
"github.com/pulumi/pulumi-terraform-provider/sdks/go/spectrocloud/spectrocloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
single_container_image := "ghcr.io/spectrocloud/hello-universe:1.0.8"
if param := cfg.Get("single-container-image"); param != "" {
single_container_image = param
}
_, err := spectrocloud.LookupClusterGroup(ctx, &spectrocloud.LookupClusterGroupArgs{
Name: "beehive",
Context: pulumi.StringRef("system"),
}, nil)
if err != nil {
return err
}
containerRegistry, err := spectrocloud.GetRegistry(ctx, &spectrocloud.GetRegistryArgs{
Name: "Public Repo",
}, nil)
if err != nil {
return err
}
containerPack, err := spectrocloud.GetPackSimple(ctx, &spectrocloud.GetPackSimpleArgs{
Type: "container",
Name: "container",
Version: pulumi.StringRef("1.0.0"),
RegistryUid: pulumi.StringRef(containerRegistry.Id),
}, nil)
if err != nil {
return err
}
_, err = spectrocloud.NewApplicationProfile(ctx, "hello-universe-ui", &spectrocloud.ApplicationProfileArgs{
Description: pulumi.String("Hello Universe as a single UI instance"),
Packs: spectrocloud.ApplicationProfilePackArray{
&spectrocloud.ApplicationProfilePackArgs{
Name: pulumi.String("hello-universe-ui"),
Type: pulumi.String(containerPack.Type),
RegistryUid: pulumi.String(containerRegistry.Id),
SourceAppTier: pulumi.String(containerPack.Id),
Values: pulumi.Sprintf(`containerService:
serviceName: "hello-universe-ui-test"
registryUrl: ""
image: %v
access: public
ports:
- "8080"
serviceType: LoadBalancer
`, single_container_image),
},
},
Tags: pulumi.StringArray{
pulumi.String("scenario-1"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Spectrocloud = Pulumi.Spectrocloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var single_container_image = config.Get("single-container-image") ?? "ghcr.io/spectrocloud/hello-universe:1.0.8";
var beehive = Spectrocloud.GetClusterGroup.Invoke(new()
{
Name = "beehive",
Context = "system",
});
var containerRegistry = Spectrocloud.GetRegistry.Invoke(new()
{
Name = "Public Repo",
});
var containerPack = Spectrocloud.GetPackSimple.Invoke(new()
{
Type = "container",
Name = "container",
Version = "1.0.0",
RegistryUid = containerRegistry.Apply(getRegistryResult => getRegistryResult.Id),
});
var hello_universe_ui = new Spectrocloud.ApplicationProfile("hello-universe-ui", new()
{
Description = "Hello Universe as a single UI instance",
Packs = new[]
{
new Spectrocloud.Inputs.ApplicationProfilePackArgs
{
Name = "hello-universe-ui",
Type = containerPack.Apply(getPackSimpleResult => getPackSimpleResult.Type),
RegistryUid = containerRegistry.Apply(getRegistryResult => getRegistryResult.Id),
SourceAppTier = containerPack.Apply(getPackSimpleResult => getPackSimpleResult.Id),
Values = @$"containerService:
serviceName: ""hello-universe-ui-test""
registryUrl: """"
image: {single_container_image}
access: public
ports:
- ""8080""
serviceType: LoadBalancer
",
},
},
Tags = new[]
{
"scenario-1",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.spectrocloud.SpectrocloudFunctions;
import com.pulumi.spectrocloud.inputs.GetClusterGroupArgs;
import com.pulumi.spectrocloud.inputs.GetRegistryArgs;
import com.pulumi.spectrocloud.inputs.GetPackSimpleArgs;
import com.pulumi.spectrocloud.ApplicationProfile;
import com.pulumi.spectrocloud.ApplicationProfileArgs;
import com.pulumi.spectrocloud.inputs.ApplicationProfilePackArgs;
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) {
final var config = ctx.config();
final var single_container_image = config.get("single-container-image").orElse("ghcr.io/spectrocloud/hello-universe:1.0.8");
final var beehive = SpectrocloudFunctions.getClusterGroup(GetClusterGroupArgs.builder()
.name("beehive")
.context("system")
.build());
final var containerRegistry = SpectrocloudFunctions.getRegistry(GetRegistryArgs.builder()
.name("Public Repo")
.build());
final var containerPack = SpectrocloudFunctions.getPackSimple(GetPackSimpleArgs.builder()
.type("container")
.name("container")
.version("1.0.0")
.registryUid(containerRegistry.applyValue(getRegistryResult -> getRegistryResult.id()))
.build());
var hello_universe_ui = new ApplicationProfile("hello-universe-ui", ApplicationProfileArgs.builder()
.description("Hello Universe as a single UI instance")
.packs(ApplicationProfilePackArgs.builder()
.name("hello-universe-ui")
.type(containerPack.applyValue(getPackSimpleResult -> getPackSimpleResult.type()))
.registryUid(containerRegistry.applyValue(getRegistryResult -> getRegistryResult.id()))
.sourceAppTier(containerPack.applyValue(getPackSimpleResult -> getPackSimpleResult.id()))
.values("""
containerService:
serviceName: "hello-universe-ui-test"
registryUrl: ""
image: %s
access: public
ports:
- "8080"
serviceType: LoadBalancer
", single_container_image))
.build())
.tags("scenario-1")
.build());
}
}
configuration:
single-container-image:
type: string
default: ghcr.io/spectrocloud/hello-universe:1.0.8
resources:
hello-universe-ui:
type: spectrocloud:ApplicationProfile
properties:
description: Hello Universe as a single UI instance
packs:
- name: hello-universe-ui
type: ${containerPack.type}
registryUid: ${containerRegistry.id}
sourceAppTier: ${containerPack.id}
values: |
containerService:
serviceName: "hello-universe-ui-test"
registryUrl: ""
image: ${["single-container-image"]}
access: public
ports:
- "8080"
serviceType: LoadBalancer
tags:
- scenario-1
variables:
beehive:
fn::invoke:
function: spectrocloud:getClusterGroup
arguments:
name: beehive
context: system
containerRegistry:
fn::invoke:
function: spectrocloud:getRegistry
arguments:
name: Public Repo
containerPack:
fn::invoke:
function: spectrocloud:getPackSimple
arguments:
type: container
name: container
version: 1.0.0
registryUid: ${containerRegistry.id}
App Profile with Helm Chart
import * as pulumi from "@pulumi/pulumi";
import * as spectrocloud from "@pulumi/spectrocloud";
const helm = spectrocloud.getRegistryHelm({
name: "Public Spectro Helm Repo",
});
const marvel_app = helm.then(helm => spectrocloud.getPack({
name: "marvel-app",
registryUid: helm.id,
version: "0.1.0",
}));
const my_app_profile = new spectrocloud.ApplicationProfile("my-app-profile", {
description: "A profile for a simple application",
context: "project",
packs: [{
name: marvel_app.then(marvel_app => marvel_app.name),
type: "helm",
registryUid: helm.then(helm => helm.id),
sourceAppTier: marvel_app.then(marvel_app => marvel_app.id),
}],
tags: [
"name:marvel-app",
"terraform_managed:true",
"env:dev",
],
});
import pulumi
import pulumi_spectrocloud as spectrocloud
helm = spectrocloud.get_registry_helm(name="Public Spectro Helm Repo")
marvel_app = spectrocloud.get_pack(name="marvel-app",
registry_uid=helm.id,
version="0.1.0")
my_app_profile = spectrocloud.ApplicationProfile("my-app-profile",
description="A profile for a simple application",
context="project",
packs=[{
"name": marvel_app.name,
"type": "helm",
"registry_uid": helm.id,
"source_app_tier": marvel_app.id,
}],
tags=[
"name:marvel-app",
"terraform_managed:true",
"env:dev",
])
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/spectrocloud/spectrocloud"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
helm, err := spectrocloud.LookupRegistryHelm(ctx, &spectrocloud.LookupRegistryHelmArgs{
Name: "Public Spectro Helm Repo",
}, nil)
if err != nil {
return err
}
marvel_app, err := spectrocloud.GetPack(ctx, &spectrocloud.GetPackArgs{
Name: pulumi.StringRef("marvel-app"),
RegistryUid: pulumi.StringRef(helm.Id),
Version: pulumi.StringRef("0.1.0"),
}, nil)
if err != nil {
return err
}
_, err = spectrocloud.NewApplicationProfile(ctx, "my-app-profile", &spectrocloud.ApplicationProfileArgs{
Description: pulumi.String("A profile for a simple application"),
Context: pulumi.String("project"),
Packs: spectrocloud.ApplicationProfilePackArray{
&spectrocloud.ApplicationProfilePackArgs{
Name: pulumi.String(marvel_app.Name),
Type: pulumi.String("helm"),
RegistryUid: pulumi.String(helm.Id),
SourceAppTier: pulumi.String(marvel_app.Id),
},
},
Tags: pulumi.StringArray{
pulumi.String("name:marvel-app"),
pulumi.String("terraform_managed:true"),
pulumi.String("env:dev"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Spectrocloud = Pulumi.Spectrocloud;
return await Deployment.RunAsync(() =>
{
var helm = Spectrocloud.GetRegistryHelm.Invoke(new()
{
Name = "Public Spectro Helm Repo",
});
var marvel_app = Spectrocloud.GetPack.Invoke(new()
{
Name = "marvel-app",
RegistryUid = helm.Apply(getRegistryHelmResult => getRegistryHelmResult.Id),
Version = "0.1.0",
});
var my_app_profile = new Spectrocloud.ApplicationProfile("my-app-profile", new()
{
Description = "A profile for a simple application",
Context = "project",
Packs = new[]
{
new Spectrocloud.Inputs.ApplicationProfilePackArgs
{
Name = marvel_app.Apply(marvel_app => marvel_app.Apply(getPackResult => getPackResult.Name)),
Type = "helm",
RegistryUid = helm.Apply(getRegistryHelmResult => getRegistryHelmResult.Id),
SourceAppTier = marvel_app.Apply(marvel_app => marvel_app.Apply(getPackResult => getPackResult.Id)),
},
},
Tags = new[]
{
"name:marvel-app",
"terraform_managed:true",
"env:dev",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.spectrocloud.SpectrocloudFunctions;
import com.pulumi.spectrocloud.inputs.GetRegistryHelmArgs;
import com.pulumi.spectrocloud.inputs.GetPackArgs;
import com.pulumi.spectrocloud.ApplicationProfile;
import com.pulumi.spectrocloud.ApplicationProfileArgs;
import com.pulumi.spectrocloud.inputs.ApplicationProfilePackArgs;
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) {
final var helm = SpectrocloudFunctions.getRegistryHelm(GetRegistryHelmArgs.builder()
.name("Public Spectro Helm Repo")
.build());
final var marvel-app = SpectrocloudFunctions.getPack(GetPackArgs.builder()
.name("marvel-app")
.registryUid(helm.applyValue(getRegistryHelmResult -> getRegistryHelmResult.id()))
.version("0.1.0")
.build());
var my_app_profile = new ApplicationProfile("my-app-profile", ApplicationProfileArgs.builder()
.description("A profile for a simple application")
.context("project")
.packs(ApplicationProfilePackArgs.builder()
.name(marvel_app.name())
.type("helm")
.registryUid(helm.applyValue(getRegistryHelmResult -> getRegistryHelmResult.id()))
.sourceAppTier(marvel_app.id())
.build())
.tags(
"name:marvel-app",
"terraform_managed:true",
"env:dev")
.build());
}
}
resources:
my-app-profile:
type: spectrocloud:ApplicationProfile
properties:
description: A profile for a simple application
context: project
packs:
- name: ${["marvel-app"].name}
type: helm
registryUid: ${helm.id}
sourceAppTier: ${["marvel-app"].id}
tags:
- name:marvel-app
- terraform_managed:true
- env:dev
variables:
helm:
fn::invoke:
function: spectrocloud:getRegistryHelm
arguments:
name: Public Spectro Helm Repo
marvel-app:
fn::invoke:
function: spectrocloud:getPack
arguments:
name: marvel-app
registryUid: ${helm.id}
version: 0.1.0
Create ApplicationProfile Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ApplicationProfile(name: string, args: ApplicationProfileArgs, opts?: CustomResourceOptions);
@overload
def ApplicationProfile(resource_name: str,
args: ApplicationProfileArgs,
opts: Optional[ResourceOptions] = None)
@overload
def ApplicationProfile(resource_name: str,
opts: Optional[ResourceOptions] = None,
packs: Optional[Sequence[ApplicationProfilePackArgs]] = None,
application_profile_id: Optional[str] = None,
cloud: Optional[str] = None,
context: Optional[str] = None,
description: Optional[str] = None,
name: Optional[str] = None,
tags: Optional[Sequence[str]] = None,
timeouts: Optional[ApplicationProfileTimeoutsArgs] = None,
version: Optional[str] = None)
func NewApplicationProfile(ctx *Context, name string, args ApplicationProfileArgs, opts ...ResourceOption) (*ApplicationProfile, error)
public ApplicationProfile(string name, ApplicationProfileArgs args, CustomResourceOptions? opts = null)
public ApplicationProfile(String name, ApplicationProfileArgs args)
public ApplicationProfile(String name, ApplicationProfileArgs args, CustomResourceOptions options)
type: spectrocloud:ApplicationProfile
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ApplicationProfileArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ApplicationProfileArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ApplicationProfileArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ApplicationProfileArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ApplicationProfileArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var applicationProfileResource = new Spectrocloud.ApplicationProfile("applicationProfileResource", new()
{
Packs = new[]
{
new Spectrocloud.Inputs.ApplicationProfilePackArgs
{
Name = "string",
InstallOrder = 0,
Manifests = new[]
{
new Spectrocloud.Inputs.ApplicationProfilePackManifestArgs
{
Content = "string",
Name = "string",
Uid = "string",
},
},
Properties =
{
{ "string", "string" },
},
RegistryUid = "string",
SourceAppTier = "string",
Tag = "string",
Type = "string",
Uid = "string",
Values = "string",
},
},
ApplicationProfileId = "string",
Cloud = "string",
Context = "string",
Description = "string",
Name = "string",
Tags = new[]
{
"string",
},
Timeouts = new Spectrocloud.Inputs.ApplicationProfileTimeoutsArgs
{
Create = "string",
Delete = "string",
Update = "string",
},
Version = "string",
});
example, err := spectrocloud.NewApplicationProfile(ctx, "applicationProfileResource", &spectrocloud.ApplicationProfileArgs{
Packs: spectrocloud.ApplicationProfilePackArray{
&spectrocloud.ApplicationProfilePackArgs{
Name: pulumi.String("string"),
InstallOrder: pulumi.Float64(0),
Manifests: spectrocloud.ApplicationProfilePackManifestArray{
&spectrocloud.ApplicationProfilePackManifestArgs{
Content: pulumi.String("string"),
Name: pulumi.String("string"),
Uid: pulumi.String("string"),
},
},
Properties: pulumi.StringMap{
"string": pulumi.String("string"),
},
RegistryUid: pulumi.String("string"),
SourceAppTier: pulumi.String("string"),
Tag: pulumi.String("string"),
Type: pulumi.String("string"),
Uid: pulumi.String("string"),
Values: pulumi.String("string"),
},
},
ApplicationProfileId: pulumi.String("string"),
Cloud: pulumi.String("string"),
Context: pulumi.String("string"),
Description: pulumi.String("string"),
Name: pulumi.String("string"),
Tags: pulumi.StringArray{
pulumi.String("string"),
},
Timeouts: &spectrocloud.ApplicationProfileTimeoutsArgs{
Create: pulumi.String("string"),
Delete: pulumi.String("string"),
Update: pulumi.String("string"),
},
Version: pulumi.String("string"),
})
var applicationProfileResource = new ApplicationProfile("applicationProfileResource", ApplicationProfileArgs.builder()
.packs(ApplicationProfilePackArgs.builder()
.name("string")
.installOrder(0)
.manifests(ApplicationProfilePackManifestArgs.builder()
.content("string")
.name("string")
.uid("string")
.build())
.properties(Map.of("string", "string"))
.registryUid("string")
.sourceAppTier("string")
.tag("string")
.type("string")
.uid("string")
.values("string")
.build())
.applicationProfileId("string")
.cloud("string")
.context("string")
.description("string")
.name("string")
.tags("string")
.timeouts(ApplicationProfileTimeoutsArgs.builder()
.create("string")
.delete("string")
.update("string")
.build())
.version("string")
.build());
application_profile_resource = spectrocloud.ApplicationProfile("applicationProfileResource",
packs=[{
"name": "string",
"install_order": 0,
"manifests": [{
"content": "string",
"name": "string",
"uid": "string",
}],
"properties": {
"string": "string",
},
"registry_uid": "string",
"source_app_tier": "string",
"tag": "string",
"type": "string",
"uid": "string",
"values": "string",
}],
application_profile_id="string",
cloud="string",
context="string",
description="string",
name="string",
tags=["string"],
timeouts={
"create": "string",
"delete": "string",
"update": "string",
},
version="string")
const applicationProfileResource = new spectrocloud.ApplicationProfile("applicationProfileResource", {
packs: [{
name: "string",
installOrder: 0,
manifests: [{
content: "string",
name: "string",
uid: "string",
}],
properties: {
string: "string",
},
registryUid: "string",
sourceAppTier: "string",
tag: "string",
type: "string",
uid: "string",
values: "string",
}],
applicationProfileId: "string",
cloud: "string",
context: "string",
description: "string",
name: "string",
tags: ["string"],
timeouts: {
create: "string",
"delete": "string",
update: "string",
},
version: "string",
});
type: spectrocloud:ApplicationProfile
properties:
applicationProfileId: string
cloud: string
context: string
description: string
name: string
packs:
- installOrder: 0
manifests:
- content: string
name: string
uid: string
name: string
properties:
string: string
registryUid: string
sourceAppTier: string
tag: string
type: string
uid: string
values: string
tags:
- string
timeouts:
create: string
delete: string
update: string
version: string
ApplicationProfile Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The ApplicationProfile resource accepts the following input properties:
- Packs
List<Application
Profile Pack> - A list of packs to be applied to the application profile.
- Application
Profile stringId - The ID of this resource.
- Cloud string
- The cloud provider the profile is eligible for. Default value is
all
. - Context string
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - Description string
- Description of the profile.
- Name string
- Name of the application profile
- List<string>
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - Timeouts
Application
Profile Timeouts - Version string
- Version of the profile. Default value is 1.0.0.
- Packs
[]Application
Profile Pack Args - A list of packs to be applied to the application profile.
- Application
Profile stringId - The ID of this resource.
- Cloud string
- The cloud provider the profile is eligible for. Default value is
all
. - Context string
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - Description string
- Description of the profile.
- Name string
- Name of the application profile
- []string
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - Timeouts
Application
Profile Timeouts Args - Version string
- Version of the profile. Default value is 1.0.0.
- packs
List<Application
Profile Pack> - A list of packs to be applied to the application profile.
- application
Profile StringId - The ID of this resource.
- cloud String
- The cloud provider the profile is eligible for. Default value is
all
. - context String
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description String
- Description of the profile.
- name String
- Name of the application profile
- List<String>
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts
Application
Profile Timeouts - version String
- Version of the profile. Default value is 1.0.0.
- packs
Application
Profile Pack[] - A list of packs to be applied to the application profile.
- application
Profile stringId - The ID of this resource.
- cloud string
- The cloud provider the profile is eligible for. Default value is
all
. - context string
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description string
- Description of the profile.
- name string
- Name of the application profile
- string[]
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts
Application
Profile Timeouts - version string
- Version of the profile. Default value is 1.0.0.
- packs
Sequence[Application
Profile Pack Args] - A list of packs to be applied to the application profile.
- application_
profile_ strid - The ID of this resource.
- cloud str
- The cloud provider the profile is eligible for. Default value is
all
. - context str
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description str
- Description of the profile.
- name str
- Name of the application profile
- Sequence[str]
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts
Application
Profile Timeouts Args - version str
- Version of the profile. Default value is 1.0.0.
- packs List<Property Map>
- A list of packs to be applied to the application profile.
- application
Profile StringId - The ID of this resource.
- cloud String
- The cloud provider the profile is eligible for. Default value is
all
. - context String
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description String
- Description of the profile.
- name String
- Name of the application profile
- List<String>
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts Property Map
- version String
- Version of the profile. Default value is 1.0.0.
Outputs
All input properties are implicitly available as output properties. Additionally, the ApplicationProfile resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing ApplicationProfile Resource
Get an existing ApplicationProfile resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ApplicationProfileState, opts?: CustomResourceOptions): ApplicationProfile
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
application_profile_id: Optional[str] = None,
cloud: Optional[str] = None,
context: Optional[str] = None,
description: Optional[str] = None,
name: Optional[str] = None,
packs: Optional[Sequence[ApplicationProfilePackArgs]] = None,
tags: Optional[Sequence[str]] = None,
timeouts: Optional[ApplicationProfileTimeoutsArgs] = None,
version: Optional[str] = None) -> ApplicationProfile
func GetApplicationProfile(ctx *Context, name string, id IDInput, state *ApplicationProfileState, opts ...ResourceOption) (*ApplicationProfile, error)
public static ApplicationProfile Get(string name, Input<string> id, ApplicationProfileState? state, CustomResourceOptions? opts = null)
public static ApplicationProfile get(String name, Output<String> id, ApplicationProfileState state, CustomResourceOptions options)
resources: _: type: spectrocloud:ApplicationProfile get: id: ${id}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Application
Profile stringId - The ID of this resource.
- Cloud string
- The cloud provider the profile is eligible for. Default value is
all
. - Context string
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - Description string
- Description of the profile.
- Name string
- Name of the application profile
- Packs
List<Application
Profile Pack> - A list of packs to be applied to the application profile.
- List<string>
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - Timeouts
Application
Profile Timeouts - Version string
- Version of the profile. Default value is 1.0.0.
- Application
Profile stringId - The ID of this resource.
- Cloud string
- The cloud provider the profile is eligible for. Default value is
all
. - Context string
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - Description string
- Description of the profile.
- Name string
- Name of the application profile
- Packs
[]Application
Profile Pack Args - A list of packs to be applied to the application profile.
- []string
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - Timeouts
Application
Profile Timeouts Args - Version string
- Version of the profile. Default value is 1.0.0.
- application
Profile StringId - The ID of this resource.
- cloud String
- The cloud provider the profile is eligible for. Default value is
all
. - context String
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description String
- Description of the profile.
- name String
- Name of the application profile
- packs
List<Application
Profile Pack> - A list of packs to be applied to the application profile.
- List<String>
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts
Application
Profile Timeouts - version String
- Version of the profile. Default value is 1.0.0.
- application
Profile stringId - The ID of this resource.
- cloud string
- The cloud provider the profile is eligible for. Default value is
all
. - context string
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description string
- Description of the profile.
- name string
- Name of the application profile
- packs
Application
Profile Pack[] - A list of packs to be applied to the application profile.
- string[]
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts
Application
Profile Timeouts - version string
- Version of the profile. Default value is 1.0.0.
- application_
profile_ strid - The ID of this resource.
- cloud str
- The cloud provider the profile is eligible for. Default value is
all
. - context str
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description str
- Description of the profile.
- name str
- Name of the application profile
- packs
Sequence[Application
Profile Pack Args] - A list of packs to be applied to the application profile.
- Sequence[str]
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts
Application
Profile Timeouts Args - version str
- Version of the profile. Default value is 1.0.0.
- application
Profile StringId - The ID of this resource.
- cloud String
- The cloud provider the profile is eligible for. Default value is
all
. - context String
- Context of the profile. Allowed values are
project
,cluster
, ornamespace
. Default value isproject
.If theproject
context is specified, the project name will sourced from the provider configuration parameterproject_name
. - description String
- Description of the profile.
- name String
- Name of the application profile
- packs List<Property Map>
- A list of packs to be applied to the application profile.
- List<String>
- A list of tags to be applied to the application profile. Tags must be in the form of
key:value
. - timeouts Property Map
- version String
- Version of the profile. Default value is 1.0.0.
Supporting Types
ApplicationProfilePack, ApplicationProfilePackArgs
- Name string
- The name of the specified pack.
- Install
Order double - The installation priority order of the app profile. The order of priority goes from lowest number to highest number. For example, a value of
-3
would be installed before an app profile with a higher number value. No upper and lower limits exist, and you may specify positive and negative integers. The default value is0
. - Manifests
List<Application
Profile Pack Manifest> - The manifest of the pack.
- Properties Dictionary<string, string>
- The various properties required by different database tiers eg:
databaseName
anddatabaseVolumeSize
size for Redis etc. - Registry
Uid string - The unique id of the registry to be used for the pack.
- Source
App stringTier - The unique id of the pack to be used as the source for the pack.
- Tag string
- The identifier or version to label the pack.
- Type string
- The type of Pack. Allowed values are
container
,helm
,manifest
, oroperator-instance
. - Uid string
- The unique id of the pack. This is a computed field and is not required to be set.
- Values string
- The values to be used for the pack. This is a stringified JSON object.
- Name string
- The name of the specified pack.
- Install
Order float64 - The installation priority order of the app profile. The order of priority goes from lowest number to highest number. For example, a value of
-3
would be installed before an app profile with a higher number value. No upper and lower limits exist, and you may specify positive and negative integers. The default value is0
. - Manifests
[]Application
Profile Pack Manifest - The manifest of the pack.
- Properties map[string]string
- The various properties required by different database tiers eg:
databaseName
anddatabaseVolumeSize
size for Redis etc. - Registry
Uid string - The unique id of the registry to be used for the pack.
- Source
App stringTier - The unique id of the pack to be used as the source for the pack.
- Tag string
- The identifier or version to label the pack.
- Type string
- The type of Pack. Allowed values are
container
,helm
,manifest
, oroperator-instance
. - Uid string
- The unique id of the pack. This is a computed field and is not required to be set.
- Values string
- The values to be used for the pack. This is a stringified JSON object.
- name String
- The name of the specified pack.
- install
Order Double - The installation priority order of the app profile. The order of priority goes from lowest number to highest number. For example, a value of
-3
would be installed before an app profile with a higher number value. No upper and lower limits exist, and you may specify positive and negative integers. The default value is0
. - manifests
List<Application
Profile Pack Manifest> - The manifest of the pack.
- properties Map<String,String>
- The various properties required by different database tiers eg:
databaseName
anddatabaseVolumeSize
size for Redis etc. - registry
Uid String - The unique id of the registry to be used for the pack.
- source
App StringTier - The unique id of the pack to be used as the source for the pack.
- tag String
- The identifier or version to label the pack.
- type String
- The type of Pack. Allowed values are
container
,helm
,manifest
, oroperator-instance
. - uid String
- The unique id of the pack. This is a computed field and is not required to be set.
- values String
- The values to be used for the pack. This is a stringified JSON object.
- name string
- The name of the specified pack.
- install
Order number - The installation priority order of the app profile. The order of priority goes from lowest number to highest number. For example, a value of
-3
would be installed before an app profile with a higher number value. No upper and lower limits exist, and you may specify positive and negative integers. The default value is0
. - manifests
Application
Profile Pack Manifest[] - The manifest of the pack.
- properties {[key: string]: string}
- The various properties required by different database tiers eg:
databaseName
anddatabaseVolumeSize
size for Redis etc. - registry
Uid string - The unique id of the registry to be used for the pack.
- source
App stringTier - The unique id of the pack to be used as the source for the pack.
- tag string
- The identifier or version to label the pack.
- type string
- The type of Pack. Allowed values are
container
,helm
,manifest
, oroperator-instance
. - uid string
- The unique id of the pack. This is a computed field and is not required to be set.
- values string
- The values to be used for the pack. This is a stringified JSON object.
- name str
- The name of the specified pack.
- install_
order float - The installation priority order of the app profile. The order of priority goes from lowest number to highest number. For example, a value of
-3
would be installed before an app profile with a higher number value. No upper and lower limits exist, and you may specify positive and negative integers. The default value is0
. - manifests
Sequence[Application
Profile Pack Manifest] - The manifest of the pack.
- properties Mapping[str, str]
- The various properties required by different database tiers eg:
databaseName
anddatabaseVolumeSize
size for Redis etc. - registry_
uid str - The unique id of the registry to be used for the pack.
- source_
app_ strtier - The unique id of the pack to be used as the source for the pack.
- tag str
- The identifier or version to label the pack.
- type str
- The type of Pack. Allowed values are
container
,helm
,manifest
, oroperator-instance
. - uid str
- The unique id of the pack. This is a computed field and is not required to be set.
- values str
- The values to be used for the pack. This is a stringified JSON object.
- name String
- The name of the specified pack.
- install
Order Number - The installation priority order of the app profile. The order of priority goes from lowest number to highest number. For example, a value of
-3
would be installed before an app profile with a higher number value. No upper and lower limits exist, and you may specify positive and negative integers. The default value is0
. - manifests List<Property Map>
- The manifest of the pack.
- properties Map<String>
- The various properties required by different database tiers eg:
databaseName
anddatabaseVolumeSize
size for Redis etc. - registry
Uid String - The unique id of the registry to be used for the pack.
- source
App StringTier - The unique id of the pack to be used as the source for the pack.
- tag String
- The identifier or version to label the pack.
- type String
- The type of Pack. Allowed values are
container
,helm
,manifest
, oroperator-instance
. - uid String
- The unique id of the pack. This is a computed field and is not required to be set.
- values String
- The values to be used for the pack. This is a stringified JSON object.
ApplicationProfilePackManifest, ApplicationProfilePackManifestArgs
ApplicationProfileTimeouts, ApplicationProfileTimeoutsArgs
Package Details
- Repository
- spectrocloud spectrocloud/terraform-provider-spectrocloud
- License
- Notes
- This Pulumi package is based on the
spectrocloud
Terraform Provider.