statehub_api/
v0.rs

1//
2// Copyright (c) 2022 RepliXio Ltd. All rights reserved.
3// Use is subject to license terms.
4//
5
6use std::collections::HashMap;
7use std::convert::Infallible;
8use std::fmt;
9use std::ops;
10use std::str;
11
12use chrono::{DateTime, Utc};
13use serde::{Deserialize, Serialize};
14use serde_with::{skip_serializing_none, DeserializeFromStr, SerializeDisplay};
15use statehub_location::{AwsRegion, AzureRegion, Location};
16use uuid::Uuid;
17
18pub use self::aws::PrivateLinkServiceAws;
19pub use self::azure::PrivateLinkServiceAzure;
20pub use self::cluster::{
21    Cluster, ClusterLocationAws, ClusterLocationAzure, ClusterLocations, ClusterName, ClusterToken,
22    CreateClusterDto, Provider,
23};
24pub use self::error::CLUSTER_IS_STATE_OWNER;
25pub use self::error::CLUSTER_NOT_FOUND;
26pub use self::error::NOT_AUTHORIZED;
27pub use self::error::STATE_ALREADY_EXISTS;
28pub use self::error::UNAUTHENTICATED;
29pub use self::error::VOLUME_NOT_FOUND;
30pub use self::error::{Error, Permission};
31pub use self::events::{Report, Reporter};
32pub use self::helm::Helm;
33pub use self::login::Login;
34pub use self::state::{
35    Condition, CreateStateDto, CreateStateLocationAwsDto, CreateStateLocationAzureDto,
36    CreateStateLocationsDto, ProvisioningStatus, State, StateLocationAws, StateLocationAzure,
37    StateLocationStatus, StateLocations, StateName, StorageClass,
38};
39pub use self::volume::{
40    CreateVolumeDto, LocationVolumeStatus, StateLocationVolumeProgress, Volume, VolumeBindingMode,
41    VolumeFileSystem, VolumeLocation, VolumeName, VolumeStatus,
42};
43
44mod aws;
45mod azure;
46mod cluster;
47mod error;
48mod events;
49mod helm;
50mod login;
51mod state;
52mod volume;
53
54pub const VERSION: &str = "/v0";