1. Registry
  2. Packages
  3. Spectrocloud Provider
  4. API Docs
  5. getHardenedImages
Viewing docs for spectrocloud 0.30.5
published on Wednesday, Nov 4, 2026 by spectrocloud
spectrocloud
Viewing docs for spectrocloud 0.30.5
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 dictionary
    data "spectrocloud_get_hardened_images" "name" {
        # arguments
    }

    The following arguments are supported:

    ClusterName string
    Restrict the report to clusters whose name matches this value.
    Id string
    The ID of this resource.
    ProjectUid string
    Restrict the report to clusters that belong to the project with this unique identifier.
    ClusterName string
    Restrict the report to clusters whose name matches this value.
    Id string
    The ID of this resource.
    ProjectUid 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.
    clusterName String
    Restrict the report to clusters whose name matches this value.
    id String
    The ID of this resource.
    projectUid String
    Restrict the report to clusters that belong to the project with this unique identifier.
    clusterName string
    Restrict the report to clusters whose name matches this value.
    id string
    The ID of this resource.
    projectUid 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.
    clusterName String
    Restrict the report to clusters whose name matches this value.
    id String
    The ID of this resource.
    projectUid 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<GetHardenedImagesCluster>
    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.
    ExcludedClusterUids List<string>
    Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
    FailedClustersCount double
    Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the clusters attribute for the per-cluster failure reason.
    Id string
    The ID of this resource.
    State string
    Aggregated rollout progress for the tenant. Palette reports Completed once every enrolled cluster holds the secret, InProgress while the rollout is running, and Failed when at least one cluster could not be updated.
    ClusterName string
    Restrict the report to clusters whose name matches this value.
    ProjectUid string
    Restrict the report to clusters that belong to the project with this unique identifier.
    Clusters []GetHardenedImagesCluster
    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.
    ExcludedClusterUids []string
    Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
    FailedClustersCount float64
    Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the clusters attribute for the per-cluster failure reason.
    Id string
    The ID of this resource.
    State string
    Aggregated rollout progress for the tenant. Palette reports Completed once every enrolled cluster holds the secret, InProgress while the rollout is running, and Failed when at least one cluster could not be updated.
    ClusterName string
    Restrict the report to clusters whose name matches this value.
    ProjectUid 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_uids list(string)
    Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
    failed_clusters_count number
    Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the clusters attribute for the per-cluster failure reason.
    id string
    The ID of this resource.
    state string
    Aggregated rollout progress for the tenant. Palette reports Completed once every enrolled cluster holds the secret, InProgress while the rollout is running, and Failed when 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<GetHardenedImagesCluster>
    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.
    excludedClusterUids List<String>
    Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
    failedClustersCount Double
    Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the clusters attribute for the per-cluster failure reason.
    id String
    The ID of this resource.
    state String
    Aggregated rollout progress for the tenant. Palette reports Completed once every enrolled cluster holds the secret, InProgress while the rollout is running, and Failed when at least one cluster could not be updated.
    clusterName String
    Restrict the report to clusters whose name matches this value.
    projectUid String
    Restrict the report to clusters that belong to the project with this unique identifier.
    clusters GetHardenedImagesCluster[]
    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.
    excludedClusterUids string[]
    Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
    failedClustersCount number
    Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the clusters attribute for the per-cluster failure reason.
    id string
    The ID of this resource.
    state string
    Aggregated rollout progress for the tenant. Palette reports Completed once every enrolled cluster holds the secret, InProgress while the rollout is running, and Failed when at least one cluster could not be updated.
    clusterName string
    Restrict the report to clusters whose name matches this value.
    projectUid string
    Restrict the report to clusters that belong to the project with this unique identifier.
    clusters Sequence[GetHardenedImagesCluster]
    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_uids Sequence[str]
    Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
    failed_clusters_count float
    Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the clusters attribute for the per-cluster failure reason.
    id str
    The ID of this resource.
    state str
    Aggregated rollout progress for the tenant. Palette reports Completed once every enrolled cluster holds the secret, InProgress while the rollout is running, and Failed when 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.
    excludedClusterUids List<String>
    Unique identifiers of the clusters that are currently opted out of hardened image pull secret propagation.
    failedClustersCount Number
    Number of enrolled clusters that Palette could not deliver the image pull secret to. Inspect the clusters attribute for the per-cluster failure reason.
    id String
    The ID of this resource.
    state String
    Aggregated rollout progress for the tenant. Palette reports Completed once every enrolled cluster holds the secret, InProgress while the rollout is running, and Failed when at least one cluster could not be updated.
    clusterName String
    Restrict the report to clusters whose name matches this value.
    projectUid String
    Restrict the report to clusters that belong to the project with this unique identifier.

    Supporting Types

    GetHardenedImagesCluster

    Exclude bool
    Message string
    Name string
    ProjectName string
    ProjectUid string
    Reason string
    State string
    Uid string
    Exclude bool
    Message string
    Name string
    ProjectName string
    ProjectUid 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
    projectName String
    projectUid String
    reason String
    state String
    uid String
    exclude boolean
    message string
    name string
    projectName string
    projectUid string
    reason string
    state string
    uid string
    exclude Boolean
    message String
    name String
    projectName String
    projectUid String
    reason String
    state String
    uid String

    Package Details

    Repository
    spectrocloud spectrocloud/terraform-provider-spectrocloud
    License
    Notes
    This Pulumi package is based on the spectrocloud Terraform Provider.
    spectrocloud
    Viewing docs for spectrocloud 0.30.5
    published on Wednesday, Nov 4, 2026 by spectrocloud

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial