openapi-github 0.1.0

OpenAPI specs from https://github.com/github/rest-api-description with the 'x-octokit' extension required by the Octokit SDKs
Documentation
/*
 * GitHub's official OpenAPI spec + Octokit extension
 *
 * OpenAPI specs from https://github.com/github/rest-api-description with the 'x-octokit' extension required by the Octokit SDKs
 *
 * The version of the OpenAPI document: 16.6.0
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ReposUpdateInformationAboutPagesSiteRequest {
    /// Specify a custom domain for the repository. Sending a `null` value will remove the custom domain. For more about custom domains, see \"[Using a custom domain with GitHub Pages](https://docs.github.com/articles/using-a-custom-domain-with-github-pages/).\"
    #[serde(rename = "cname", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
    pub cname: Option<Option<String>>,
    /// Specify whether HTTPS should be enforced for the repository.
    #[serde(rename = "https_enforced", skip_serializing_if = "Option::is_none")]
    pub https_enforced: Option<bool>,
    /// The process by which the GitHub Pages site will be built. `workflow` means that the site is built by a custom GitHub Actions workflow. `legacy` means that the site is built by GitHub when changes are pushed to a specific branch.
    #[serde(rename = "build_type", skip_serializing_if = "Option::is_none")]
    pub build_type: Option<BuildType>,
    #[serde(rename = "source", skip_serializing_if = "Option::is_none")]
    pub source: Option<Box<models::ReposUpdateInformationAboutPagesSiteRequestSource>>,
}

impl ReposUpdateInformationAboutPagesSiteRequest {
    pub fn new() -> ReposUpdateInformationAboutPagesSiteRequest {
        ReposUpdateInformationAboutPagesSiteRequest {
            cname: None,
            https_enforced: None,
            build_type: None,
            source: None,
        }
    }
}
/// The process by which the GitHub Pages site will be built. `workflow` means that the site is built by a custom GitHub Actions workflow. `legacy` means that the site is built by GitHub when changes are pushed to a specific branch.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum BuildType {
    #[serde(rename = "legacy")]
    Legacy,
    #[serde(rename = "workflow")]
    Workflow,
}

impl Default for BuildType {
    fn default() -> BuildType {
        Self::Legacy
    }
}