forked from vieter-v/vieter
feat(client): support removing repos, arch-repos & packages
parent
641cf22669
commit
b7af051103
|
@ -1,28 +1,27 @@
|
||||||
module client
|
module client
|
||||||
|
|
||||||
import models { BuildLog, BuildLogFilter }
|
import models { BuildLog, BuildLogFilter }
|
||||||
import net.http { Method }
|
|
||||||
import web.response { Response }
|
import web.response { Response }
|
||||||
import time
|
import time
|
||||||
|
|
||||||
// get_build_logs returns all build logs.
|
// get_build_logs returns all build logs.
|
||||||
pub fn (c &Client) get_build_logs(filter BuildLogFilter) ![]BuildLog {
|
pub fn (c &Client) get_build_logs(filter BuildLogFilter) ![]BuildLog {
|
||||||
params := models.params_from(filter)
|
params := models.params_from(filter)
|
||||||
data := c.send_request<[]BuildLog>(Method.get, '/api/v1/logs', params)!
|
data := c.send_request<[]BuildLog>(.get, '/api/v1/logs', params)!
|
||||||
|
|
||||||
return data.data
|
return data.data
|
||||||
}
|
}
|
||||||
|
|
||||||
// get_build_log returns a specific build log.
|
// get_build_log returns a specific build log.
|
||||||
pub fn (c &Client) get_build_log(id int) !BuildLog {
|
pub fn (c &Client) get_build_log(id int) !BuildLog {
|
||||||
data := c.send_request<BuildLog>(Method.get, '/api/v1/logs/$id', {})!
|
data := c.send_request<BuildLog>(.get, '/api/v1/logs/$id', {})!
|
||||||
|
|
||||||
return data.data
|
return data.data
|
||||||
}
|
}
|
||||||
|
|
||||||
// get_build_log_content returns the contents of the build log file.
|
// get_build_log_content returns the contents of the build log file.
|
||||||
pub fn (c &Client) get_build_log_content(id int) !string {
|
pub fn (c &Client) get_build_log_content(id int) !string {
|
||||||
data := c.send_request_raw_response(Method.get, '/api/v1/logs/$id/content', {}, '')!
|
data := c.send_request_raw_response(.get, '/api/v1/logs/$id/content', {}, '')!
|
||||||
|
|
||||||
return data
|
return data
|
||||||
}
|
}
|
||||||
|
@ -37,7 +36,7 @@ pub fn (c &Client) add_build_log(target_id int, start_time time.Time, end_time t
|
||||||
'exitCode': exit_code.str()
|
'exitCode': exit_code.str()
|
||||||
}
|
}
|
||||||
|
|
||||||
data := c.send_request_with_body<int>(Method.post, '/api/v1/logs', params, content)!
|
data := c.send_request_with_body<int>(.post, '/api/v1/logs', params, content)!
|
||||||
|
|
||||||
return data
|
return data
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
module client
|
||||||
|
|
||||||
|
// remove_repo removes an entire repository.
|
||||||
|
pub fn (c &Client) remove_repo(repo string) ! {
|
||||||
|
c.send_request<string>(.delete, '/$repo', {})!
|
||||||
|
}
|
||||||
|
|
||||||
|
// remove_arch_repo removes an entire arch-repo.
|
||||||
|
pub fn (c &Client) remove_arch_repo(repo string, arch string) ! {
|
||||||
|
c.send_request<string>(.delete, '/$repo/$arch', {})!
|
||||||
|
}
|
||||||
|
|
||||||
|
// remove_package removes a single package from the given arch-repo.
|
||||||
|
pub fn (c &Client) remove_package(repo string, arch string, pkgname string) ! {
|
||||||
|
c.send_request<string>(.delete, '/$repo/$arch/$pkgname', {})!
|
||||||
|
}
|
|
@ -1,12 +1,11 @@
|
||||||
module client
|
module client
|
||||||
|
|
||||||
import models { Target, TargetFilter }
|
import models { Target, TargetFilter }
|
||||||
import net.http { Method }
|
|
||||||
|
|
||||||
// get_targets returns a list of targets, given a filter object.
|
// get_targets returns a list of targets, given a filter object.
|
||||||
pub fn (c &Client) get_targets(filter TargetFilter) ![]Target {
|
pub fn (c &Client) get_targets(filter TargetFilter) ![]Target {
|
||||||
params := models.params_from(filter)
|
params := models.params_from(filter)
|
||||||
data := c.send_request<[]Target>(Method.get, '/api/v1/targets', params)!
|
data := c.send_request<[]Target>(.get, '/api/v1/targets', params)!
|
||||||
|
|
||||||
return data.data
|
return data.data
|
||||||
}
|
}
|
||||||
|
@ -34,7 +33,7 @@ pub fn (c &Client) get_all_targets() ![]Target {
|
||||||
|
|
||||||
// get_target returns the target for a specific id.
|
// get_target returns the target for a specific id.
|
||||||
pub fn (c &Client) get_target(id int) !Target {
|
pub fn (c &Client) get_target(id int) !Target {
|
||||||
data := c.send_request<Target>(Method.get, '/api/v1/targets/$id', {})!
|
data := c.send_request<Target>(.get, '/api/v1/targets/$id', {})!
|
||||||
|
|
||||||
return data.data
|
return data.data
|
||||||
}
|
}
|
||||||
|
@ -51,14 +50,14 @@ pub struct NewTarget {
|
||||||
// add_target adds a new target to the server.
|
// add_target adds a new target to the server.
|
||||||
pub fn (c &Client) add_target(t NewTarget) !int {
|
pub fn (c &Client) add_target(t NewTarget) !int {
|
||||||
params := models.params_from<NewTarget>(t)
|
params := models.params_from<NewTarget>(t)
|
||||||
data := c.send_request<int>(Method.post, '/api/v1/targets', params)!
|
data := c.send_request<int>(.post, '/api/v1/targets', params)!
|
||||||
|
|
||||||
return data.data
|
return data.data
|
||||||
}
|
}
|
||||||
|
|
||||||
// remove_target removes the target with the given id from the server.
|
// remove_target removes the target with the given id from the server.
|
||||||
pub fn (c &Client) remove_target(id int) !string {
|
pub fn (c &Client) remove_target(id int) !string {
|
||||||
data := c.send_request<string>(Method.delete, '/api/v1/targets/$id', {})!
|
data := c.send_request<string>(.delete, '/api/v1/targets/$id', {})!
|
||||||
|
|
||||||
return data.data
|
return data.data
|
||||||
}
|
}
|
||||||
|
@ -66,7 +65,7 @@ pub fn (c &Client) remove_target(id int) !string {
|
||||||
// patch_target sends a PATCH request to the given target with the params as
|
// patch_target sends a PATCH request to the given target with the params as
|
||||||
// payload.
|
// payload.
|
||||||
pub fn (c &Client) patch_target(id int, params map[string]string) !string {
|
pub fn (c &Client) patch_target(id int, params map[string]string) !string {
|
||||||
data := c.send_request<string>(Method.patch, '/api/v1/targets/$id', params)!
|
data := c.send_request<string>(.patch, '/api/v1/targets/$id', params)!
|
||||||
|
|
||||||
return data.data
|
return data.data
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue