Skip to content
Snippets Groups Projects

api/projects/runners: support project names for enable/disable

3 files
+ 25
12
Compare changes
  • Side-by-side
  • Inline
Files
3
@@ -6,25 +6,27 @@
use derive_builder::Builder;
use crate::api::common::NameOrId;
use crate::api::endpoint_prelude::*;
/// Disable a runner on a project.
#[derive(Debug, Builder, Clone)]
pub struct DisableProjectRunner {
pub struct DisableProjectRunner<'a> {
/// The ID or URL-encoded path of the project.
project: u64,
#[builder(setter(into))]
project: NameOrId<'a>,
/// The ID of the runner.
runner: u64,
}
impl DisableProjectRunner {
impl<'a> DisableProjectRunner<'a> {
/// Create a builder for the endpoint.
pub fn builder() -> DisableProjectRunnerBuilder {
pub fn builder() -> DisableProjectRunnerBuilder<'a> {
DisableProjectRunnerBuilder::default()
}
}
impl Endpoint for DisableProjectRunner {
impl Endpoint for DisableProjectRunner<'_> {
fn method(&self) -> Method {
Method::DELETE
}
@@ -60,7 +62,7 @@ mod tests {
#[test]
fn runner_is_required() {
let err = DisableProjectRunner::builder()
.project(1)
.project("project/example")
.build()
.unwrap_err();
crate::test::assert_missing_field!(err, DisableProjectRunnerBuilderError, "runner");
Loading