Skip to content

Commit 5871002

Browse files
authored
Merge pull request #29 from cloudback/feature/422-azure-devops-support
#422: Azure DevOps support
2 parents 48ee142 + 86f3fff commit 5871002

File tree

10 files changed

+344
-146
lines changed

10 files changed

+344
-146
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Cloudback Terraform Provider Changelog
22

3+
## 1.0.4 (2025-11-22)
4+
5+
- Update backup definition resource: Add AzureDevOps to platform examples and adjust schema for subject_type and subject_name fields.
6+
37
## 1.0.3 (2025-07-15)
48

59
- Security updates for dependencies

docs/resources/backup_definition.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,15 @@ Cloudback backup definition resource
1818
### Required
1919

2020
- `account` (String) Account name
21-
- `platform` (String) Platform name (e.g., GitHub, GitLab)
22-
- `repository` (String) Repository name
21+
- `platform` (String) Platform name (e.g., GitHub, GitLab, AzureDevOps)
2322
- `settings` (Attributes) (see [below for nested schema](#nestedatt--settings))
2423

24+
### Optional
25+
26+
- `repository` (String) Repository name (deprecated: use subject_type and subject_name instead)
27+
- `subject_name` (String) Subject name (repository name, project name, etc.)
28+
- `subject_type` (String) Subject type (e.g., Repository, Project)
29+
2530
<a id="nestedatt--settings"></a>
2631
### Nested Schema for `settings`
2732

examples/resources/backup_definition/resource.tf

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,22 @@
1+
# Example using the new subject_type and subject_name fields (recommended)
12
resource "cloudback_backup_definition" "example" {
3+
platform = "GitHub" # Platform name (GitHub, AzureDevOps, etc.)
4+
account = "your-github-account" # The account that owns the subject
5+
subject_type = "Repository" # Subject type (Repository, Project, etc.)
6+
subject_name = "your-github-repository" # The name of the subject to backup
7+
settings = {
8+
enabled = true # Enable the scheduled automated backup
9+
schedule = "Daily at 6 am" # The schedule for the automated backup, see the Cloudback Dashboard for available options
10+
storage = "Your S3 bucket" # The storage name to use for the backup, see the Cloudback Dashboard for available options
11+
retention = "Last 30 days" # The retention policy for the backup, see the Cloudback Dashboard for available options
12+
}
13+
}
14+
15+
# Legacy example using repository field (still supported for backward compatibility)
16+
resource "cloudback_backup_definition" "example_legacy" {
217
platform = "GitHub" # Currently only GitHub is supported
318
account = "your-github-account" # The GitHub account that owns the repository
4-
repository = "your-github-repository" # The repository to backup
19+
repository = "your-github-repository" # The repository to backup (deprecated: use subject_type and subject_name)
520
settings = {
621
enabled = true # Enable the scheduled automated backup
722
schedule = "Daily at 6 am" # The schedule for the automated backup, see the Cloudback Dashboard for available options

go.mod

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
module terraform-provider-cloudback
22

3-
go 1.23.0
3+
go 1.24.0
44

55
toolchain go1.24.1
66

77
require (
88
github.com/go-resty/resty/v2 v2.16.5
9-
github.com/hashicorp/terraform-plugin-framework v1.15.0
10-
github.com/hashicorp/terraform-plugin-go v0.28.0
9+
github.com/hashicorp/terraform-plugin-framework v1.16.1
10+
github.com/hashicorp/terraform-plugin-go v0.29.0
1111
github.com/hashicorp/terraform-plugin-log v0.9.0
12-
github.com/hashicorp/terraform-plugin-testing v1.13.2
12+
github.com/hashicorp/terraform-plugin-testing v1.13.3
1313
)
1414

1515
require (
@@ -26,7 +26,7 @@ require (
2626
github.com/hashicorp/go-cty v1.5.0 // indirect
2727
github.com/hashicorp/go-hclog v1.6.3 // indirect
2828
github.com/hashicorp/go-multierror v1.1.1 // indirect
29-
github.com/hashicorp/go-plugin v1.6.3 // indirect
29+
github.com/hashicorp/go-plugin v1.7.0 // indirect
3030
github.com/hashicorp/go-retryablehttp v0.7.7 // indirect
3131
github.com/hashicorp/go-uuid v1.0.3 // indirect
3232
github.com/hashicorp/go-version v1.7.0 // indirect
@@ -36,9 +36,9 @@ require (
3636
github.com/hashicorp/terraform-exec v0.23.0 // indirect
3737
github.com/hashicorp/terraform-json v0.25.0 // indirect
3838
github.com/hashicorp/terraform-plugin-sdk/v2 v2.37.0 // indirect
39-
github.com/hashicorp/terraform-registry-address v0.2.5 // indirect
39+
github.com/hashicorp/terraform-registry-address v0.4.0 // indirect
4040
github.com/hashicorp/terraform-svchost v0.1.1 // indirect
41-
github.com/hashicorp/yamux v0.1.1 // indirect
41+
github.com/hashicorp/yamux v0.1.2 // indirect
4242
github.com/kr/pretty v0.3.0 // indirect
4343
github.com/mattn/go-colorable v0.1.13 // indirect
4444
github.com/mattn/go-isatty v0.0.20 // indirect
@@ -47,21 +47,21 @@ require (
4747
github.com/mitchellh/go-wordwrap v1.0.0 // indirect
4848
github.com/mitchellh/mapstructure v1.5.0 // indirect
4949
github.com/mitchellh/reflectwalk v1.0.2 // indirect
50-
github.com/oklog/run v1.0.0 // indirect
50+
github.com/oklog/run v1.1.0 // indirect
5151
github.com/rogpeppe/go-internal v1.13.1 // indirect
5252
github.com/vmihailenco/msgpack v4.0.4+incompatible // indirect
5353
github.com/vmihailenco/msgpack/v5 v5.4.1 // indirect
5454
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
5555
github.com/zclconf/go-cty v1.16.3 // indirect
56-
golang.org/x/crypto v0.39.0 // indirect
57-
golang.org/x/mod v0.25.0 // indirect
58-
golang.org/x/net v0.40.0 // indirect
59-
golang.org/x/sync v0.15.0 // indirect
60-
golang.org/x/sys v0.33.0 // indirect
61-
golang.org/x/text v0.26.0 // indirect
62-
golang.org/x/tools v0.33.0 // indirect
56+
golang.org/x/crypto v0.41.0 // indirect
57+
golang.org/x/mod v0.26.0 // indirect
58+
golang.org/x/net v0.43.0 // indirect
59+
golang.org/x/sync v0.16.0 // indirect
60+
golang.org/x/sys v0.35.0 // indirect
61+
golang.org/x/text v0.28.0 // indirect
62+
golang.org/x/tools v0.35.0 // indirect
6363
google.golang.org/appengine v1.6.8 // indirect
64-
google.golang.org/genproto/googleapis/rpc v0.0.0-20250218202821-56aae31c358a // indirect
65-
google.golang.org/grpc v1.72.1 // indirect
66-
google.golang.org/protobuf v1.36.6 // indirect
64+
google.golang.org/genproto/googleapis/rpc v0.0.0-20250707201910-8d1bb00bc6a7 // indirect
65+
google.golang.org/grpc v1.75.1 // indirect
66+
google.golang.org/protobuf v1.36.9 // indirect
6767
)

0 commit comments

Comments
 (0)