Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Index Template APIs #7635

Merged
merged 27 commits into from
Jul 31, 2024
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
dea625c
Add Index Template APIs
Naarcha-AWS Jul 5, 2024
064289c
Add Index Template APIs
Naarcha-AWS Jul 5, 2024
eb08766
Add Delete template API
Naarcha-AWS Jul 8, 2024
e8d789e
Add delete API
Naarcha-AWS Jul 8, 2024
59f656b
Add component template.
Naarcha-AWS Jul 8, 2024
e211391
Add missing parameter
Naarcha-AWS Jul 8, 2024
655e5e2
Apply suggestions from code review
Naarcha-AWS Jul 9, 2024
4204c9c
Apply suggestions from code review
Naarcha-AWS Jul 9, 2024
3b18d4d
Apply suggestions from code review
Naarcha-AWS Jul 15, 2024
b8519ca
Apply suggestions from code review
Naarcha-AWS Jul 15, 2024
9de2175
Apply suggestions from code review
Naarcha-AWS Jul 15, 2024
3f48059
Update _api-reference/index-apis/create-index-template.md
Naarcha-AWS Jul 15, 2024
9cd9bfe
Update _api-reference/index-apis/create-index-template.md
Naarcha-AWS Jul 15, 2024
5e39a76
Apply suggestions from code review
Naarcha-AWS Jul 23, 2024
bad478c
Update _api-reference/index-apis/component-template.md
hdhalter Jul 23, 2024
49cf70b
Apply suggestions from code review
Naarcha-AWS Jul 24, 2024
821ded1
Apply suggestions from code review
Naarcha-AWS Jul 24, 2024
9678e1a
Apply suggestions from code review
Naarcha-AWS Jul 24, 2024
5cf26a3
Update component-template.md
Naarcha-AWS Jul 29, 2024
245a203
Update create-index-template.md
Naarcha-AWS Jul 29, 2024
4a08a0f
Update delete-index-template.md
Naarcha-AWS Jul 29, 2024
666c515
Merge branch 'main' into index-template-api
Naarcha-AWS Jul 29, 2024
88b3a7a
Apply suggestions from code review
Naarcha-AWS Jul 29, 2024
3259f83
Apply suggestions from code review
Naarcha-AWS Jul 30, 2024
93d9481
Apply suggestions from code review
Naarcha-AWS Jul 30, 2024
3c46e86
Apply suggestions from code review
Naarcha-AWS Jul 30, 2024
db2738b
Apply suggestions from code review
Naarcha-AWS Jul 31, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
152 changes: 152 additions & 0 deletions _api-reference/index-apis/component-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
---
layout: default
title: Create Component Template
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
parent: Index APIs
nav_order: 29
---

# Create Component Template

Check failure on line 8 in _api-reference/index-apis/component-template.md

View workflow job for this annotation

GitHub Actions / vale

[vale] _api-reference/index-apis/component-template.md#L8

[OpenSearch.HeadingCapitalization] 'Create Component Template' is a heading and should be in sentence case.
Raw output
{"message": "[OpenSearch.HeadingCapitalization] 'Create Component Template' is a heading and should be in sentence case.", "location": {"path": "_api-reference/index-apis/component-template.md", "range": {"start": {"line": 8, "column": 3}}}, "severity": "ERROR"}
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

The Create Component Template API creates and updates a component template. Component templates are pieces of index templates which mappings, index settings, and aliases.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

An index template can be constructed from multiple component templates. To incorporate a component template into an index template, you need to list it in the `composed_of` section of the index template. Component templates are only applied to newly created data streams and indexes that match the criteria specified in the index template.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

If any settings or mappings are directly defined in the index template or the index creation request, those settings will take precedence over the settings or mappings specified in a component template.

Component templates are utilized solely during the process of index creation. For data streams, this includes the creation of the data stream itself and the creation of the backing indexes that support the stream. Modifications made to component templates will not affect existing indices, including the backing indices of a data stream.

Check failure on line 16 in _api-reference/index-apis/component-template.md

View workflow job for this annotation

GitHub Actions / vale

[vale] _api-reference/index-apis/component-template.md#L16

[OpenSearch.SubstitutionsError] Use 'indexes' instead of 'indices'.
Raw output
{"message": "[OpenSearch.SubstitutionsError] Use 'indexes' instead of 'indices'.", "location": {"path": "_api-reference/index-apis/component-template.md", "range": {"start": {"line": 16, "column": 282}}}, "severity": "ERROR"}

Check failure on line 16 in _api-reference/index-apis/component-template.md

View workflow job for this annotation

GitHub Actions / vale

