Skip to content

Commit

Permalink
feat(api): api update (#42)
Browse files Browse the repository at this point in the history
  • Loading branch information
stainless-app[bot] committed Jan 23, 2025
1 parent 93d1e94 commit b8afef7
Show file tree
Hide file tree
Showing 5 changed files with 4 additions and 179 deletions.
4 changes: 2 additions & 2 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
configured_endpoints: 20
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nirvana-labs%2Fnirvana-2b25d79eca57a37c23952533aa8514885103b3c8af056890c68291262b0c5d5c.yml
configured_endpoints: 17
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/nirvana-labs%2Fnirvana-070edd8ddaa5d517d634932ed6ee7a2b31ed0b1c8a3bf9b493861b704ba28bd9.yml
6 changes: 0 additions & 6 deletions api.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,12 +83,6 @@ Response Types:
- <a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes">volumes</a>.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes#StorageType">StorageType</a>
- <a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes">volumes</a>.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes#Volume">Volume</a>

Methods:

- <code title="post /vms/{vm_id}/volumes">client.Volumes.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes#VolumeService.New">New</a>(ctx <a href="https://pkg.go.dev/context">context</a>.<a href="https://pkg.go.dev/context#Context">Context</a>, vmID <a href="https://pkg.go.dev/builtin#string">string</a>, body <a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes">volumes</a>.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes#VolumeNewParams">VolumeNewParams</a>) (<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/operations">operations</a>.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/operations#Operation">Operation</a>, <a href="https://pkg.go.dev/builtin#error">error</a>)</code>
- <code title="patch /vms/{vm_id}/volumes/{volume_id}">client.Volumes.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes#VolumeService.Update">Update</a>(ctx <a href="https://pkg.go.dev/context">context</a>.<a href="https://pkg.go.dev/context#Context">Context</a>, vmID <a href="https://pkg.go.dev/builtin#string">string</a>, volumeID <a href="https://pkg.go.dev/builtin#string">string</a>, body <a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes">volumes</a>.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes#VolumeUpdateParams">VolumeUpdateParams</a>) (<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/operations">operations</a>.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/operations#Operation">Operation</a>, <a href="https://pkg.go.dev/builtin#error">error</a>)</code>
- <code title="delete /vms/{vm_id}/volumes/{volume_id}">client.Volumes.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/volumes#VolumeService.Delete">Delete</a>(ctx <a href="https://pkg.go.dev/context">context</a>.<a href="https://pkg.go.dev/context#Context">Context</a>, vmID <a href="https://pkg.go.dev/builtin#string">string</a>, volumeID <a href="https://pkg.go.dev/builtin#string">string</a>) (<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/operations">operations</a>.<a href="https://pkg.go.dev/github.com/nirvana-labs/nirvana-go/operations#Operation">Operation</a>, <a href="https://pkg.go.dev/builtin#error">error</a>)</code>

# Operations

Response Types:
Expand Down
4 changes: 2 additions & 2 deletions vms/vm.go
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ func (r VMNewParamsBootVolume) MarshalJSON() (data []byte, err error) {
return apijson.MarshalRoot(r)
}

// Data volume create request.
// VM data volume create request.
type VMNewParamsDataVolume struct {
Size param.Field[int64] `json:"size,required"`
// Storage type.
Expand Down Expand Up @@ -319,7 +319,7 @@ func (r VMUpdateParamsBootVolume) MarshalJSON() (data []byte, err error) {
return apijson.MarshalRoot(r)
}

// Data volume create request.
// VM data volume create request.
type VMUpdateParamsDataVolume struct {
Size param.Field[int64] `json:"size,required"`
// Storage type.
Expand Down
70 changes: 0 additions & 70 deletions volumes/volume.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,7 @@
package volumes

import (
"context"
"errors"
"fmt"
"net/http"

"github.com/nirvana-labs/nirvana-go/internal/apijson"
"github.com/nirvana-labs/nirvana-go/internal/param"
"github.com/nirvana-labs/nirvana-go/internal/requestconfig"
"github.com/nirvana-labs/nirvana-go/operations"
"github.com/nirvana-labs/nirvana-go/option"
)

Expand All @@ -34,50 +26,6 @@ func NewVolumeService(opts ...option.RequestOption) (r *VolumeService) {
return
}

// Create a Volume
func (r *VolumeService) New(ctx context.Context, vmID string, body VolumeNewParams, opts ...option.RequestOption) (res *operations.Operation, err error) {
opts = append(r.Options[:], opts...)
if vmID == "" {
err = errors.New("missing required vm_id parameter")
return
}
path := fmt.Sprintf("vms/%s/volumes", vmID)
err = requestconfig.ExecuteNewRequest(ctx, http.MethodPost, path, body, &res, opts...)
return
}

// Update a volume
func (r *VolumeService) Update(ctx context.Context, vmID string, volumeID string, body VolumeUpdateParams, opts ...option.RequestOption) (res *operations.Operation, err error) {
opts = append(r.Options[:], opts...)
if vmID == "" {
err = errors.New("missing required vm_id parameter")
return
}
if volumeID == "" {
err = errors.New("missing required volume_id parameter")
return
}
path := fmt.Sprintf("vms/%s/volumes/%s", vmID, volumeID)
err = requestconfig.ExecuteNewRequest(ctx, http.MethodPatch, path, body, &res, opts...)
return
}

// Delete a volume
func (r *VolumeService) Delete(ctx context.Context, vmID string, volumeID string, opts ...option.RequestOption) (res *operations.Operation, err error) {
opts = append(r.Options[:], opts...)
if vmID == "" {
err = errors.New("missing required vm_id parameter")
return
}
if volumeID == "" {
err = errors.New("missing required volume_id parameter")
return
}
path := fmt.Sprintf("vms/%s/volumes/%s", vmID, volumeID)
err = requestconfig.ExecuteNewRequest(ctx, http.MethodDelete, path, nil, &res, opts...)
return
}

// Storage type.
type StorageType string

Expand Down Expand Up @@ -118,21 +66,3 @@ func (r *Volume) UnmarshalJSON(data []byte) (err error) {
func (r volumeJSON) RawJSON() string {
return r.raw
}

type VolumeNewParams struct {
Size param.Field[int64] `json:"size,required"`
// Storage type.
Type param.Field[StorageType] `json:"type"`
}

func (r VolumeNewParams) MarshalJSON() (data []byte, err error) {
return apijson.MarshalRoot(r)
}

type VolumeUpdateParams struct {
Size param.Field[int64] `json:"size,required"`
}

func (r VolumeUpdateParams) MarshalJSON() (data []byte, err error) {
return apijson.MarshalRoot(r)
}
99 changes: 0 additions & 99 deletions volumes/volume_test.go

This file was deleted.

0 comments on commit b8afef7

Please sign in to comment.