Skip to content

Commit 3597667

Browse files
authored
Merge pull request #4 from bjhess/add-restart-service-endpoint
Add restart endpoint for services.
2 parents 445be3a + 8ccaf82 commit 3597667

File tree

3 files changed

+34
-0
lines changed

3 files changed

+34
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ end
5656
client.services.create(name: "my-new-service", ...)
5757
# https://api-docs.render.com/reference/update-service
5858
client.services.update(service_id, name: "my-new-service", ...)
59+
client.services.restart(service_id)
5960
client.services.delete(service_id)
6061

6162
client.services.suspend(service_id)

lib/render_api/clients/services.rb

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ def resume(service_id)
4343
endpoint.post("/services/#{service_id}/resume")
4444
end
4545

46+
def restart(service_id)
47+
endpoint.post("/services/#{service_id}/restart")
48+
end
49+
4650
def scale(service_id, num_instances:)
4751
endpoint.post(
4852
"/services/#{service_id}/scale",

spec/features/services_spec.rb

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,35 @@
338338
end
339339
end
340340

341+
describe "restart" do
342+
let(:id) { "my-service" }
343+
344+
before :each do
345+
stub_request(:post, "https://api.render.com/v1/services/#{id}/restart")
346+
.to_return(status: 202)
347+
end
348+
349+
it "returns true if successful" do
350+
response = subject.restart(id)
351+
352+
expect(response).to eq(true)
353+
end
354+
355+
it "raises an exception if the request failed" do
356+
stub_request(:post, "https://api.render.com/v1/services/#{id}/restart")
357+
.to_return_json(
358+
status: 404,
359+
body: {
360+
"id" => "not-found",
361+
"message" => "Not Found"
362+
}
363+
)
364+
365+
expect { subject.restart(id) }
366+
.to raise_error(RenderAPI::RequestError)
367+
end
368+
end
369+
341370
describe "scale" do
342371
let(:id) { "my-service" }
343372

0 commit comments

Comments
 (0)