github.com/spinnaker/spin@v1.30.0/gateapi/api_plugin_publish_controller.go (about)

     1  
     2  /*
     3   * Spinnaker API
     4   *
     5   * No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)
     6   *
     7   * API version: 1.0.0
     8   * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
     9   */
    10  
    11  package swagger
    12  
    13  import (
    14  	"context"
    15  	"io/ioutil"
    16  	"net/http"
    17  	"net/url"
    18  	"strings"
    19  	"fmt"
    20  	"os"
    21  )
    22  
    23  // Linger please
    24  var (
    25  	_ context.Context
    26  )
    27  
    28  type PluginPublishControllerApiService service
    29  
    30  /* 
    31  PluginPublishControllerApiService Publish a plugin binary and the plugin info metadata.
    32   * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
    33   * @param plugin plugin
    34   * @param pluginId pluginId
    35   * @param pluginInfo pluginInfo
    36   * @param pluginVersion pluginVersion
    37  
    38  
    39  */
    40  func (a *PluginPublishControllerApiService) PublishPluginUsingPOST(ctx context.Context, plugin *os.File, pluginId string, pluginInfo interface{}, pluginVersion string) (*http.Response, error) {
    41  	var (
    42  		localVarHttpMethod = strings.ToUpper("Post")
    43  		localVarPostBody   interface{}
    44  		localVarFileName   string
    45  		localVarFileBytes  []byte
    46  		
    47  	)
    48  
    49  	// create path and map variables
    50  	localVarPath := a.client.cfg.BasePath + "/plugins/publish/{pluginId}/{pluginVersion}"
    51  	localVarPath = strings.Replace(localVarPath, "{"+"pluginId"+"}", fmt.Sprintf("%v", pluginId), -1)
    52  	localVarPath = strings.Replace(localVarPath, "{"+"pluginVersion"+"}", fmt.Sprintf("%v", pluginVersion), -1)
    53  
    54  	localVarHeaderParams := make(map[string]string)
    55  	localVarQueryParams := url.Values{}
    56  	localVarFormParams := url.Values{}
    57  
    58  	// to determine the Content-Type header
    59  	localVarHttpContentTypes := []string{"multipart/form-data"}
    60  
    61  	// set Content-Type header
    62  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    63  	if localVarHttpContentType != "" {
    64  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    65  	}
    66  
    67  	// to determine the Accept header
    68  	localVarHttpHeaderAccepts := []string{"*/*"}
    69  
    70  	// set Accept header
    71  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    72  	if localVarHttpHeaderAccept != "" {
    73  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    74  	}
    75      localVarFile := plugin
    76  	if localVarFile != nil {
    77  		fbs, _ := ioutil.ReadAll(localVarFile)
    78  		localVarFileBytes = fbs
    79  		localVarFileName = localVarFile.Name()
    80  		localVarFile.Close()
    81  	}
    82  	localVarFormParams.Add("pluginInfo", parameterToString(pluginInfo, ""))
    83  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
    84  	if err != nil {
    85  		return nil, err
    86  	}
    87  
    88  	localVarHttpResponse, err := a.client.callAPI(r)
    89  	if err != nil || localVarHttpResponse == nil {
    90  		return localVarHttpResponse, err
    91  	}
    92  
    93  	localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body)
    94  	localVarHttpResponse.Body.Close()
    95  	if err != nil {
    96  		return localVarHttpResponse, err
    97  	}
    98  
    99  
   100  	if localVarHttpResponse.StatusCode >= 300 {
   101  		newErr := GenericSwaggerError{
   102  			body: localVarBody,
   103  			error: localVarHttpResponse.Status,
   104  		}
   105  		
   106  		return localVarHttpResponse, newErr
   107  	}
   108  
   109  	return localVarHttpResponse, nil
   110  }