ephemeris_forge_github/operation/
environments.rs1use std::fmt;
2
3use crate::BranchPolicy;
4use crate::api::request::EnvironmentBody;
5
6#[derive(Clone, Debug, Eq, PartialEq)]
8pub enum Operation {
9 Put {
11 name: String,
13 body: EnvironmentBody,
15 },
16 Delete {
18 name: String,
20 },
21 CreateBranchPolicy {
23 environment: String,
25 policy: BranchPolicy,
27 },
28 DeleteBranchPolicy {
30 environment: String,
32 id: u64,
34 name: String,
36 },
37}
38
39impl fmt::Display for Operation {
40 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
41 match self {
42 Self::Put { name, body: _ } | Self::Delete { name } => {
43 write!(f, "environment {name}")
44 }
45 Self::CreateBranchPolicy {
46 environment,
47 policy,
48 } => write!(f, "environment {environment} branch policy {}", policy.name),
49 Self::DeleteBranchPolicy {
50 environment,
51 id: _,
52 name,
53 } => write!(f, "environment {environment} branch policy {name}"),
54 }
55 }
56}