Skip to content
This repository was archived by the owner on Mar 1, 2023. It is now read-only.

Commit d22d6c9

Browse files
authored
~ split storage resource to s3 & sftp (#33)
1 parent cc1ee6c commit d22d6c9

14 files changed

+525
-220
lines changed

docs/resources/gcore_storage.md

Lines changed: 0 additions & 55 deletions
This file was deleted.

docs/resources/gcore_storage_s3.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "gcore_storage_s3 Resource - terraform-provider-gcorelabs"
4+
subcategory: ""
5+
description: |-
6+
Represent s3 storage resource. https://storage.gcorelabs.com/storage/list
7+
---
8+
9+
# gcore_storage_s3 (Resource)
10+
11+
Represent s3 storage resource. https://storage.gcorelabs.com/storage/list
12+
13+
## Example Usage
14+
15+
```terraform
16+
provider gcore {
17+
user_name = "test"
18+
password = "test"
19+
permanent_api_token="123$321" // https://support.gcorelabs.com/hc/en-us/articles/360018625617-API-tokens
20+
ignore_creds_auth_error=true // if you want to manage storage resource only and provide permanent_api_token without user_name & password
21+
gcore_platform = "https://api.gcdn.co"
22+
gcore_storage_api = "https://storage.gcorelabs.com/api"
23+
}
24+
25+
resource "gcore_storage_s3" "example_s3" {
26+
name = "example"
27+
location = "s-ed1"
28+
}
29+
```
30+
31+
<!-- schema generated by tfplugindocs -->
32+
## Schema
33+
34+
### Required
35+
36+
- **location** (String) A location of new storage resource. One of (s-ed1, s-darz1, s-ws1)
37+
- **name** (String) A name of new storage resource.
38+
39+
### Optional
40+
41+
- **client_id** (Number) An client id of new storage resource.
42+
- **generated_access_key** (String) A s3 access key for new storage resource.
43+
- **generated_endpoint** (String) A s3 entry point for new storage resource.
44+
- **generated_secret_key** (String) A s3 secret key for new storage resource.
45+
- **id** (String) The ID of this resource.
46+
- **storage_id** (Number) An id of new storage resource.
47+
48+
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "gcore_storage_sftp Resource - terraform-provider-gcorelabs"
4+
subcategory: ""
5+
description: |-
6+
Represent sftp storage resource. https://storage.gcorelabs.com/storage/list
7+
---
8+
9+
# gcore_storage_sftp (Resource)
10+
11+
Represent sftp storage resource. https://storage.gcorelabs.com/storage/list
12+
13+
## Example Usage
14+
15+
```terraform
16+
provider gcore {
17+
user_name = "test"
18+
password = "test"
19+
permanent_api_token="123$321" // https://support.gcorelabs.com/hc/en-us/articles/360018625617-API-tokens
20+
ignore_creds_auth_error=true // if you want to manage storage resource only and provide permanent_api_token without user_name & password
21+
gcore_platform = "https://api.gcdn.co"
22+
gcore_storage_api = "https://storage.gcorelabs.com/api"
23+
}
24+
25+
resource "gcore_storage_sftp" "example_sftp" {
26+
name = "example"
27+
location = "mia"
28+
ssh_key_id = [199]
29+
}
30+
```
31+
32+
<!-- schema generated by tfplugindocs -->
33+
## Schema
34+
35+
### Required
36+
37+
- **location** (String) A location of new storage resource. One of (ams, sin, fra, mia)
38+
- **name** (String) A name of new storage resource.
39+
40+
### Optional
41+
42+
- **client_id** (Number) An client id of new storage resource.
43+
- **generated_endpoint** (String) A sftp entry point for new storage resource.
44+
- **generated_password** (Boolean) An auto generated sftp password for new storage resource.
45+
- **http_expires_header_value** (String) A expires date of storage resource.
46+
- **http_servername_alias** (String) An alias of storage resource.
47+
- **id** (String) The ID of this resource.
48+
- **password** (String) A sftp password for new storage resource.
49+
- **ssh_key_id** (List of Number) An ssh keys IDs to link with new sftp storage resource only. https://storage.gcorelabs.com/ssh-key/list
50+
- **storage_id** (Number) An id of new storage resource.
51+
52+

docs/resources/gcore_storage_key.md renamed to docs/resources/gcore_storage_sftp_key.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
22
# generated by https://github.com/hashicorp/terraform-plugin-docs
3-
page_title: "gcore_storage_key Resource - terraform-provider-gcorelabs"
3+
page_title: "gcore_storage_sftp_key Resource - terraform-provider-gcorelabs"
44
subcategory: ""
55
description: |-
66
Represent storage key resource. https://storage.gcorelabs.com/ssh-key/list
77
---
88

9-
# gcore_storage_key (Resource)
9+
# gcore_storage_sftp_key (Resource)
1010

1111
Represent storage key resource. https://storage.gcorelabs.com/ssh-key/list
1212

@@ -20,7 +20,7 @@ provider gcore {
2020
gcore_storage_api = "https://storage.gcorelabs.com/api"
2121
}
2222
23-
resource "gcore_storage_key" "terraform_test_key" {
23+
resource "gcore_storage_sftp_key" "terraform_test_key" {
2424
name = "terraform_test_key"
2525
key = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSUGPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XAt3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/EnmZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbxNrRFi9wrf+M7Q== [email protected]"
2626
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
provider gcore {
2+
user_name = "test"
3+
password = "test"
4+
permanent_api_token="123$321" // https://support.gcorelabs.com/hc/en-us/articles/360018625617-API-tokens
5+
ignore_creds_auth_error=true // if you want to manage storage resource only and provide permanent_api_token without user_name & password
6+
gcore_platform = "https://api.gcdn.co"
7+
gcore_storage_api = "https://storage.gcorelabs.com/api"
8+
}
9+
10+
resource "gcore_storage_s3" "example_s3" {
11+
name = "example"
12+
location = "s-ed1"
13+
}

examples/resources/gcore_storage/resource.tf renamed to examples/resources/gcore_storage_sftp/resource.tf

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,8 @@ provider gcore {
77
gcore_storage_api = "https://storage.gcorelabs.com/api"
88
}
99

10-
resource "gcore_storage" "tf_example_sftp" {
11-
name = "tf_example"
10+
resource "gcore_storage_sftp" "example_sftp" {
11+
name = "example"
1212
location = "mia"
13-
type = "sftp"
14-
ssh_key_id = 199 // can be used for sftp type only
13+
ssh_key_id = [199]
1514
}

examples/resources/gcore_storage_key/resource.tf renamed to examples/resources/gcore_storage_sftp_key/resource.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ provider gcore {
55
gcore_storage_api = "https://storage.gcorelabs.com/api"
66
}
77

8-
resource "gcore_storage_key" "terraform_test_key" {
8+
resource "gcore_storage_sftp_key" "terraform_test_key" {
99
name = "terraform_test_key"
1010
key = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSUGPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XAt3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/EnmZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbxNrRFi9wrf+M7Q== [email protected]"
1111
}

gcore/provider.go

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -78,28 +78,29 @@ func Provider() *schema.Provider {
7878
},
7979
},
8080
ResourcesMap: map[string]*schema.Resource{
81-
"gcore_volume": resourceVolume(),
82-
"gcore_network": resourceNetwork(),
83-
"gcore_subnet": resourceSubnet(),
84-
"gcore_router": resourceRouter(),
85-
"gcore_instance": resourceInstance(),
86-
"gcore_keypair": resourceKeypair(),
87-
"gcore_reservedfixedip": resourceReservedFixedIP(),
88-
"gcore_floatingip": resourceFloatingIP(),
89-
"gcore_loadbalancer": resourceLoadBalancer(),
90-
"gcore_lblistener": resourceLbListener(),
91-
"gcore_lbpool": resourceLBPool(),
92-
"gcore_lbmember": resourceLBMember(),
93-
"gcore_securitygroup": resourceSecurityGroup(),
94-
"gcore_baremetal": resourceBmInstance(),
95-
"gcore_snapshot": resourceSnapshot(),
96-
"gcore_servergroup": resourceServerGroup(),
97-
"gcore_storage": resourceStorage(),
98-
"gcore_storage_key": resourceStorageKey(),
99-
"gcore_cdn_resource": resourceCDNResource(),
100-
"gcore_cdn_origingroup": resourceCDNOriginGroup(),
101-
"gcore_cdn_rule": resourceCDNRule(),
102-
"gcore_cdn_sslcert": resourceCDNCert(),
81+
"gcore_volume": resourceVolume(),
82+
"gcore_network": resourceNetwork(),
83+
"gcore_subnet": resourceSubnet(),
84+
"gcore_router": resourceRouter(),
85+
"gcore_instance": resourceInstance(),
86+
"gcore_keypair": resourceKeypair(),
87+
"gcore_reservedfixedip": resourceReservedFixedIP(),
88+
"gcore_floatingip": resourceFloatingIP(),
89+
"gcore_loadbalancer": resourceLoadBalancer(),
90+
"gcore_lblistener": resourceLbListener(),
91+
"gcore_lbpool": resourceLBPool(),
92+
"gcore_lbmember": resourceLBMember(),
93+
"gcore_securitygroup": resourceSecurityGroup(),
94+
"gcore_baremetal": resourceBmInstance(),
95+
"gcore_snapshot": resourceSnapshot(),
96+
"gcore_servergroup": resourceServerGroup(),
97+
"gcore_storage_s3": resourceStorageS3(),
98+
"gcore_storage_sftp": resourceStorageSFTP(),
99+
"gcore_storage_sftp_key": resourceStorageSFTPKey(),
100+
"gcore_cdn_resource": resourceCDNResource(),
101+
"gcore_cdn_origingroup": resourceCDNOriginGroup(),
102+
"gcore_cdn_rule": resourceCDNRule(),
103+
"gcore_cdn_sslcert": resourceCDNCert(),
103104
},
104105
DataSourcesMap: map[string]*schema.Resource{
105106
"gcore_project": dataSourceProject(),

0 commit comments

Comments
 (0)