forked from github-starred/komodo
work on permissions api
This commit is contained in:
@@ -281,10 +281,8 @@ pub enum Operation {
|
||||
DeleteGroup,
|
||||
|
||||
// user
|
||||
ModifyUserEnabled,
|
||||
ModifyUserCreateServerPermissions,
|
||||
ModifyUserCreateBuildPermissions,
|
||||
ModifyUserPermissions,
|
||||
UpdateUserPermissions,
|
||||
UpdateUserPermissionsOnTarget,
|
||||
|
||||
// github webhook automation
|
||||
AutoBuild,
|
||||
|
||||
@@ -19,7 +19,7 @@ pub struct Update {
|
||||
with = "hex_string_as_object_id"
|
||||
)]
|
||||
pub id: String,
|
||||
pub target: UpdateTarget,
|
||||
pub target: ResourceTarget,
|
||||
pub operation: Operation,
|
||||
pub logs: Vec<Log>,
|
||||
pub start_ts: I64,
|
||||
@@ -88,7 +88,7 @@ impl Log {
|
||||
#[typeshare]
|
||||
#[derive(Serialize, Deserialize, Debug, Clone, Default, MungosIndexed)]
|
||||
#[serde(tag = "type", content = "id")]
|
||||
pub enum UpdateTarget {
|
||||
pub enum ResourceTarget {
|
||||
#[default]
|
||||
System,
|
||||
Build(String),
|
||||
|
||||
@@ -16,6 +16,9 @@ pub use build::*;
|
||||
mod builder;
|
||||
pub use builder::*;
|
||||
|
||||
mod permissions;
|
||||
pub use permissions::*;
|
||||
|
||||
//
|
||||
|
||||
#[typeshare]
|
||||
|
||||
27
lib/types/src/requests/api/permissions.rs
Normal file
27
lib/types/src/requests/api/permissions.rs
Normal file
@@ -0,0 +1,27 @@
|
||||
use resolver_api::derive::Request;
|
||||
use serde::{Deserialize, Serialize};
|
||||
use typeshare::typeshare;
|
||||
|
||||
use crate::entities::{
|
||||
update::{ResourceTarget, Update},
|
||||
PermissionLevel,
|
||||
};
|
||||
|
||||
#[typeshare]
|
||||
#[derive(Serialize, Deserialize, Debug, Clone, Request)]
|
||||
#[response(Update)]
|
||||
pub struct UpdateUserPermissionsOnTarget {
|
||||
pub user_id: String,
|
||||
pub permission: PermissionLevel,
|
||||
pub target: ResourceTarget,
|
||||
}
|
||||
|
||||
#[typeshare]
|
||||
#[derive(Serialize, Deserialize, Debug, Clone, Request)]
|
||||
#[response(Update)]
|
||||
pub struct UpdateUserPermissions {
|
||||
pub user_id: String,
|
||||
pub enabled: Option<bool>,
|
||||
pub create_servers: Option<bool>,
|
||||
pub create_builds: Option<bool>,
|
||||
}
|
||||
Reference in New Issue
Block a user