Skip to content

ssl changes to /nodebalancers/$id/configs/$id/ssl and PUT /nodebalancers/$id/configs/$id #50

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

Merged
merged 2 commits into from
Jan 23, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
33 changes: 8 additions & 25 deletions src/data/endpoints/nodebalancers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -212,10 +212,14 @@ endpoints:
type: Boolean
optional: true
value: true
# ssl_cert:
# description: SSL certificate served by the NodeBalancer when the protocol is "https".
# ssl_key:
# description: Unpassphrased private key for the SSL certificate when the protocol is "https".
ssl_cert:
description: SSL certificate served by the NodeBalancer when the protocol is "https".
type: String
optional: true
ssl_key:
description: Unpassphrased private key for the SSL certificate when the protocol is "https".
type: String
optional: true
cipher_suite:
description: SSL cipher suite to enforce.
type: Enum
Expand Down Expand Up @@ -282,27 +286,6 @@ endpoints:
python: |
nb_config = linode.NodeBalancerConfig(client, 456, 123) # linode_client, nodebalancer_config_id, nodebalancer_id
nb_config.delete()
/nodebalancers/$id/configs/$id/ssl:
group: Configs
type: resource
authenticated: true
description: >
Add or update SSL certificate and https protocol to an existing config profile.
methods:
POST:
oauth: nodebalancers:modify
description: Adds/updates SSL certificates
examples:
curl: |
curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
"ssl_cert": "----- BEGIN CERTIFICATE ----- < etc...> ----- END CERTIFICATE -----",
"ssl_key": "----- BEGIN PRIVATE KEY ----- < etc...> ----- END PRIVATE KEY -----"
}' \
https://$api_root/$version/nodebalancers/$nodebalancer_id/configs/$config_id/ssl
python: |
# currently unimplemented
/nodebalancers/$id/configs/$id/nodes:
group: Configs
authenticated: true
Expand Down
14 changes: 12 additions & 2 deletions src/data/objects/nodebalancer_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,23 @@ schema:
ssl_commonname:
editable: true
type: String
value:
value: "www.example.com"
description: Common Name of the configured SSL certificate, if present.
ssl_fingerprint:
editable: true
type: String
value:
value: "00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33"
description: SSL Certificate fingerprint, if present.
ssl_cert:
editable: true
type: String
value:
description: SSL Certificate, if present.
ssl_key:
editable: true
type: String
value:
description: SSL Key, if present.
cipher_suite:
editable: true
type: Enum
Expand Down