[vale] _api-reference/index-apis/component-template.md#L16

[OpenSearch.SubstitutionsError] Use 'indexes' instead of 'indices'.
Raw output
{"message": "[OpenSearch.SubstitutionsError] Use 'indexes' instead of 'indices'.", "location": {"path": "_api-reference/index-apis/component-template.md", "range": {"start": {"line": 16, "column": 313}}}, "severity": "ERROR"}
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

## Path and HTTP Methods

Check failure on line 18 in _api-reference/index-apis/component-template.md

View workflow job for this annotation

GitHub Actions / vale

[vale] _api-reference/index-apis/component-template.md#L18

[OpenSearch.HeadingCapitalization] 'Path and HTTP Methods' is a heading and should be in sentence case.
Raw output
{"message": "[OpenSearch.HeadingCapitalization] 'Path and HTTP Methods' is a heading and should be in sentence case.", "location": {"path": "_api-reference/index-apis/component-template.md", "range": {"start": {"line": 18, "column": 4}}}, "severity": "ERROR"}
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT _component_template/<component-template-name>
GET _component_template/<component-template-name>
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
```

## Path parameters

Parameter | Type | Description
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
:--- | :--- | :---
`component-template-name` | String | The name of the component template.

## Query parameters

The following optional query parameters are supported:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

Parameter | Type | Description
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
:--- | :--- | :---
`create` | Boolean | When true, the API cannot replace or update any existing index templates. Default is `false`.
`cluster_manager_timeout` | Time | How long to wait for a connection to the cluster manager node. Default is `30s`.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`timeout` | Time | How long the operation should wait for a response. Default is `30s`.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

## Request body options
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

The following options can be used in the request body to customize the index template:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved


Parameter | Type | Description
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
:--- | :--- | :---
`template` | Object | The template which includes the `aliases`, `mappings`, or `settings` for the index. For more information, see [#template]. Required.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`version` | Integer | The version number used to manage index templates. Version numbers are not automatically set by OpenSearch. Optional.
`_meta` | Object | The optional metadata that gives details about the index template. Optional.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`allow_auto_create` | Boolean | When `true`, indexes can be automatically created with this template even if the `actions.auto_create_index` is disabled. When `false`, indexes and data streams matching the template cannot be automatically created. Optional.
`deprecated` | Boolean | When `true`, the component template is deprecated. If deprecated, OpenSearch will output a warning whenever the template is referenced.


### Template

You can use the following objects with the `template` option in the request body:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

#### `alias`
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

The alias name as the key. Required when the `template` option exists in the request body.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

The object body contains the following optional options for the alias:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

Parameter | Type | Description
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
:--- | :--- | :---
`filter` | Query DSL object | The query that limits documents the alias can access.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`index_routing` | String | The value which routes indexing operations to a specific shard. When specified, overwrites the `routing` value for indexing operations.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`is_hidden` | Boolean | When `true`, the alias is hidden. Default is false. All indexes for the alias must have matching values for this setting.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`is_write_index` | Boolean | When `true`, the index is the [write index] for the alias. Default is `false`.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please either add the link here or remove the brackets.

Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`routing` | String | The value used to route index and search operations to a specific shard.
`search_routing` | String | The value used to write specifically search operations to a specific shard. When specified, this option overwrites the `routing` value for search operations.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

#### `mappings`

The field mappings that exist in the index. For more information, see [Mappings and field types](https://opensearch.org/docs/latest/field-types/). Optional.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"that exist" => "stored"?


#### `settings`

Any configuration options for the index. For more information, see [Index settings](https://opensearch.org/docs/latest/install-and-configure/configuring-opensearch/index-settings/).

## Example requests

The following example requests show how to use the Create Component template API.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

### Create with index aliases
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Create with index aliases
### Create a component template including index aliases


The following example creates a component template that includes index aliases:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT _component_template/alias_template
{
"template": {
"settings" : {
"number_of_shards" : 1
},
"aliases" : {
"alias1" : {},
"alias2" : {
"filter" : {
"term" : {"user.id" : "hamlet" }
},
"routing" : "shard-1"
},
"{index}-alias" : {}
}
}
}
```

### Adding component versioning


The following example adds a `version` number to a component template which simplifies template management for external systems:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The following example adds a `version` number to a component template which simplifies template management for external systems:
The following example request adds a `version` number to a component template, which simplifies template management for external systems:


```
PUT /_component_template/version_template
{
"template": {
"settings" : {
"number_of_shards" : 1
}
},
"version": 3
}
```
{% include copy-curl.html %}

## Adding template metadata

