- release_tracks: [ALPHA] help_text: brief: Test a Security Health Analytics custom module. description: Test a Security Health Analytics custom module. examples: | To test a Security Health Analytics custom module with ID `123456` for organization `123`, run: $ {command} 123456 \ --organization=organizations/123 \ --display-name="test_display_name" \ --custom-config-from-file=/tmp/custom_config.yaml \ --test-data-from-file=/tmp/test_data.yaml To test a Security Health Analytics custom module with ID `123456` for folder `456`, run: $ {command} 123456 \ --folder=folders/456 \ --display-name="test_display_name" \ --custom-config-from-file=/tmp/custom_config.yaml \ --test-data-from-file=/tmp/test_data.yaml To test a Security Health Analytics custom module with ID `123456` for project `789`, run: $ {command} 123456 \ --project=projects/789 \ --display-name="test_display_name" \ --custom-config-from-file=/tmp/custom_config.yaml \ --test-data-from-file=/tmp/test_data.yaml request: collection: securitycenter.organizations.securityHealthAnalyticsSettings.customModules disable_resource_check: true api_version: v1 method: test modify_request_hooks: - googlecloudsdk.command_lib.scc.custom_modules.sha.request_hooks:TestSecurityHealthAnalyticsCustomModulesReqHook arguments: params: - arg_name: custom_module api_field: name is_positional: true required: false help_text: | ID or the full resource name of the Security Health Analytics custom module. If you specify the full resource name, you do not need to specify the --organization, --folder, or --project flags. - group: mutex: true params: - arg_name: organization api_field: name help_text: | Organization where the Security Health Analytics custom module resides. Formatted as `organizations/123` or just `123`. - arg_name: folder api_field: name help_text: | Folder where the Security Health Analytics custom module resides. Formatted as `folders/456` or just `456`. - arg_name: project api_field: name help_text: | ID or number of the project where the Security Health Analytics custom module resides. Formatted as `projects/789` or just `789`. - arg_name: display-name api_field: testSecurityHealthAnalyticsCustomModuleRequest.securityHealthAnalyticsCustomModule.displayName is_positional: false required: false help_text: | Sets the display name of the Security Health Analytics custom module. This display name becomes the finding category for all findings that are returned by this the custom module. The display name must be between 1 and 128 characters, start with a lowercase letter, and contain alphanumeric characters or underscores only. Only relevant when `--custom-config-from-file` is also specified. - arg_name: custom-config-from-file api_field: testSecurityHealthAnalyticsCustomModuleRequest.securityHealthAnalyticsCustomModule.customConfig type: "googlecloudsdk.calliope.arg_parsers:FileContents:" processor: googlecloudsdk.command_lib.scc.hooks:ProcessCustomConfigFile is_positional: false required: false help_text: | Path to a YAML file that contains the configuration for the Security Health Analytics custom module. If not specified, the existing module with the given ID or resource name is used. - arg_name: test-data-from-file api_field: testSecurityHealthAnalyticsCustomModuleRequest.testData type: "googlecloudsdk.calliope.arg_parsers:FileContents:" processor: googlecloudsdk.command_lib.scc.hooks:ProcessTestResourceDataFile is_positional: false required: true repeated: false help_text: | Path to a YAML file that contains the resource data to test the Security Health Analytics custom module against.