in internal/provider/bitbucketserver_connection_resource.go [203:258]
func (r *bitbucketServerConnectionResource) Update(ctx context.Context, req resource.UpdateRequest, resp *resource.UpdateResponse) {
// Retrieve values from plan
var plan bitbucketServerConnectionResourceModel
diags := req.Plan.Get(ctx, &plan)
resp.Diagnostics.Append(diags...)
if resp.Diagnostics.HasError() {
return
}
// Generate API request body from plan
id, err := strconv.Atoi(plan.ID.ValueString())
if err != nil {
resp.Diagnostics.AddError(
"Error updating bitbucketserverconnection",
"Could not update bitbucketserverconnection, unexpected error: "+err.Error(),
)
return
}
var bitbucketServerConnectionUpdate = client.BitbucketServerConnection{
ID: id,
CreatedAt: plan.CreatedAt.ValueString(),
Endpoint: plan.Endpoint.ValueString(),
Name: plan.Name.ValueString(),
Password: plan.Password.ValueString(),
Proxy: plan.Proxy.ValueString(),
RateLimitPerHour: int(plan.RateLimitPerHour.ValueInt64()),
UpdatedAt: time.Now().Format(time.RFC850),
Username: plan.Username.ValueString(),
}
// Update existing order
updatedBitbucketServerConnection, err := r.client.UpdateBitbucketServerConnection(plan.ID.ValueString(), bitbucketServerConnectionUpdate)
if err != nil {
resp.Diagnostics.AddError(
"Error updating bitbucketserverconnection",
"Could not update bitbucketserverconnection, unexpected error: "+err.Error(),
)
return
}
plan.ID = types.StringValue(strconv.Itoa(updatedBitbucketServerConnection.ID))
plan.LastUpdated = types.StringValue(time.Now().Format(time.RFC850))
plan.CreatedAt = types.StringValue(updatedBitbucketServerConnection.CreatedAt)
plan.Endpoint = types.StringValue(updatedBitbucketServerConnection.Endpoint)
plan.Name = types.StringValue(updatedBitbucketServerConnection.Name)
plan.Proxy = types.StringValue(updatedBitbucketServerConnection.Proxy)
plan.RateLimitPerHour = types.Int64Value(int64(updatedBitbucketServerConnection.RateLimitPerHour))
plan.UpdatedAt = types.StringValue(updatedBitbucketServerConnection.UpdatedAt)
plan.Username = types.StringValue(updatedBitbucketServerConnection.Username)
diags = resp.State.Set(ctx, plan)
resp.Diagnostics.Append(diags...)
if resp.Diagnostics.HasError() {
return
}
}