Skip to main content

devops_armory/cloud/gcp/project/
models.rs

1use serde_derive::{Serialize, Deserialize};
2
3#[derive(Serialize, Deserialize, Default,Debug)]
4pub struct GcpProjectList {
5    pub projects: Vec<GcpProject>,
6}
7
8#[derive(Serialize, Deserialize, Default,Debug)]
9pub struct GcpProject {
10    pub name: String,
11    pub parent: String,
12    pub projectId: String,
13    pub state: String,
14    pub displayName: String,
15}
16
17#[derive(Deserialize,Default,Debug)]
18pub enum GcpProjectState {
19    STATE_UNSPECIFIED,
20    #[default] ACTIVE,
21    DELETE_REQUESTED,
22}
23
24#[derive(Serialize, Deserialize, Default,Debug)]
25pub struct GcpProjectCreate {
26    pub parent: String,
27    pub projectId: String,
28    pub state: String,
29    pub displayName: String,
30}
31
32#[derive(Serialize, Deserialize, Default,Debug)]
33pub struct BillingInfo {
34    pub billingAccountName: String,
35}
36