domains_cache_rules
Creates, updates, deletes, gets or lists a domains_cache_rules resource.
Overview​
| Name | domains_cache_rules |
| Type | Resource |
| Id | ovh.cdn_dedicated.domains_cache_rules |
Fields​
The following fields are returned by SELECT queries:
- get
- list
successful operation
| Name | Datatype | Description |
|---|---|---|
cache_rule_id | integer | Id for this cache rule (wire: cacheRuleId) |
cache_type | string | All type a cache can be in (forceCache, noCache) (wire: cacheType) |
domain | string | |
file_match | string | (wire: fileMatch) |
file_type | string | All states an anycast pool can be in (extension, file, folder) (wire: fileType) |
status | string | All states a status can be in (creating, deleting, error, off, on, updating) |
ttl | integer |
CacheRules for a domain
| Name | Datatype | Description |
|---|---|---|
cache_rule_id | integer | Id for this cache rule (wire: cacheRuleId) |
cache_type | string | All type a cache can be in (forceCache, noCache) (wire: cacheType) |
domain | string | |
file_match | string | (wire: fileMatch) |
file_type | string | All states an anycast pool can be in (extension, file, folder) (wire: fileType) |
status | string | All states a status can be in (creating, deleting, error, off, on, updating) |
ttl | integer |
Methods​
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | cache_rule_id, domain, service_name | Get a cache rule | |
list | select | domain, service_name | file_match, x_pagination_mode | List cache rules |
create | insert | domain, service_name, cache_type, file_match, file_type, ttl | Create a cache rule | |
update | update | cache_rule_id, domain, service_name | Update a cache rule | |
delete | delete | cache_rule_id, domain, service_name | Delete a cache rule | |
flush | exec | cacheRuleId, domain, serviceName | Flush the cache of a rule |
Parameters​
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
api_host | string | The OVHcloud API host. Selected by OVH_ENDPOINT (ovh-eu, ovh-ca or ovh-us; default ovh-eu). (default: api.eu.ovhcloud.com, x-stackQL-envVarSelector: {"envVar":"OVH_ENDPOINT","default":"ovh-eu","values":{"ovh-eu":"api.eu.ovhcloud.com","ovh-ca":"api.ca.ovhcloud.com","ovh-us":"api.us.ovhcloud.com"}}) |
cacheRuleId | integer | Id for this cache rule |
cache_rule_id | integer | Id for this cache rule (wire: cacheRuleId) |
domain | string | Domain of this object |
serviceName | string | The internal name of your CDN offer |
service_name | string | The internal name of your CDN offer (wire: serviceName) |
file_match | string | Filter the value of fileMatch property (like) (wire: fileMatch) |
x_pagination_mode | string | Sent as CachedObjectList-Pages by default so the list returns the full objects rather than their identifiers. (wire: X-Pagination-Mode) |
SELECT examples​
- get
- list
Get a cache rule
SELECT
cache_rule_id,
cache_type,
domain,
file_match,
file_type,
status,
ttl
FROM ovh.cdn_dedicated.domains_cache_rules
WHERE cache_rule_id = '{{ cache_rule_id }}' -- required
AND domain = '{{ domain }}' -- required
AND service_name = '{{ service_name }}' -- required
;
List cache rules
SELECT
cache_rule_id,
cache_type,
domain,
file_match,
file_type,
status,
ttl
FROM ovh.cdn_dedicated.domains_cache_rules
WHERE domain = '{{ domain }}' -- required
AND service_name = '{{ service_name }}' -- required
AND file_match = '{{ file_match }}'
AND x_pagination_mode = '{{ x_pagination_mode }}'
;
INSERT examples​
- create
- Manifest
Create a cache rule
INSERT INTO ovh.cdn_dedicated.domains_cache_rules (
cache_type,
file_match,
file_type,
ttl,
domain,
service_name
)
SELECT
'{{ cache_type }}' /* required */,
'{{ file_match }}' /* required */,
'{{ file_type }}' /* required */,
{{ ttl }} /* required */,
'{{ domain }}',
'{{ service_name }}'
RETURNING
cache_rule_id,
cache_type,
domain,
file_match,
file_type,
status,
ttl
;
# Description fields are for documentation purposes
- name: domains_cache_rules
props:
- name: domain
value: "{{ domain }}"
description: Required parameter for the domains_cache_rules resource.
- name: service_name
value: "{{ service_name }}"
description: Required parameter for the domains_cache_rules resource.
- name: cache_type
value: "{{ cache_type }}"
description: |
Type of cache rule to add to the domain
valid_values: ['forceCache', 'noCache']
- name: file_match
value: "{{ file_match }}"
description: |
File match for cache rule to add to the domain
- name: file_type
value: "{{ file_type }}"
description: |
File type for cache rule to add to the domain
valid_values: ['extension', 'file', 'folder']
- name: ttl
value: {{ ttl }}
description: |
ttl for cache rule to add to the domain
UPDATE examples​
- update
Update a cache rule
UPDATE ovh.cdn_dedicated.domains_cache_rules
SET
status = '{{ status }}',
ttl = {{ ttl }}
WHERE
cache_rule_id = '{{ cache_rule_id }}' --required
AND domain = '{{ domain }}' --required
AND service_name = '{{ service_name }}' --required;
DELETE examples​
- delete
Delete a cache rule
DELETE FROM ovh.cdn_dedicated.domains_cache_rules
WHERE cache_rule_id = '{{ cache_rule_id }}' --required
AND domain = '{{ domain }}' --required
AND service_name = '{{ service_name }}' --required
;
Lifecycle Methods​
EXEC variables use wire (API) names.
- flush
Flush the cache of a rule
EXEC ovh.cdn_dedicated.domains_cache_rules.flush
@cacheRuleId='{{ cacheRuleId }}' --required,
@domain='{{ domain }}' --required,
@serviceName='{{ serviceName }}' --required
;