The following example uses the `meta` parameter to add metadata to the index template. All metadata is stored in the cluster state:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT /_component_template/meta_template
{
"template": {
"settings" : {
"number_of_shards" : 1
}
},
"_meta": {
"description": "Where art thou",
"serialization": {
"class": "MyIndexTemplate",
"id": 12
}
}
}
```



240 changes: 240 additions & 0 deletions _api-reference/index-apis/create-index-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,240 @@
---
layout: default
title: Create Index Template
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
parent: Index APIs
nav_order: 26
---

# Create Index Template

Check failure on line 8 in _api-reference/index-apis/create-index-template.md

View workflow job for this annotation

GitHub Actions / vale

[vale] _api-reference/index-apis/create-index-template.md#L8

[OpenSearch.HeadingCapitalization] 'Create Index Template' is a heading and should be in sentence case.
Raw output
{"message": "[OpenSearch.HeadingCapitalization] 'Create Index Template' is a heading and should be in sentence case.", "location": {"path": "_api-reference/index-apis/create-index-template.md", "range": {"start": {"line": 8, "column": 3}}}, "severity": "ERROR"}
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

The Create Index Template API lets you initialize indexes with predefined mappings and settings, as well as update existing index template.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

## Path and HTTP methods

```
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
PUT _index_template/<template-name>
POST _index_template/<template-name>
```

## Path parameters

Parameter | Type | Description
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
:--- | :--- | :---
`template-name` | String | Name of the index template.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

## Query parameters

The following optional query parameters are supported:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remember that blocks/examples/lists are introduced with a colon, but tables and headings are not.


Parameter | Type | Description
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
:--- | :--- | :---
`create` | Boolean | When true, the API cannot replace or update any existing index templates. Default is `false`.
`cluster_manager_timeout` | Time | How long to wait for a connection to the cluster manager node. Default is `30s`.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

## Request body options

The following options can be used in the request body to customize the index template:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved


Parameter | Type | Description
:--- | :--- | :---
`index_patterns` | String array | An array of wildcard expressions which match the names of data streams and indexes during template creation. Required.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`composed_of` | String array | An ordered list of component template names. These templates are merged using the order specified. For more information, see [Using multiple component templates](#using-multiple-component-templates). Optional.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`data_stream` | Object | When used, the request creates data streams and any backing indexes based on the template. This setting requires a matching index template. It can as be used with the `hidden` setting, which, when set to `true` hides the data streams backing indexes. Optional.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`_meta` | Object | The optional metadata that gives details about the index template. Optional.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`priority` | Integer | A number which determines which index templates take precedence during the creation of a new index or data stream. OpenSearch chooses the template with highest priority. When no priority is given, the template is assigned a `0`, signifying the lowest priority. Optional.

Check failure on line 45 in _api-reference/index-apis/create-index-template.md

View workflow job for this annotation

GitHub Actions / vale

[vale] _api-reference/index-apis/create-index-template.md#L45

[OpenSearch.SpacingPunctuation] There should be no space before and one space after the punctuation mark in 'priority. Optional'.
Raw output
{"message": "[OpenSearch.SpacingPunctuation] There should be no space before and one space after the punctuation mark in 'priority. Optional'.", "location": {"path": "_api-reference/index-apis/create-index-template.md", "range": {"start": {"line": 45, "column": 275}}}, "severity": "ERROR"}
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`template` | Object | The template which includes the `aliases`, `mappings`, or `settings` for the index. For more information, see [#template]. Optional.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`version` | Integer | The version number used to manage index templates. Version numbers are not automatically set by OpenSearch. Optional.


### Template

You can use the following objects with the `template` option in the request body:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

#### `alias`
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

The alias name as the key. Required when the `template` option exists in the request body.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

The object body contains the following optional options for the alias:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

Parameter | Type | Description
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
:--- | :--- | :---
`filter` | Query DSL object | The query that limits documents the alias can access.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Limits the documents in what way? "limits the number of documents"? "limits the types of documents"?

`index_routing` | String | The value which routes indexing operations to a specific shard. When specified, overwrites the `routing` value for indexing operations.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`is_hidden` | Boolean | When `true`, the alias is hidden. Default is false. All indexes for the alias must have matching values for this setting.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`is_write_index` | Boolean | When `true`, the index is the [write index] for the alias. Default is `false`.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
`routing` | String | The value used to route index and search operations to a specific shard.
`search_routing` | String | The value used to write specifically search operations to a specific shard. When specified, this option overwrites the `routing` value for search operations.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

#### `mappings`

The field mappings that exist in the index. For more information, see [Mappings and field types](https://opensearch.org/docs/latest/field-types/). Optional.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"that exist" => "stored"?


#### `settings`

Any configuration options for the index. For more information, see [Index settings](https://opensearch.org/docs/latest/install-and-configure/configuring-opensearch/index-settings/).

## Example requests

The following examples show how to use the Create Index Template API.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

### Index template with index aliases

The following example includes index aliases inside the template:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tip: Look out for instances of "inside" and "within" that can just be "in".


```
PUT _index_template/alias-template
{
"index_patterns" : ["sh*"],
"template": {
"settings" : {
"number_of_shards" : 1
},
"aliases" : {
"alias1" : {},
"alias2" : {
"filter" : {
"term" : {"user.id" : "hamlet" }
},
"routing" : "shard-1"
},
"{index}-alias" : {}
}
}
}
```
{% include copy-curl.html %}

### Using multiple matching templates

When multiple index templates match the name of a new index or data stream, the template with the highest priority is used. For example, the following two Create Template requests create index templates with different priorities:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT /_index_template/template_one
{
"index_patterns" : ["h*"],
"priority" : 0,
"template": {
"settings" : {
"number_of_shards" : 1,
"number_of_replicas": 0
},
"mappings" : {
"_source" : { "enabled" : false }
}
}
}

PUT /_index_template/template_two
{
"index_patterns" : ["ha*"],
"priority" : 1,
"template": {
"settings" : {
"number_of_shards" : 2
},
"mappings" : {
"_source" : { "enabled" : true }
}
}
}
```
{% include copy-curl.html %}

