1. Packages
  2. Volcengine
  3. API Docs
  4. vmp
  5. getRuleFiles
Volcengine v0.0.34 published on Wednesday, Jul 2, 2025 by Volcengine

volcengine.vmp.getRuleFiles

Explore with Pulumi AI

volcengine logo
Volcengine v0.0.34 published on Wednesday, Jul 2, 2025 by Volcengine

    Use this data source to query detailed information of vmp rule files

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as volcengine from "@pulumi/volcengine";
    import * as volcengine from "@volcengine/pulumi";
    
    const fooWorkspace = new volcengine.vmp.Workspace("fooWorkspace", {
        instanceTypeId: "vmp.standard.15d",
        deleteProtectionEnabled: false,
        description: "acc-test-1",
        username: "admin123",
        password: "*********",
    });
    const fooRuleFile = new volcengine.vmp.RuleFile("fooRuleFile", {
        workspaceId: fooWorkspace.id,
        description: "acc-test-1",
        content: `groups:
        - interval: 10s
          name: recording_rules
          rules:
            - expr: sum(irate(container_cpu_usage_seconds_total{image!=""}[5m])) by (pod) *100
              labels:
                team: operations
              record: pod:cpu:useage
    `,
    });
    const fooRuleFiles = volcengine.vmp.getRuleFilesOutput({
        ids: [fooRuleFile.ruleFileId],
        workspaceId: fooWorkspace.id,
    });
    
    import pulumi
    import pulumi_volcengine as volcengine
    
    foo_workspace = volcengine.vmp.Workspace("fooWorkspace",
        instance_type_id="vmp.standard.15d",
        delete_protection_enabled=False,
        description="acc-test-1",
        username="admin123",
        password="*********")
    foo_rule_file = volcengine.vmp.RuleFile("fooRuleFile",
        workspace_id=foo_workspace.id,
        description="acc-test-1",
        content="""groups:
        - interval: 10s
          name: recording_rules
          rules:
            - expr: sum(irate(container_cpu_usage_seconds_total{image!=""}[5m])) by (pod) *100
              labels:
                team: operations
              record: pod:cpu:useage
    """)
    foo_rule_files = volcengine.vmp.get_rule_files_output(ids=[foo_rule_file.rule_file_id],
        workspace_id=foo_workspace.id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/vmp"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		fooWorkspace, err := vmp.NewWorkspace(ctx, "fooWorkspace", &vmp.WorkspaceArgs{
    			InstanceTypeId:          pulumi.String("vmp.standard.15d"),
    			DeleteProtectionEnabled: pulumi.Bool(false),
    			Description:             pulumi.String("acc-test-1"),
    			Username:                pulumi.String("admin123"),
    			Password:                pulumi.String("*********"),
    		})
    		if err != nil {
    			return err
    		}
    		fooRuleFile, err := vmp.NewRuleFile(ctx, "fooRuleFile", &vmp.RuleFileArgs{
    			WorkspaceId: fooWorkspace.ID(),
    			Description: pulumi.String("acc-test-1"),
    			Content: pulumi.String(`groups:
        - interval: 10s
          name: recording_rules
          rules:
            - expr: sum(irate(container_cpu_usage_seconds_total{image!=""}[5m])) by (pod) *100
              labels:
                team: operations
              record: pod:cpu:useage
    `),
    		})
    		if err != nil {
    			return err
    		}
    		_ = vmp.GetRuleFilesOutput(ctx, vmp.GetRuleFilesOutputArgs{
    			Ids: pulumi.StringArray{
    				fooRuleFile.RuleFileId,
    			},
    			WorkspaceId: fooWorkspace.ID(),
    		}, nil)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Volcengine = Pulumi.Volcengine;
    
    return await Deployment.RunAsync(() => 
    {
        var fooWorkspace = new Volcengine.Vmp.Workspace("fooWorkspace", new()
        {
            InstanceTypeId = "vmp.standard.15d",
            DeleteProtectionEnabled = false,
            Description = "acc-test-1",
            Username = "admin123",
            Password = "*********",
        });
    
        var fooRuleFile = new Volcengine.Vmp.RuleFile("fooRuleFile", new()
        {
            WorkspaceId = fooWorkspace.Id,
            Description = "acc-test-1",
            Content = @"groups:
        - interval: 10s
          name: recording_rules
          rules:
            - expr: sum(irate(container_cpu_usage_seconds_total{image!=""""}[5m])) by (pod) *100
              labels:
                team: operations
              record: pod:cpu:useage
    ",
        });
    
        var fooRuleFiles = Volcengine.Vmp.GetRuleFiles.Invoke(new()
        {
            Ids = new[]
            {
                fooRuleFile.RuleFileId,
            },
            WorkspaceId = fooWorkspace.Id,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.volcengine.vmp.Workspace;
    import com.pulumi.volcengine.vmp.WorkspaceArgs;
    import com.pulumi.volcengine.vmp.RuleFile;
    import com.pulumi.volcengine.vmp.RuleFileArgs;
    import com.pulumi.volcengine.vmp.VmpFunctions;
    import com.pulumi.volcengine.vmp.inputs.GetRuleFilesArgs;
    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) {
            var fooWorkspace = new Workspace("fooWorkspace", WorkspaceArgs.builder()        
                .instanceTypeId("vmp.standard.15d")
                .deleteProtectionEnabled(false)
                .description("acc-test-1")
                .username("admin123")
                .password("*********")
                .build());
    
            var fooRuleFile = new RuleFile("fooRuleFile", RuleFileArgs.builder()        
                .workspaceId(fooWorkspace.id())
                .description("acc-test-1")
                .content("""
    groups:
        - interval: 10s
          name: recording_rules
          rules:
            - expr: sum(irate(container_cpu_usage_seconds_total{image!=""}[5m])) by (pod) *100
              labels:
                team: operations
              record: pod:cpu:useage
                """)
                .build());
    
            final var fooRuleFiles = VmpFunctions.getRuleFiles(GetRuleFilesArgs.builder()
                .ids(fooRuleFile.ruleFileId())
                .workspaceId(fooWorkspace.id())
                .build());
    
        }
    }
    
    resources:
      fooWorkspace:
        type: volcengine:vmp:Workspace
        properties:
          instanceTypeId: vmp.standard.15d
          deleteProtectionEnabled: false
          description: acc-test-1
          username: admin123
          password: '*********'
      fooRuleFile:
        type: volcengine:vmp:RuleFile
        properties:
          workspaceId: ${fooWorkspace.id}
          description: acc-test-1
          content: |
            groups:
                - interval: 10s
                  name: recording_rules
                  rules:
                    - expr: sum(irate(container_cpu_usage_seconds_total{image!=""}[5m])) by (pod) *100
                      labels:
                        team: operations
                      record: pod:cpu:useage        
    variables:
      fooRuleFiles:
        fn::invoke:
          Function: volcengine:vmp:getRuleFiles
          Arguments:
            ids:
              - ${fooRuleFile.ruleFileId}
            workspaceId: ${fooWorkspace.id}
    

    Using getRuleFiles

    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 getRuleFiles(args: GetRuleFilesArgs, opts?: InvokeOptions): Promise<GetRuleFilesResult>
    function getRuleFilesOutput(args: GetRuleFilesOutputArgs, opts?: InvokeOptions): Output<GetRuleFilesResult>
    def get_rule_files(ids: Optional[Sequence[str]] = None,
                       name: Optional[str] = None,
                       output_file: Optional[str] = None,
                       status: Optional[str] = None,
                       workspace_id: Optional[str] = None,
                       opts: Optional[InvokeOptions] = None) -> GetRuleFilesResult
    def get_rule_files_output(ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                       name: Optional[pulumi.Input[str]] = None,
                       output_file: Optional[pulumi.Input[str]] = None,
                       status: Optional[pulumi.Input[str]] = None,
                       workspace_id: Optional[pulumi.Input[str]] = None,
                       opts: Optional[InvokeOptions] = None) -> Output[GetRuleFilesResult]
    func GetRuleFiles(ctx *Context, args *GetRuleFilesArgs, opts ...InvokeOption) (*GetRuleFilesResult, error)
    func GetRuleFilesOutput(ctx *Context, args *GetRuleFilesOutputArgs, opts ...InvokeOption) GetRuleFilesResultOutput

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

    public static class GetRuleFiles 
    {
        public static Task<GetRuleFilesResult> InvokeAsync(GetRuleFilesArgs args, InvokeOptions? opts = null)
        public static Output<GetRuleFilesResult> Invoke(GetRuleFilesInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetRuleFilesResult> getRuleFiles(GetRuleFilesArgs args, InvokeOptions options)
    public static Output<GetRuleFilesResult> getRuleFiles(GetRuleFilesArgs args, InvokeOptions options)
    
    fn::invoke:
      function: volcengine:vmp/getRuleFiles:getRuleFiles
      arguments:
        # arguments dictionary

    The following arguments are supported:

    WorkspaceId string
    The id of workspace.
    Ids List<string>
    A list of Rule File IDs.
    Name string
    The name of rule file.
    OutputFile string
    File name where to save data source results.
    Status string
    The status of rule file.
    WorkspaceId string
    The id of workspace.
    Ids []string
    A list of Rule File IDs.
    Name string
    The name of rule file.
    OutputFile string
    File name where to save data source results.
    Status string
    The status of rule file.
    workspaceId String
    The id of workspace.
    ids List<String>
    A list of Rule File IDs.
    name String
    The name of rule file.
    outputFile String
    File name where to save data source results.
    status String
    The status of rule file.
    workspaceId string
    The id of workspace.
    ids string[]
    A list of Rule File IDs.
    name string
    The name of rule file.
    outputFile string
    File name where to save data source results.
    status string
    The status of rule file.
    workspace_id str
    The id of workspace.
    ids Sequence[str]
    A list of Rule File IDs.
    name str
    The name of rule file.
    output_file str
    File name where to save data source results.
    status str
    The status of rule file.
    workspaceId String
    The id of workspace.
    ids List<String>
    A list of Rule File IDs.
    name String
    The name of rule file.
    outputFile String
    File name where to save data source results.
    status String
    The status of rule file.

    getRuleFiles Result

    The following output properties are available:

    Files List<GetRuleFilesFile>
    The collection of query.
    Id string
    The provider-assigned unique ID for this managed resource.
    TotalCount int
    The total count of query.
    WorkspaceId string
    Ids List<string>
    Name string
    The name of rule file.
    OutputFile string
    Status string
    The status of rule file.
    Files []GetRuleFilesFile
    The collection of query.
    Id string
    The provider-assigned unique ID for this managed resource.
    TotalCount int
    The total count of query.
    WorkspaceId string
    Ids []string
    Name string
    The name of rule file.
    OutputFile string
    Status string
    The status of rule file.
    files List<GetRuleFilesFile>
    The collection of query.
    id String
    The provider-assigned unique ID for this managed resource.
    totalCount Integer
    The total count of query.
    workspaceId String
    ids List<String>
    name String
    The name of rule file.
    outputFile String
    status String
    The status of rule file.
    files GetRuleFilesFile[]
    The collection of query.
    id string
    The provider-assigned unique ID for this managed resource.
    totalCount number
    The total count of query.
    workspaceId string
    ids string[]
    name string
    The name of rule file.
    outputFile string
    status string
    The status of rule file.
    files Sequence[GetRuleFilesFile]
    The collection of query.
    id str
    The provider-assigned unique ID for this managed resource.
    total_count int
    The total count of query.
    workspace_id str
    ids Sequence[str]
    name str
    The name of rule file.
    output_file str
    status str
    The status of rule file.
    files List<Property Map>
    The collection of query.
    id String
    The provider-assigned unique ID for this managed resource.
    totalCount Number
    The total count of query.
    workspaceId String
    ids List<String>
    name String
    The name of rule file.
    outputFile String
    status String
    The status of rule file.

    Supporting Types

    GetRuleFilesFile

    Content string
    The content of rule file.
    CreateTime string
    The create time of rule file.
    Description string
    The description of rule file.
    Id string
    The ID of rule file.
    LastUpdateTime string
    The last update time of rule file.
    Name string
    The name of rule file.
    RuleCount int
    The rule count number of rule file.
    Status string
    The status of rule file.
    Content string
    The content of rule file.
    CreateTime string
    The create time of rule file.
    Description string
    The description of rule file.
    Id string
    The ID of rule file.
    LastUpdateTime string
    The last update time of rule file.
    Name string
    The name of rule file.
    RuleCount int
    The rule count number of rule file.
    Status string
    The status of rule file.
    content String
    The content of rule file.
    createTime String
    The create time of rule file.
    description String
    The description of rule file.
    id String
    The ID of rule file.
    lastUpdateTime String
    The last update time of rule file.
    name String
    The name of rule file.
    ruleCount Integer
    The rule count number of rule file.
    status String
    The status of rule file.
    content string
    The content of rule file.
    createTime string
    The create time of rule file.
    description string
    The description of rule file.
    id string
    The ID of rule file.
    lastUpdateTime string
    The last update time of rule file.
    name string
    The name of rule file.
    ruleCount number
    The rule count number of rule file.
    status string
    The status of rule file.
    content str
    The content of rule file.
    create_time str
    The create time of rule file.
    description str
    The description of rule file.
    id str
    The ID of rule file.
    last_update_time str
    The last update time of rule file.
    name str
    The name of rule file.
    rule_count int
    The rule count number of rule file.
    status str
    The status of rule file.
    content String
    The content of rule file.
    createTime String
    The create time of rule file.
    description String
    The description of rule file.
    id String
    The ID of rule file.
    lastUpdateTime String
    The last update time of rule file.
    name String
    The name of rule file.
    ruleCount Number
    The rule count number of rule file.
    status String
    The status of rule file.

    Package Details

    Repository
    volcengine volcengine/pulumi-volcengine
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the volcengine Terraform Provider.
    volcengine logo
    Volcengine v0.0.34 published on Wednesday, Jul 2, 2025 by Volcengine