Skip to content

Commit

Permalink
Merge branch 'cloudflare:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
da-cf authored Jul 30, 2024
2 parents 9186256 + 1fc4b5d commit da28908
Show file tree
Hide file tree
Showing 83 changed files with 2,320 additions and 225 deletions.
3 changes: 3 additions & 0 deletions .changelog/3463.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```release-note:bug
resource/cloudflare_risk_behavior: fix bug where partial definition of risk behaviors resulted in a provider error
```
3 changes: 3 additions & 0 deletions .changelog/3488.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```release-note:enhancement
resource/cloudflare_teams_list: add support for descriptions on list items
```
File renamed without changes.
48 changes: 48 additions & 0 deletions .changelog/3500.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
```release-note:note
resource/cloudflare_worker_cron_trigger: deprecated in favour of `cloudflare_workers_cron_trigger` and will be removed in the next major version.
```

```release-note:note
resource/cloudflare_worker_domain: deprecated in favour of `cloudflare_workers_domain` and will be removed in the next major version.
```

```release-note:note
resource/cloudflare_worker_route: deprecated in favour of `cloudflare_workers_route` and will be removed in the next major version.
```

```release-note:note
resource/cloudflare_worker_script: deprecated in favour of `cloudflare_workers_script` and will be removed in the next major version.
```

```release-note:note
resource/cloudflare_worker_secret: deprecated in favour of `cloudflare_workers_secret` and will be removed in the next major version.
```


```release-note:note
resource/cloudflare_workers_for_platforms_namespace: deprecated in favour of `cloudflare_workers_for_platforms_dispatch_namespace` and will be removed in the next major version.
```

```release-note:new-resource
cloudflare_workers_secret
```

```release-note:new-resource
cloudflare_workers_script
```

```release-note:new-resource
cloudflare_workers_route
```

```release-note:new-resource
cloudflare_workers_domain
```

```release-note:new-resource
cloudflare_workers_cron_trigger
```

```release-note:new-resource
cloudflare_workers_for_platforms_dispatch_namespace
```
3 changes: 3 additions & 0 deletions .changelog/3509.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```release-note:note
resource/cloudflare_record: `value` is now deprecated in favour of `content`
```
3 changes: 3 additions & 0 deletions .changelog/3511.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```release-note:enhancement
resource/cloudflare_teams_rule: Add `disable_clipboard_redirection` attribute to `BISOAdminControls`
```
3 changes: 3 additions & 0 deletions .changelog/3515.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```release-note:bug
resource/cloudflare_list_item: handle overlapping hostname `url_hostname`
```
7 changes: 7 additions & 0 deletions .changelog/3516.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
```release-note:enhancement
resource/hyperdrive_config: Add support for creating Hyperdrive over Access configs
```

```release-note:enhancement
resource/hyperdrive_config: Add support for max_age and stale_while_revalidate in Hyperdrive Config caching settings
```
2 changes: 2 additions & 0 deletions .grit/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.gritmodules*
*.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
engine marzano(0.1)
language hcl

pattern cloudflare_record_deprecate_value_for_content() {
`value = $v` as $record => `content = $v` where $record <: and {
within `resource "cloudflare_record" $_ { $_ }`,
not within `data { $_ }`,
}
}
30 changes: 29 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,32 @@
## 4.38.0 (Unreleased)
## 4.39.0 (Unreleased)

## 4.38.0 (July 24th, 2024)

FEATURES:

