New model for buckets #172
4 changed files with 14 additions and 20 deletions
|
@ -170,16 +170,16 @@ impl WebsiteConfiguration {
|
|||
}
|
||||
|
||||
pub fn into_garage_website_config(self) -> Result<WebsiteConfig, Error> {
|
||||
if let Some(rart) = self.redirect_all_requests_to {
|
||||
Ok(WebsiteConfig::RedirectAll {
|
||||
hostname: rart.hostname.0,
|
||||
protocol: rart
|
||||
.protocol
|
||||
.map(|x| x.0)
|
||||
.unwrap_or_else(|| "http".to_string()),
|
||||
})
|
||||
if self.redirect_all_requests_to.is_some() {
|
||||
Err(Error::NotImplemented(
|
||||
"S3 website redirects are not currently implemented in Garage.".into(),
|
||||
))
|
||||
} else if self.routing_rules.map(|x| !x.is_empty()).unwrap_or(false) {
|
||||
Err(Error::NotImplemented(
|
||||
"S3 routing rules are not currently implemented in Garage.".into(),
|
||||
))
|
||||
} else {
|
||||
Ok(WebsiteConfig::Website {
|
||||
Ok(WebsiteConfig {
|
||||
index_document: self
|
||||
.index_document
|
||||
.map(|x| x.suffix.0)
|
||||
|
|
|
@ -541,7 +541,7 @@ impl AdminRpcHandler {
|
|||
}
|
||||
|
||||
let website = if query.allow {
|
||||
Some(WebsiteConfig::Website {
|
||||
Some(WebsiteConfig {
|
||||
index_document: "index.html".into(),
|
||||
error_document: None,
|
||||
})
|
||||
|
|
|
@ -43,15 +43,9 @@ pub struct BucketParams {
|
|||
}
|
||||
|
||||
#[derive(PartialEq, Eq, Clone, Debug, Serialize, Deserialize)]
|
||||
pub enum WebsiteConfig {
|
||||
RedirectAll {
|
||||
hostname: String,
|
||||
protocol: String,
|
||||
},
|
||||
Website {
|
||||
index_document: String,
|
||||
error_document: Option<String>,
|
||||
},
|
||||
pub struct WebsiteConfig {
|
||||
pub index_document: String,
|
||||
pub error_document: Option<String>,
|
||||
}
|
||||
|
||||
impl BucketParams {
|
||||
|
|
|
@ -70,7 +70,7 @@ impl Migrate {
|
|||
let alias_ts = aliases.get_timestamp(&new_name);
|
||||
|
||||
let website = if *old_bucket_p.website.get() {
|
||||
Some(WebsiteConfig::Website {
|
||||
Some(WebsiteConfig {
|
||||
index_document: "index.html".into(),
|
||||
error_document: None,
|
||||
})
|
||||
|
|
Loading…
Reference in a new issue