1. Packages
  2. Linode
  3. API Docs
  4. getImages
Linode v4.23.0 published on Thursday, Jul 18, 2024 by Pulumi

linode.getImages

Explore with Pulumi AI

linode logo
Linode v4.23.0 published on Thursday, Jul 18, 2024 by Pulumi

    Provides information about Linode images that match a set of filters. For more information, see the Linode APIv4 docs.

    Example Usage

    Get information about all Linode images with a certain label and visibility:

    import * as pulumi from "@pulumi/pulumi";
    import * as linode from "@pulumi/linode";
    
    const specific-images = linode.getImages({
        filters: [
            {
                name: "label",
                values: ["Debian 12"],
            },
            {
                name: "is_public",
                values: ["true"],
            },
        ],
    });
    export const imageId = specific_images.then(specific_images => specific_images.images?.[0]?.id);
    
    import pulumi
    import pulumi_linode as linode
    
    specific_images = linode.get_images(filters=[
        linode.GetImagesFilterArgs(
            name="label",
            values=["Debian 12"],
        ),
        linode.GetImagesFilterArgs(
            name="is_public",
            values=["true"],
        ),
    ])
    pulumi.export("imageId", specific_images.images[0].id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-linode/sdk/v4/go/linode"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		specific_images, err := linode.GetImages(ctx, &linode.GetImagesArgs{
    			Filters: []linode.GetImagesFilter{
    				{
    					Name: "label",
    					Values: []string{
    						"Debian 12",
    					},
    				},
    				{
    					Name: "is_public",
    					Values: []string{
    						"true",
    					},
    				},
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("imageId", specific_images.Images[0].Id)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Linode = Pulumi.Linode;
    
    return await Deployment.RunAsync(() => 
    {
        var specific_images = Linode.GetImages.Invoke(new()
        {
            Filters = new[]
            {
                new Linode.Inputs.GetImagesFilterInputArgs
                {
                    Name = "label",
                    Values = new[]
                    {
                        "Debian 12",
                    },
                },
                new Linode.Inputs.GetImagesFilterInputArgs
                {
                    Name = "is_public",
                    Values = new[]
                    {
                        "true",
                    },
                },
            },
        });
    
        return new Dictionary<string, object?>
        {
            ["imageId"] = specific_images.Apply(specific_images => specific_images.Apply(getImagesResult => getImagesResult.Images[0]?.Id)),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.linode.LinodeFunctions;
    import com.pulumi.linode.inputs.GetImagesArgs;
    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 specific-images = LinodeFunctions.getImages(GetImagesArgs.builder()
                .filters(            
                    GetImagesFilterArgs.builder()
                        .name("label")
                        .values("Debian 12")
                        .build(),
                    GetImagesFilterArgs.builder()
                        .name("is_public")
                        .values("true")
                        .build())
                .build());
    
            ctx.export("imageId", specific_images.images()[0].id());
        }
    }
    
    variables:
      specific-images:
        fn::invoke:
          Function: linode:getImages
          Arguments:
            filters:
              - name: label
                values:
                  - Debian 12
              - name: is_public
                values:
                  - 'true'
    outputs:
      imageId: ${["specific-images"].images[0].id}
    

    Get information about all Linode images associated with the current token:

    import * as pulumi from "@pulumi/pulumi";
    import * as linode from "@pulumi/linode";
    
    const all-images = linode.getImages({});
    export const imageIds = all_images.then(all_images => all_images.images.map(__item => __item.id));
    
    import pulumi
    import pulumi_linode as linode
    
    all_images = linode.get_images()
    pulumi.export("imageIds", [__item.id for __item in all_images.images])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-linode/sdk/v4/go/linode"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		all_images, err := linode.GetImages(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		var splat0 []*string
    		for _, val0 := range all_images.Images {
    			splat0 = append(splat0, val0.Id)
    		}
    		ctx.Export("imageIds", splat0)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Linode = Pulumi.Linode;
    
    return await Deployment.RunAsync(() => 
    {
        var all_images = Linode.GetImages.Invoke();
    
        return new Dictionary<string, object?>
        {
            ["imageIds"] = all_images.Apply(all_images => all_images.Apply(getImagesResult => getImagesResult.Images).Select(__item => __item.Id).ToList()),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.linode.LinodeFunctions;
    import com.pulumi.linode.inputs.GetImagesArgs;
    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 all-images = LinodeFunctions.getImages();
    
            ctx.export("imageIds", all_images.images().stream().map(element -> element.id()).collect(toList()));
        }
    }
    
    Coming soon!
    

    Filterable Fields

    • created_by

    • deprecated

    • description

    • id

    • is_public

    • label

    • size

    • status

    • vendor

    Using getImages

    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 getImages(args: GetImagesArgs, opts?: InvokeOptions): Promise<GetImagesResult>
    function getImagesOutput(args: GetImagesOutputArgs, opts?: InvokeOptions): Output<GetImagesResult>
    def get_images(filters: Optional[Sequence[GetImagesFilter]] = None,
                   images: Optional[Sequence[GetImagesImage]] = None,
                   latest: Optional[bool] = None,
                   order: Optional[str] = None,
                   order_by: Optional[str] = None,
                   opts: Optional[InvokeOptions] = None) -> GetImagesResult
    def get_images_output(filters: Optional[pulumi.Input[Sequence[pulumi.Input[GetImagesFilterArgs]]]] = None,
                   images: Optional[pulumi.Input[Sequence[pulumi.Input[GetImagesImageArgs]]]] = None,
                   latest: Optional[pulumi.Input[bool]] = None,
                   order: Optional[pulumi.Input[str]] = None,
                   order_by: Optional[pulumi.Input[str]] = None,
                   opts: Optional[InvokeOptions] = None) -> Output[GetImagesResult]
    func GetImages(ctx *Context, args *GetImagesArgs, opts ...InvokeOption) (*GetImagesResult, error)
    func GetImagesOutput(ctx *Context, args *GetImagesOutputArgs, opts ...InvokeOption) GetImagesResultOutput

    > Note: This function is named GetImages in the Go SDK.

    public static class GetImages 
    {
        public static Task<GetImagesResult> InvokeAsync(GetImagesArgs args, InvokeOptions? opts = null)
        public static Output<GetImagesResult> Invoke(GetImagesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetImagesResult> getImages(GetImagesArgs args, InvokeOptions options)
    // Output-based functions aren't available in Java yet
    
    fn::invoke:
      function: linode:index/getImages:getImages
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Filters List<GetImagesFilter>
    Images List<GetImagesImage>
    Latest bool
    If true, only the latest image will be returned. Images without a valid created field are not included in the result.

    • filter - (Optional) A set of filters used to select Linode images that meet certain requirements.
    Order string
    The order in which results should be returned. (asc, desc; default asc)
    OrderBy string
    The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
    Filters []GetImagesFilter
    Images []GetImagesImage
    Latest bool
    If true, only the latest image will be returned. Images without a valid created field are not included in the result.

    • filter - (Optional) A set of filters used to select Linode images that meet certain requirements.
    Order string
    The order in which results should be returned. (asc, desc; default asc)
    OrderBy string
    The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
    filters List<GetImagesFilter>
    images List<GetImagesImage>
    latest Boolean
    If true, only the latest image will be returned. Images without a valid created field are not included in the result.

    • filter - (Optional) A set of filters used to select Linode images that meet certain requirements.
    order String
    The order in which results should be returned. (asc, desc; default asc)
    orderBy String
    The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
    filters GetImagesFilter[]
    images GetImagesImage[]
    latest boolean
    If true, only the latest image will be returned. Images without a valid created field are not included in the result.

    • filter - (Optional) A set of filters used to select Linode images that meet certain requirements.
    order string
    The order in which results should be returned. (asc, desc; default asc)
    orderBy string
    The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
    filters Sequence[GetImagesFilter]
    images Sequence[GetImagesImage]
    latest bool
    If true, only the latest image will be returned. Images without a valid created field are not included in the result.

    • filter - (Optional) A set of filters used to select Linode images that meet certain requirements.
    order str
    The order in which results should be returned. (asc, desc; default asc)
    order_by str
    The attribute to order the results by. See the Filterable Fields section for a list of valid fields.
    filters List<Property Map>
    images List<Property Map>
    latest Boolean
    If true, only the latest image will be returned. Images without a valid created field are not included in the result.

    • filter - (Optional) A set of filters used to select Linode images that meet certain requirements.
    order String
    The order in which results should be returned. (asc, desc; default asc)
    orderBy String
    The attribute to order the results by. See the Filterable Fields section for a list of valid fields.

    getImages Result

    The following output properties are available:

    Id string
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    Filters List<GetImagesFilter>
    Images List<GetImagesImage>
    Latest bool
    Order string
    OrderBy string
    Id string
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    Filters []GetImagesFilter
    Images []GetImagesImage
    Latest bool
    Order string
    OrderBy string
    id String
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    filters List<GetImagesFilter>
    images List<GetImagesImage>
    latest Boolean
    order String
    orderBy String
    id string
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    filters GetImagesFilter[]
    images GetImagesImage[]
    latest boolean
    order string
    orderBy string
    id str
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    filters Sequence[GetImagesFilter]
    images Sequence[GetImagesImage]
    latest bool
    order str
    order_by str
    id String
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    filters List<Property Map>
    images List<Property Map>
    latest Boolean
    order String
    orderBy String

    Supporting Types

    GetImagesFilter

    Name string
    The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
    Values List<string>
    A list of values for the filter to allow. These values should all be in string form.
    MatchBy string
    The method to match the field by. (exact, regex, substring; default exact)
    Name string
    The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
    Values []string
    A list of values for the filter to allow. These values should all be in string form.
    MatchBy string
    The method to match the field by. (exact, regex, substring; default exact)
    name String
    The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
    values List<String>
    A list of values for the filter to allow. These values should all be in string form.
    matchBy String
    The method to match the field by. (exact, regex, substring; default exact)
    name string
    The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
    values string[]
    A list of values for the filter to allow. These values should all be in string form.
    matchBy string
    The method to match the field by. (exact, regex, substring; default exact)
    name str
    The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
    values Sequence[str]
    A list of values for the filter to allow. These values should all be in string form.
    match_by str
    The method to match the field by. (exact, regex, substring; default exact)
    name String
    The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
    values List<String>
    A list of values for the filter to allow. These values should all be in string form.
    matchBy String
    The method to match the field by. (exact, regex, substring; default exact)

    GetImagesImage

    Capabilities List<string>
    The capabilities of this Image.
    Created string
    When this Image was created.
    CreatedBy string
    The name of the User who created this Image, or "linode" for official Images.
    Deprecated bool
    Whether or not this Image is deprecated. Will only be true for deprecated public Images.
    Description string
    A detailed description of this Image.
    Expiry string
    Only Images created automatically (from a deleted Linode; type=automatic) will expire.
    Id string
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    IsPublic bool
    True if the Image is public.
    Label string
    A short description of the Image.
    Size int
    The minimum size this Image needs to deploy. Size is in MB. example: 2500
    Status string
    The current status of this image. (creating, pending_upload, available)
    Type string
    How the Image was created. Manual Images can be created at any time. "Automatic" Images are created automatically from a deleted Linode. (manual, automatic)
    Vendor string
    The upstream distribution vendor. None for private Images.
    Capabilities []string
    The capabilities of this Image.
    Created string
    When this Image was created.
    CreatedBy string
    The name of the User who created this Image, or "linode" for official Images.
    Deprecated bool
    Whether or not this Image is deprecated. Will only be true for deprecated public Images.
    Description string
    A detailed description of this Image.
    Expiry string
    Only Images created automatically (from a deleted Linode; type=automatic) will expire.
    Id string
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    IsPublic bool
    True if the Image is public.
    Label string
    A short description of the Image.
    Size int
    The minimum size this Image needs to deploy. Size is in MB. example: 2500
    Status string
    The current status of this image. (creating, pending_upload, available)
    Type string
    How the Image was created. Manual Images can be created at any time. "Automatic" Images are created automatically from a deleted Linode. (manual, automatic)
    Vendor string
    The upstream distribution vendor. None for private Images.
    capabilities List<String>
    The capabilities of this Image.
    created String
    When this Image was created.
    createdBy String
    The name of the User who created this Image, or "linode" for official Images.
    deprecated Boolean
    Whether or not this Image is deprecated. Will only be true for deprecated public Images.
    description String
    A detailed description of this Image.
    expiry String
    Only Images created automatically (from a deleted Linode; type=automatic) will expire.
    id String
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    isPublic Boolean
    True if the Image is public.
    label String
    A short description of the Image.
    size Integer
    The minimum size this Image needs to deploy. Size is in MB. example: 2500
    status String
    The current status of this image. (creating, pending_upload, available)
    type String
    How the Image was created. Manual Images can be created at any time. "Automatic" Images are created automatically from a deleted Linode. (manual, automatic)
    vendor String
    The upstream distribution vendor. None for private Images.
    capabilities string[]
    The capabilities of this Image.
    created string
    When this Image was created.
    createdBy string
    The name of the User who created this Image, or "linode" for official Images.
    deprecated boolean
    Whether or not this Image is deprecated. Will only be true for deprecated public Images.
    description string
    A detailed description of this Image.
    expiry string
    Only Images created automatically (from a deleted Linode; type=automatic) will expire.
    id string
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    isPublic boolean
    True if the Image is public.
    label string
    A short description of the Image.
    size number
    The minimum size this Image needs to deploy. Size is in MB. example: 2500
    status string
    The current status of this image. (creating, pending_upload, available)
    type string
    How the Image was created. Manual Images can be created at any time. "Automatic" Images are created automatically from a deleted Linode. (manual, automatic)
    vendor string
    The upstream distribution vendor. None for private Images.
    capabilities Sequence[str]
    The capabilities of this Image.
    created str
    When this Image was created.
    created_by str
    The name of the User who created this Image, or "linode" for official Images.
    deprecated bool
    Whether or not this Image is deprecated. Will only be true for deprecated public Images.
    description str
    A detailed description of this Image.
    expiry str
    Only Images created automatically (from a deleted Linode; type=automatic) will expire.
    id str
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    is_public bool
    True if the Image is public.
    label str
    A short description of the Image.
    size int
    The minimum size this Image needs to deploy. Size is in MB. example: 2500
    status str
    The current status of this image. (creating, pending_upload, available)
    type str
    How the Image was created. Manual Images can be created at any time. "Automatic" Images are created automatically from a deleted Linode. (manual, automatic)
    vendor str
    The upstream distribution vendor. None for private Images.
    capabilities List<String>
    The capabilities of this Image.
    created String
    When this Image was created.
    createdBy String
    The name of the User who created this Image, or "linode" for official Images.
    deprecated Boolean
    Whether or not this Image is deprecated. Will only be true for deprecated public Images.
    description String
    A detailed description of this Image.
    expiry String
    Only Images created automatically (from a deleted Linode; type=automatic) will expire.
    id String
    The unique ID of this Image. The ID of private images begin with private/ followed by the numeric identifier of the private image, for example private/12345.
    isPublic Boolean
    True if the Image is public.
    label String
    A short description of the Image.
    size Number
    The minimum size this Image needs to deploy. Size is in MB. example: 2500
    status String
    The current status of this image. (creating, pending_upload, available)
    type String
    How the Image was created. Manual Images can be created at any time. "Automatic" Images are created automatically from a deleted Linode. (manual, automatic)
    vendor String
    The upstream distribution vendor. None for private Images.

    Package Details

    Repository
    Linode pulumi/pulumi-linode
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the linode Terraform Provider.
    linode logo
    Linode v4.23.0 published on Thursday, Jul 18, 2024 by Pulumi