* **New Data Source:** `cloudflare_gateway_categories` ([#3443](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3443))

ENHANCEMENTS:

* resource/cloudflare_teams_list: add support for descriptions on list items ([#3488](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3488))
* resource/cloudflare_teams_rules: add support for `ignore_cname_category_matches` ([#3473](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3473))

BUG FIXES:

* resource/cloudflare-access-application: fixes bug when updating self_hosted_domains ([#3468](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3468))
* resource/cloudflare_access_application: Fix bug that was not cleaning the API when removing all ids from the 'policies' list ([#3469](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3469))

DEPENDENCIES:

* provider: bump `github.com/aws/aws-sdk-go-v2/config` from 1.27.24 to 1.27.25 ([#3449](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3449))
* provider: bump `github.com/aws/aws-sdk-go-v2/config` from 1.27.25 to 1.27.27 ([#3483](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3483))
* provider: bump `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.24 to 1.17.25 ([#3449](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3449))
* provider: bump `github.com/aws/aws-sdk-go-v2/credentials` from 1.17.25 to 1.17.27 ([#3483](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3483))
* provider: bump `github.com/aws/aws-sdk-go-v2/service/s3` from 1.58.0 to 1.58.1 ([#3449](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3449))
* provider: bump `github.com/aws/aws-sdk-go-v2/service/s3` from 1.58.1 to 1.58.2 ([#3483](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3483))
* provider: bump `github.com/aws/aws-sdk-go-v2` from 1.30.1 to 1.30.2 ([#3449](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3449))
* provider: bump `github.com/aws/aws-sdk-go-v2` from 1.30.2 to 1.30.3 ([#3483](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3483))
* provider: bump github.com/cloudflare/cloudflare-go/v2 from 2.3.0 to 2.4.0 ([#3480](https://github.com/cloudflare/terraform-provider-cloudflare/issues/3480))

## 4.37.0 (July 11th, 2024)

Expand Down
2 changes: 1 addition & 1 deletion docs/data-sources/zone.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ data "cloudflare_zone" "example" {
resource "cloudflare_record" "example" {
zone_id = data.cloudflare_zone.example.id
name = "www"
value = "203.0.113.1"
content = "203.0.113.1"
type = "A"
proxied = true
}
Expand Down
9 changes: 8 additions & 1 deletion docs/resources/hyperdrive_config.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,17 +47,24 @@ Required:
- `database` (String) The name of your origin database.
- `host` (String) The host (hostname or IP) of your origin database.
- `password` (String, Sensitive) The password of the Hyperdrive configuration.
- `port` (Number) The port (default: 5432 for Postgres) of your origin database.
- `scheme` (String) Specifies the URL scheme used to connect to your origin database.
- `user` (String) The user of your origin database.

Optional:

- `access_client_id` (String) Client ID associated with the Cloudflare Access Service Token used to connect via Access.
- `access_client_secret` (String) Client Secret associated with the Cloudflare Access Service Token used to connect via Access.
- `port` (Number) The port (default: 5432 for Postgres) of your origin database.


<a id="nestedatt--caching"></a>
### Nested Schema for `caching`

Optional:

- `disabled` (Boolean) Disable caching for this Hyperdrive configuration.
- `max_age` (Number) Configure the `max_age` value of this Hyperdrive configuration.
- `stale_while_revalidate` (Number) Disable caching for this Hyperdrive configuration.

## Import

Expand Down
5 changes: 3 additions & 2 deletions docs/resources/record.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Provides a Cloudflare record resource.
resource "cloudflare_record" "example" {
zone_id = var.cloudflare_zone_id
name = "terraform"
value = "192.0.2.1"
content = "192.0.2.1"
type = "A"
ttl = 3600
}
Expand Down Expand Up @@ -51,13 +51,14 @@ resource "cloudflare_record" "_sip_tls" {

- `allow_overwrite` (Boolean) Allow creation of this record in Terraform to overwrite an existing record, if any. This does not affect the ability to update the record in Terraform and does not prevent other resources within Terraform or manual changes outside Terraform from overwriting this record. **This configuration is not recommended for most environments**. Defaults to `false`.
- `comment` (String) Comments or notes about the DNS record. This field has no effect on DNS responses.
- `content` (String) The content of the record. Conflicts with `data`.
- `data` (Block List, Max: 1) Map of attributes that constitute the record value. Conflicts with `value`. (see [below for nested schema](#nestedblock--data))
- `priority` (Number) The priority of the record.
- `proxied` (Boolean) Whether the record gets Cloudflare's origin protection.
- `tags` (Set of String) Custom tags for the DNS record.
- `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts))
- `ttl` (Number) The TTL of the record.
- `value` (String) The value of the record. Conflicts with `data`.
- `value` (String, Deprecated) The value of the record. Conflicts with `data`.

### Read-Only

Expand Down
2 changes: 1 addition & 1 deletion docs/resources/regional_hostname.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Provides a Data Localization Suite Regional Hostname.
resource "cloudflare_record" "example" {
zone_id = "0da42c8d2132a9ddaf714f9e7c920711"
name = "example.com"
value = "192.0.2.1"
content = "192.0.2.1"
type = "A"
ttl = 3600
}
Expand Down
1 change: 1 addition & 0 deletions docs/resources/teams_rule.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@ Required:

Optional:

- `disable_clipboard_redirection` (Boolean) Disable clipboard redirection.
- `disable_copy_paste` (Boolean) Disable copy-paste.
- `disable_download` (Boolean) Disable download.
- `disable_keyboard` (Boolean) Disable keyboard usage.
Expand Down
55 changes: 55 additions & 0 deletions docs/resources/workers_cron_trigger.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
---
page_title: "cloudflare_workers_cron_trigger Resource - Cloudflare"
subcategory: ""
description: |-
Worker Cron Triggers allow users to map a cron expression to a Worker script
using a ScheduledEvent listener that enables Workers to be executed on a
schedule. Worker Cron Triggers are ideal for running periodic jobs for
maintenance or calling third-party APIs to collect up-to-date data.
---

# cloudflare_workers_cron_trigger (Resource)

Worker Cron Triggers allow users to map a cron expression to a Worker script
using a `ScheduledEvent` listener that enables Workers to be executed on a
schedule. Worker Cron Triggers are ideal for running periodic jobs for
maintenance or calling third-party APIs to collect up-to-date data.

## Example Usage

```terraform
resource "cloudflare_workers_script" "example_script" {
account_id = "f037e56e89293a057740de681ac9abbe"
name = "example-script"
content = file("path/to/my.js")
}
resource "cloudflare_workers_cron_trigger" "example_trigger" {
account_id = "f037e56e89293a057740de681ac9abbe"
script_name = cloudflare_worker_script.example_script.name
schedules = [
"*/5 * * * *", # every 5 minutes
"10 7 * * mon-fri", # 7:10am every weekday
]
}
```
<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `account_id` (String) The account identifier to target for the resource.
- `schedules` (Set of String) Cron expressions to execute the Worker script.
- `script_name` (String) Worker script to target for the schedules.

### Read-Only

- `id` (String) The ID of this resource.

## Import

Import is supported using the following syntax:

```shell
$ terraform import cloudflare_workers_cron_trigger.example <account_id>/<script_name>
```
46 changes: 46 additions & 0 deletions docs/resources/workers_domain.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
page_title: "cloudflare_workers_domain Resource - Cloudflare"
subcategory: ""
description: |-
Creates a Worker Custom Domain.
---

# cloudflare_workers_domain (Resource)

Creates a Worker Custom Domain.

## Example Usage

```terraform
resource "cloudflare_workers_domain" "example" {
account_id = "f037e56e89293a057740de681ac9abbe"
hostname = "subdomain.example.com"
service = "my-service"
zone_id = "0da42c8d2132a9ddaf714f9e7c920711"
}
```
<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `account_id` (String) The account identifier to target for the resource. **Modifying this attribute will force creation of a new resource.**
- `hostname` (String) Hostname of the Worker Domain.
- `service` (String) Name of worker script to attach the domain to.
- `zone_id` (String) The zone identifier to target for the resource. **Modifying this attribute will force creation of a new resource.**

### Optional

- `environment` (String) The name of the Worker environment. Defaults to `production`.

### Read-Only

- `id` (String) The ID of this resource.

## Import

Import is supported using the following syntax:

```shell
$ terraform import cloudflare_workers_domain.example <account_id>/<worker_domain_id>
```
48 changes: 48 additions & 0 deletions docs/resources/workers_for_platforms_dispatch_namespace.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
page_title: "cloudflare_workers_for_platforms_dispatch_namespace Resource - Cloudflare"
subcategory: ""
description: |-
The Workers for Platforms https://developers.cloudflare.com/cloudflare-for-platforms/workers-for-platforms/ resource allows you
to manage Cloudflare Workers for Platforms dispatch namespaces.
---

# cloudflare_workers_for_platforms_dispatch_namespace (Resource)

The [Workers for Platforms](https://developers.cloudflare.com/cloudflare-for-platforms/workers-for-platforms/) resource allows you
to manage Cloudflare Workers for Platforms dispatch namespaces.

## Example Usage

```terraform
resource "cloudflare_workers_for_platforms_dispatch_namespace" "example" {
account_id = "f037e56e89293a057740de681ac9abbe"
name = "example-namespace"
}
resource "cloudflare_workers_script" "customer_worker_1" {
account_id = "f037e56e89293a057740de681ac9abbe"
name = "customer-worker-1"
content = file("script.js")
dispatch_namespace = cloudflare_workers_for_platforms_namespace.example.name
tags = ["free"]
}
```
<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `account_id` (String) The account identifier to target for the resource.
- `name` (String) The name of the Workers for Platforms namespace.

### Read-Only

- `id` (String) The identifier of this resource.

## Import

Import is supported using the following syntax:

```shell
$ terraform import cloudflare_workers_for_platforms_dispatch_namespace.example <account_id>/<namespace_name>
```
2 changes: 1 addition & 1 deletion docs/resources/workers_for_platforms_namespace.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ resource "cloudflare_workers_for_platforms_namespace" "example" {
name = "example-namespace"
}
resource "cloudflare_worker_script" "customer_worker_1" {
resource "cloudflare_workers_script" "customer_worker_1" {
account_id = "f037e56e89293a057740de681ac9abbe"
name = "customer-worker-1"
content = file("script.js")
Expand Down
Loading

0 comments on commit da28908

Please sign in to comment.