forked from JointCloud/pcm-coordinator
124 lines
3.6 KiB
Protocol Buffer
124 lines
3.6 KiB
Protocol Buffer
syntax = "proto3";
|
|
package slurm;
|
|
|
|
option go_package = "/slurmpb";
|
|
import "idl/slurm_node.proto";
|
|
import "idl/slurm_partition.proto";
|
|
import "idl/slurm_reservation.proto";
|
|
import "idl/slurm_ping.proto";
|
|
import "idl/slurmdb_cluster.proto";
|
|
import "idl/slurmdb_user.proto";
|
|
import "idl/slurmdb_assoc.proto";
|
|
import "idl/slurmdb_account.proto";
|
|
import "idl/slurmdb_qos.proto";
|
|
import "idl/slurmdb_wckey.proto";
|
|
import "idl/slurm_job.proto";
|
|
import "idl/slurm_diag.proto";
|
|
import "idl/slurmdb_job.proto";
|
|
|
|
// Slurm Services
|
|
service SlurmService {
|
|
|
|
// list all users from slurmdb
|
|
rpc ListUsers(ListUsersReq) returns (ListUsersResp);
|
|
|
|
// get specific user info from slurmdb
|
|
rpc GetUser(GetUserReq) returns (GetUserResp);
|
|
|
|
// add new user
|
|
rpc AddUser(AddUserReq) returns (AddUserResp);
|
|
|
|
// delete specific user
|
|
rpc DeleteUser(DeleteUserReq) returns (DeleteUserResp);
|
|
|
|
// list all associations from slurmdb
|
|
rpc ListAssociations(ListAssociationsReq) returns (ListAssociationsResp);
|
|
|
|
// get specific association info from slurmdb
|
|
rpc GetAssociation(GetAssociationReq) returns (GetAssociationResp);
|
|
|
|
// list all accounts info from slurmdb
|
|
rpc ListAccounts(ListAccountsReq) returns (ListAccountsResp);
|
|
|
|
// get specific account info from slurmdb
|
|
rpc GetAccount(GetAccountReq) returns (GetAccountResp);
|
|
|
|
// add account
|
|
rpc AddAccount(AddAccountReq) returns (AddAccountResp);
|
|
|
|
// delete account
|
|
rpc DeleteAccount(DeleteAccountReq) returns (DeleteAccountResp);
|
|
|
|
// list all wckeys info from slurmdb
|
|
rpc ListWckeys(ListWckeysReq) returns (ListWckeysResp);
|
|
|
|
// get specific wckey info from slurmdb
|
|
rpc GetWckey(GetWckeyReq) returns (GetWckeyResp);
|
|
|
|
// list all Cluster from slurmdb
|
|
rpc ListClusters(ListClustersReq) returns (ListClustersResp);
|
|
|
|
// get specific user info from slurmdb
|
|
rpc GetCluster(GetClusterReq) returns (GetClusterResp);
|
|
|
|
// add new user
|
|
rpc AddCluster(AddClusterReq) returns (AddClusterResp);
|
|
|
|
// delete specific user
|
|
rpc DeleteCluster(DeleteClusterReq) returns (DeleteClusterResp);
|
|
|
|
// list all Node from slurm
|
|
rpc ListNodes(ListNodesReq) returns (ListNodesResp);
|
|
|
|
// get specific Node info from slurm
|
|
rpc GetNode(GetNodeReq) returns (GetNodeResp);
|
|
|
|
// list all Partition from slurm
|
|
rpc ListPartitions(ListPartitionsReq) returns (ListPartitionsResp);
|
|
|
|
// get specific Partition info from slurm
|
|
rpc GetPartition(GetPartitionReq) returns (GetPartitionResp);
|
|
|
|
// list all Reservation from slurm
|
|
rpc ListReservations(ListReservationsReq) returns (ListReservationsResp);
|
|
|
|
// get specific Reservation info from slurm
|
|
rpc GetReservation(GetReservationReq) returns (GetReservationResp);
|
|
|
|
// list all jobs from slurm
|
|
rpc GetAllJobs(JobInfoMsgReq) returns (JobInfoMsgResp);
|
|
|
|
// get job by id from slurm
|
|
rpc GetJob(JobInfoMsgReq) returns (JobInfoMsgResp);
|
|
|
|
// submit job to slurm
|
|
rpc SubmitJob(SubmitJobReq) returns (SubmitJobResp);
|
|
|
|
// delete job from slurm
|
|
rpc DeleteJob(DeleteJobReq) returns (DeleteJobResp);
|
|
|
|
// update job from slurm
|
|
rpc UpdateJob(UpdateJobReq) returns (UpdateJobResp);
|
|
|
|
// list all diag from slurm
|
|
rpc GetDiag(DiagReq) returns (DiagResp);
|
|
|
|
// list all qoses from slurm
|
|
rpc GetQos(QosReq) returns (QosResp);
|
|
|
|
// list all jobs from slurmdb
|
|
rpc GetSlurmdbJobs(SlurmDbJobReq) returns (SlurmDbJobResp);
|
|
|
|
// get job by id from slurmdb
|
|
rpc GetSlurmdbJobById(SlurmDbJobReq) returns (SlurmDbJobResp);
|
|
|
|
// delete qos from slurmdb
|
|
rpc DeleteQos(DeleteQosReq) returns (DeleteQosResp);
|
|
|
|
// get qos by name from slurmdb
|
|
rpc GetQosByName(QosReq) returns (QosResp);
|
|
|
|
// add qos to slurmdb
|
|
rpc AddQos(AddQosReq) returns (AddQosResp);
|
|
}
|