Dedicated inference functionalities#1825
Merged
anup-deka merged 7 commits intodigitalocean:mainfrom Mar 24, 2026
Merged
Conversation
Feature/create dedicated inference
anup-deka
reviewed
Mar 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
For Update:
TestRunDedicatedInferenceUpdate - Updates an endpoint with a JSON spec file; verifies correct request is sent to the service
TestRunDedicatedInferenceUpdate_WithHuggingFaceToken -Updates with both spec and and hugging face token, flag; verifies secrets are included in the request
TestRunDedicatedInferenceUpdate_MissingID - Returns an error when no dedicated inference ID argument is provided
Update all commands
Update with a JSON spec
doctl dedicated-inference update --spec spec.json
Update with a YAML spec and Hugging Face token
doctl dedicated-inference update --spec spec.yaml --hugging-face-token ""
Update using stdin
cat spec.json | doctl dedicated-inference update --spec -
Show only specific columns
doctl di u --spec spec.yaml --format ID,Name,Status
For list:
TestRunDedicatedInferenceList - Lists all endpoints with no filters (empty region/name)
TestRunDedicatedInferenceList_WithRegion - Lists endpoints filtered by -- region nyc2
TestRunDedicatedInferenceList_WithName - Lists endpoints filtered by --name
List commands
List all endpoints
doctl dedicated-inference list
Filter by region
doctl dedicated-inference list --region nyc2
Filter by name
doctl dedicated-inference list --name my-endpoint
Short alias with format
doctl di ls --format ID,Name,Region,Status
For CreateToken:
TestRunDedicatedInferenceCreateToken - Creates an auth token with -- token name and verifies the correct request and token display
TestRunDedicatedInferenceCreateToken_MissingID - Returns an error when no dedicated inference ID is provided
Create tokens commands
Create a new auth token
doctl dedicated-inference create-token --token-name
Show only ID and Value
doctl dedicated-inference create-token --token-name --format ID,Value
For ListTokens:
TestRunDedicatedInferenceListTokens - Lists auth tokens for a given dedicated inference ID; verifies two tokens are displayed
TestRunDedicatedInferenceListTokens_MissingID - Returns an error when no dedicated inference ID is provided
List token commands
List all tokens for an endpoint
doctl dedicated-inference list-tokens
Show specific columns
doctl dedicated-inference list-tokens --format ID,Name,CreatedAt
For RevokeTokens:
TestRunDedicatedInferenceRevokeToken - Revokes a token with --force verifies both diID and tokenID are passed to the service
TestRunDedicatedInferenceRevokeToken_MissingArgs - Returns an error when no arguments are provided at all
TestRunDedicatedInferenceRevokeToken_MissingTokenID - Returns an error when only the dedicated inference ID is provided (missing token ID)
Revoke token endpoints
Revoke a token (with confirmation prompt)
doctl dedicated-inference revoke-token
Revoke without confirmation
doctl dedicated-inference revoke-token --force
For GetSizes:
TestRunDedicatedInferenceGetSizes - Retrieves GPU sizes; verifies the response includes GPU slug, pricing, regions, CPU, memory, and GPU details
Get sizes all commands
List all available GPU sizes and pricing
doctl dedicated-inference get-sizes
Using alias
doctl di gs
Show only slug, price, and regions
doctl dedicated-inference get-sizes --format GPUSlug,PricePerHour,Regions
for GetGPUModelConfig:
TestRunDedicatedInferenceGetGPUModelConfig - Retrieves GPU model configs; verifies two models returned with slug, name, gated status, and compatible GPU slugs
GPU all commands
List all supported GPU model configurations
doctl dedicated-inference get-gpu-model-config
Using alias
doctl di ggmc
Show only model slug and gated status
doctl dedicated-inference get-gpu-model-config --format ModelSlug,IsModelGated
Also added the integration tests for all.