Skip to content

Commit 50944dc

Browse files
authored
Merge pull request #839 from bbiggerr/metadata-feature
Added Metadata service
2 parents 3dc5550 + 298bbb1 commit 50944dc

File tree

1 file changed

+48
-5
lines changed

1 file changed

+48
-5
lines changed

openapi.yaml

Lines changed: 48 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6046,6 +6046,12 @@ paths:
60466046
* Disks and Configs must be created manually.
60476047
* This is only recommended for advanced use cases.
60486048

6049+
* **BETA** Using cloud-init with [Metadata](/docs/products/compute/compute-instances/guides/metadata/).
6050+
* Automate system configuration and software installation by providing a base-64 encoded [cloud-config](/docs/products/compute/compute-instances/guides/metadata-cloud-config/) file.
6051+
* Requires a compatible Image. You can determine compatible Images by checking for `cloud-init` under `capabilities` when using Images List ([GET /images](/docs/api/images/#images-list)).
6052+
* Requires a compatible Region. You can determine compatible Regions by checking for `Metadata` under `capabilities` when using Regions List ([GET /regions](/docs/api/regions/#regions-list)).
6053+
* This feature is in beta and is currently limited to certain Regions and distributions. Please be aware that this feature may receive breaking updates in the future. This notice will be removed when this feature is out of beta.
6054+
60496055
**Important**: You must be an unrestricted User in order to add or modify
60506056
tags on Linodes.
60516057
tags:
@@ -6148,7 +6154,7 @@ paths:
61486154
"backup_id": 1234,
61496155
"backups_enabled": true,
61506156
"swap_size": 512,
6151-
"image": "linode/debian9",
6157+
"image": "linode/ubuntu22.04",
61526158
"root_pass": "aComplexP@ssword",
61536159
"stackscript_id": 10079,
61546160
"stackscript_data": {
@@ -6177,7 +6183,10 @@ paths:
61776183
"label": "linode123",
61786184
"type": "g6-standard-2",
61796185
"region": "us-east",
6180-
"group": "Linode-Group"
6186+
"group": "Linode-Group",
6187+
"metadata": {
6188+
"user_data": "I2Nsb3VkLWNvbmZpZw=="
6189+
}
61816190
}' \
61826191
https://api.linode.com/v4/linode/instances
61836192
- lang: CLI
@@ -6190,9 +6199,10 @@ paths:
61906199
--stackscript_data '{"gh_username": "linode"}' \
61916200
--region us-east \
61926201
--type g6-standard-2 \
6193-
--authorized_keys "ssh-rsa AAAA_valid_public_ssh_key_123456785== user@their-computer"
6194-
--authorized_users "myUser"
6195-
--authorized_users "secondaryUser"
6202+
--authorized_keys "ssh-rsa AAAA_valid_public_ssh_key_123456785== user@their-computer" \
6203+
--authorized_users "myUser" \
6204+
--authorized_users "secondaryUser" \
6205+
--metadata.user_data "I2Nsb3VkLWNvbmZpZw==)"
61966206
/linode/instances/{linodeId}:
61976207
parameters:
61986208
- name: linodeId
@@ -21306,6 +21316,18 @@ components:
2130621316

2130721317
The "+order_by" and "+order" operators are not available for [filtering](/docs/api/#filtering-and-sorting) on this key.
2130821318
example: available
21319+
capabilities:
21320+
x-linode-cli-display: 8
21321+
type: array
21322+
readOnly: true
21323+
description: |
21324+
A list containing the following possible capabilities of this Image:
21325+
21326+
`cloud-init`: This Image supports cloud-init with [Metadata](/docs/products/compute/compute-instances/guides/metadata/). Only applies to public Images.
21327+
items:
21328+
type: string
21329+
example:
21330+
- cloud-init
2130921331
Invoice:
2131021332
type: object
2131121333
description: Account Invoice object
@@ -22365,6 +22387,11 @@ components:
2236522387
description: The Linode's host machine, as a UUID.
2236622388
readOnly: true
2236722389
example: 3a3ddd59d9a78bb8de041391075df44de62bfec8
22390+
has_user_data:
22391+
type: boolean
22392+
description: Whether this compute instance was provisioned utilizing `user_data` provided via the Metadata service. See the [Linode Create](/docs/api/linode-instances/#linode-create) description for more information on Metadata.
22393+
readOnly: true
22394+
example: true
2236822395
LinodeConfig:
2236922396
type: object
2237022397
properties:
@@ -22568,6 +22595,22 @@ components:
2256822595
If it is deployed from an Image or a Backup and you wish it to remain `offline`
2256922596
after deployment, set this to `false`.
2257022597
default: true
22598+
metadata:
22599+
type: object
22600+
writeOnly: true
22601+
description: |
22602+
An object containing user-defined data relevant to the creation of Linodes.
22603+
properties:
22604+
user_data:
22605+
type: string
22606+
format: byte
22607+
description: |
22608+
Base64-encoded [cloud-config](/docs/products/compute/compute-instances/guides/metadata-cloud-config/) data.
22609+
22610+
Must not be included when cloning to an existing Linode.
22611+
22612+
Unencoded data must not exceed 65535 bytes, or about 16kb encoded.
22613+
example: I2Nsb3VkLWNvbmZpZwpwYWNrYWdlX3VwZGF0ZTogdHJ1ZQpwYWNrYWdlX3VwZ3JhZGU6IHRydWU=
2257122614
LinodeStats:
2257222615
type: object
2257322616
description: >

0 commit comments

Comments
 (0)