spilo icon indicating copy to clipboard operation
spilo copied to clipboard

AWS IMDSv2 Support for environment detection

Open kaiba42 opened this issue 1 year ago • 0 comments

Spilo is awesome and can automatically detect the environment it is running in.

To detect when it is running in AWS, it uses the Instance Metadata Service. Today, it uses v1 of the API, however AWS is transitioning to v2. Nowadays, new EC2 instance machine images often configured to only support v2.

Without support for detecting AWS using the v2 API, Spilo set the environment to PROVIDER_UNSUPPORTED, and will fail to perform certain bootstrap actions, namely backup (aka clone) restoration.

To fix this, we just need to call IMDSv2's session token endpoint in the get_provider function, and if we get a response, we know the environment is still AWS.

kaiba42 avatar Jan 17 '24 01:01 kaiba42