published on Wednesday, Nov 4, 2026 by spectrocloud
published on Wednesday, Nov 4, 2026 by spectrocloud
Provides the hardened image rollout status for a tenant. Palette propagates the Spectro Cloud registry image pull secret to managed workload clusters so they can pull hardened images, and this data source reports how far that rollout has progressed.
The report always covers the tenant the provider is authenticated against. Both arguments are optional server-side filters; omit them to retrieve every cluster in the tenant.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as spectrocloud from "@pulumi/spectrocloud";
// Retrieve the hardened image rollout status for the whole tenant
const current = spectrocloud.getHardenedImages({});
// Narrow the report to a single project
const production = spectrocloud.getHardenedImages({
projectUid: productionProjectUid,
});
export const hardenedImageRolloutState = current.then(current => current.state);
export const hardenedImageFailures = current.then(current => current.failedClustersCount);
import pulumi
import pulumi_spectrocloud as spectrocloud
# Retrieve the hardened image rollout status for the whole tenant
current = spectrocloud.get_hardened_images()
# Narrow the report to a single project
production = spectrocloud.get_hardened_images(project_uid=production_project_uid)
pulumi.export("hardenedImageRolloutState", current.state)
pulumi.export("hardenedImageFailures", current.failed_clusters_count)
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 {
// Retrieve the hardened image rollout status for the whole tenant
current, err := spectrocloud.LookupHardenedImages(ctx, &spectrocloud.LookupHardenedImagesArgs{}, nil)
if err != nil {
return err
}
// Narrow the report to a single project
_, err = spectrocloud.LookupHardenedImages(ctx, &spectrocloud.LookupHardenedImagesArgs{
ProjectUid: pulumi.StringRef(productionProjectUid),
}, nil)
if err != nil {
return err
}
ctx.Export("hardenedImageRolloutState", current.State)
ctx.Export("hardenedImageFailures", current.FailedClustersCount)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Spectrocloud = Pulumi.Spectrocloud;
return await Deployment.RunAsync(() =>
{
// Retrieve the hardened image rollout status for the whole tenant
var current = Spectrocloud.GetHardenedImages.Invoke();
// Narrow the report to a single project
var production = Spectrocloud.GetHardenedImages.Invoke(new()
{
ProjectUid = productionProjectUid,
});
return new Dictionary<string, object?>
{
["hardenedImageRolloutState"] = current.Apply(getHardenedImagesResult => getHardenedImagesResult.State),
["hardenedImageFailures"] = current.Apply(getHardenedImagesResult => getHardenedImagesResult.FailedClustersCount),
};
});
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.GetHardenedImagesArgs;
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) {
// Retrieve the hardened image rollout status for the whole tenant
final var current = SpectrocloudFunctions.getHardenedImages(GetHardenedImagesArgs.builder()
.build());
// Narrow the report to a single project
final var production = SpectrocloudFunctions.getHardenedImages(GetHardenedImagesArgs.builder()
.projectUid(productionProjectUid)
.build());
ctx.export("hardenedImageRolloutState", current.state());
ctx.export("hardenedImageFailures", current.failedClustersCount());
}
}
variables:
# Retrieve the hardened image rollout status for the whole tenant
current:
fn::invoke:
function: spectrocloud:getHardenedImages
arguments: {}
# Narrow the report to a single project
production:
fn::invoke:
function: spectrocloud:getHardenedImages
arguments:
projectUid: ${productionProjectUid}
outputs:
hardenedImageRolloutState: ${current.state}
hardenedImageFailures: ${current.failedClustersCount}
Example coming soon!
Using getHardenedImages
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getHardenedImages(args: GetHardenedImagesArgs, opts?: InvokeOptions): Promise<GetHardenedImagesResult>
function getHardenedImagesOutput(args: GetHardenedImagesOutputArgs, opts?: InvokeOutputOptions): Output<GetHardenedImagesResult>def get_hardened_images(cluster_name: Optional[str] = None,
id: Optional[str] = None,
project_uid: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetHardenedImagesResult
def get_hardened_images_output(cluster_name: pulumi.Input[Optional[str]] = None,
id: pulumi.Input[Optional[str]] = None,
project_uid: pulumi.Input[Optional[str]] = None,
opts: Optional[InvokeOutputOptions] = None) -> Output[GetHardenedImagesResult]func LookupHardenedImages(ctx *Context, args *LookupHardenedImagesArgs, opts ...InvokeOption) (*LookupHardenedImagesResult, error)
func LookupHardenedImagesOutput(ctx *Context, args *LookupHardenedImagesOutputArgs, opts ...InvokeOption) LookupHardenedImagesResultOutput> Note: This function is named LookupHardenedImages in the Go SDK.
public static class GetHardenedImages
{
public static Task<GetHardenedImagesResult> InvokeAsync(GetHardenedImagesArgs args, InvokeOptions? opts = null)
public static Output<GetHardenedImagesResult> Invoke(GetHardenedImagesInvokeArgs args, InvokeOptions? opts = null)
public static Output<GetHardenedImagesResult> Invoke(GetHardenedImagesInvokeArgs args, InvokeOutputOptions opts)
}public static CompletableFuture<GetHardenedImagesResult> getHardenedImages(GetHardenedImagesArgs args, InvokeOptions options)
public static Output<GetHardenedImagesResult> getHardenedImages(GetHardenedImagesArgs args, InvokeOptions options)
public static Output<GetHardenedImagesResult> getHardenedImages(GetHardenedImagesArgs args, InvokeOutputOptions options)
fn::invoke:
function: spectrocloud:index/getHardenedImages:getHardenedImages
arguments:
# arguments dictionarydata "spectrocloud_get_hardened_images" "name" {
# arguments
}The following arguments are supported:
- Cluster
Name string - Restrict the report to clusters whose name matches this value.
- Id string
- The ID of this resource.
- Project
Uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- Cluster
Name string - Restrict the report to clusters whose name matches this value.
- Id string
- The ID of this resource.
- Project
Uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- cluster_
name string - Restrict the report to clusters whose name matches this value.
- id string
- The ID of this resource.
- project_
uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- cluster
Name String - Restrict the report to clusters whose name matches this value.
- id String
- The ID of this resource.
- project
Uid String - Restrict the report to clusters that belong to the project with this unique identifier.
- cluster
Name string - Restrict the report to clusters whose name matches this value.
- id string
- The ID of this resource.
- project
Uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- cluster_
name str - Restrict the report to clusters whose name matches this value.
- id str
- The ID of this resource.
- project_
uid str - Restrict the report to clusters that belong to the project with this unique identifier.
- cluster
Name String - Restrict the report to clusters whose name matches this value.
- id String
- The ID of this resource.
- project
Uid String - Restrict the report to clusters that belong to the project with this unique identifier.
getHardenedImages Result
The following output properties are available:
- Clusters
List<Get
Hardened Images Cluster> - One entry per cluster the filters matched, reporting how far the hardened image pull secret rollout has progressed on that cluster. Clusters that are currently opted out are listed too.
- Excluded
Cluster List<string>Uids - Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
- Failed
Clusters doubleCount - Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the
clustersattribute for the per-cluster failure reason. - Id string
- The ID of this resource.
- State string
- Aggregated rollout progress for the tenant. Palette reports
Completedonce every enrolled cluster holds the secret,InProgresswhile the rollout is running, andFailedwhen at least one cluster could not be updated. - Cluster
Name string - Restrict the report to clusters whose name matches this value.
- Project
Uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- Clusters
[]Get
Hardened Images Cluster - One entry per cluster the filters matched, reporting how far the hardened image pull secret rollout has progressed on that cluster. Clusters that are currently opted out are listed too.
- Excluded
Cluster []stringUids - Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
- Failed
Clusters float64Count - Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the
clustersattribute for the per-cluster failure reason. - Id string
- The ID of this resource.
- State string
- Aggregated rollout progress for the tenant. Palette reports
Completedonce every enrolled cluster holds the secret,InProgresswhile the rollout is running, andFailedwhen at least one cluster could not be updated. - Cluster
Name string - Restrict the report to clusters whose name matches this value.
- Project
Uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- clusters list(object)
- One entry per cluster the filters matched, reporting how far the hardened image pull secret rollout has progressed on that cluster. Clusters that are currently opted out are listed too.
- excluded_
cluster_ list(string)uids - Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
- failed_
clusters_ numbercount - Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the
clustersattribute for the per-cluster failure reason. - id string
- The ID of this resource.
- state string
- Aggregated rollout progress for the tenant. Palette reports
Completedonce every enrolled cluster holds the secret,InProgresswhile the rollout is running, andFailedwhen at least one cluster could not be updated. - cluster_
name string - Restrict the report to clusters whose name matches this value.
- project_
uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- clusters
List<Get
Hardened Images Cluster> - One entry per cluster the filters matched, reporting how far the hardened image pull secret rollout has progressed on that cluster. Clusters that are currently opted out are listed too.
- excluded
Cluster List<String>Uids - Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
- failed
Clusters DoubleCount - Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the
clustersattribute for the per-cluster failure reason. - id String
- The ID of this resource.
- state String
- Aggregated rollout progress for the tenant. Palette reports
Completedonce every enrolled cluster holds the secret,InProgresswhile the rollout is running, andFailedwhen at least one cluster could not be updated. - cluster
Name String - Restrict the report to clusters whose name matches this value.
- project
Uid String - Restrict the report to clusters that belong to the project with this unique identifier.
- clusters
Get
Hardened Images Cluster[] - One entry per cluster the filters matched, reporting how far the hardened image pull secret rollout has progressed on that cluster. Clusters that are currently opted out are listed too.
- excluded
Cluster string[]Uids - Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
- failed
Clusters numberCount - Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the
clustersattribute for the per-cluster failure reason. - id string
- The ID of this resource.
- state string
- Aggregated rollout progress for the tenant. Palette reports
Completedonce every enrolled cluster holds the secret,InProgresswhile the rollout is running, andFailedwhen at least one cluster could not be updated. - cluster
Name string - Restrict the report to clusters whose name matches this value.
- project
Uid string - Restrict the report to clusters that belong to the project with this unique identifier.
- clusters
Sequence[Get
Hardened Images Cluster] - One entry per cluster the filters matched, reporting how far the hardened image pull secret rollout has progressed on that cluster. Clusters that are currently opted out are listed too.
- excluded_
cluster_ Sequence[str]uids - Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
- failed_
clusters_ floatcount - Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the
clustersattribute for the per-cluster failure reason. - id str
- The ID of this resource.
- state str
- Aggregated rollout progress for the tenant. Palette reports
Completedonce every enrolled cluster holds the secret,InProgresswhile the rollout is running, andFailedwhen at least one cluster could not be updated. - cluster_
name str - Restrict the report to clusters whose name matches this value.
- project_
uid str - Restrict the report to clusters that belong to the project with this unique identifier.
- clusters List<Property Map>
- One entry per cluster the filters matched, reporting how far the hardened image pull secret rollout has progressed on that cluster. Clusters that are currently opted out are listed too.
- excluded
Cluster List<String>Uids - Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
- failed
Clusters NumberCount - Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the
clustersattribute for the per-cluster failure reason. - id String
- The ID of this resource.
- state String
- Aggregated rollout progress for the tenant. Palette reports
Completedonce every enrolled cluster holds the secret,InProgresswhile the rollout is running, andFailedwhen at least one cluster could not be updated. - cluster
Name String - Restrict the report to clusters whose name matches this value.
- project
Uid String - Restrict the report to clusters that belong to the project with this unique identifier.
Supporting Types
GetHardenedImagesCluster
- Exclude bool
- Message string
- Name string
- Project
Name string - Project
Uid string - Reason string
- State string
- Uid string
- Exclude bool
- Message string
- Name string
- Project
Name string - Project
Uid string - Reason string
- State string
- Uid string
- exclude bool
- message string
- name string
- project_
name string - project_
uid string - reason string
- state string
- uid string
- exclude Boolean
- message String
- name String
- project
Name String - project
Uid String - reason String
- state String
- uid String
- exclude boolean
- message string
- name string
- project
Name string - project
Uid string - reason string
- state string
- uid string
- exclude bool
- message str
- name str
- project_
name str - project_
uid str - reason str
- state str
- uid str
- exclude Boolean
- message String
- name String
- project
Name String - project
Uid String - reason String
- state String
- uid String
Package Details
- Repository
- spectrocloud spectrocloud/terraform-provider-spectrocloud
- License
- Notes
- This Pulumi package is based on the
spectrocloudTerraform Provider.
published on Wednesday, Nov 4, 2026 by spectrocloud