For indexes that start with `ha`, the `_source` is enabled. Since only `template_two` is applied, the index will have two primary shards and one replica.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use "since" only to refer to time and not to mean "because."


Overlapping index patterns given the same priority are not allowed. An error will occur when attempting to create a template matching an existing index template at identical priorities.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved
{: .note}

### Adding template versioning

The following example adds a `version` number to an index template which simplifies template management for external systems:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT /_index_template/template_one
{
"index_patterns" : ["mac", "cheese"],
"priority" : 0,
"template": {
"settings" : {
"number_of_shards" : 1
}
},
"version": 1
}
```
{% include copy-curl.html %}


### Adding template metadata

The following example uses the `meta` parameter to add metadata to the index template. All metadata is stored in the cluster state:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT /_index_template/template_one
{
"index_patterns": ["rom", "juliet"],
"template": {
"settings" : {
"number_of_shards" : 2
}
},
"_meta": {
"description": "Where art thou",
"serialization": {
"class": "MyIndexTemplate",
"id": 12
}
}
}
```

### Data stream definition

Include a `data_stream` object to use an index template for data streams, as shown in the following example:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT /_index_template/template_1
{
"index_patterns": ["logs-*"],
"data_stream": { }
}
```

## Using multiple component templates

When using multiple component templates with the `composed_of` field, the component templates merged in the order specified, with later component template superseding earlier templates in the request body. Next, all mappings, settings, or aliases from the parent index template of the component are merged. Lastly, any configuration options added into the index requests are merged.
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

In the following example, an index with `h*` has two primary shards merged. If the order in the request body were reversed, the index would have one primary shard:
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved

```
PUT /_component_template/template_with_1_shard
{
"template": {
"settings": {
"index.number_of_shards": 1
}
}
}

PUT /_component_template/template_with_2_shards
{
"template": {
"settings": {
"index.number_of_shards": 2
}
}
}

PUT /_index_template/template_1
{
"index_patterns": ["h*"],
"composed_of": ["template_with_1_shard", "template_with_2_shards"]
}
```
{% include copy-curl.html %}


Recurse merging is used for mapping definition and root options such as `dynamic_templates` and `meta`, meaning that one an earlier component contains a `meta` block, then new `meta` entries are added to the end of metadata in the index. Any entries with the same key that already exist are overwritten.

Check failure on line 238 in _api-reference/index-apis/create-index-template.md

View workflow job for this annotation

GitHub Actions / vale

[vale] _api-reference/index-apis/create-index-template.md#L238

[OpenSearch.Spelling] Error: Recurse. If you are referencing a setting, variable, format, function, or repository, surround it with tic marks.
Raw output
{"message": "[OpenSearch.Spelling] Error: Recurse. If you are referencing a setting, variable, format, function, or repository, surround it with tic marks.", "location": {"path": "_api-reference/index-apis/create-index-template.md", "range": {"start": {"line": 238, "column": 1}}}, "severity": "ERROR"}
Naarcha-AWS marked this conversation as resolved.
Show resolved Hide resolved


Loading
Loading