refactor: clean up environment variables and remove unused Nextcloud configurations
This commit is contained in:
@@ -4,3 +4,7 @@ CONTABO_CLIENT_ID=$CONTABO_CLIENT_ID
|
|||||||
CONTABO_CLIENT_SECRET=$CONTABO_CLIENT_SECRET
|
CONTABO_CLIENT_SECRET=$CONTABO_CLIENT_SECRET
|
||||||
CONTABO_API_USER=$CONTABO_USER_NAME
|
CONTABO_API_USER=$CONTABO_USER_NAME
|
||||||
CONTABO_API_PASSWORD=$CONTABO_API_PASSWORD
|
CONTABO_API_PASSWORD=$CONTABO_API_PASSWORD
|
||||||
|
SCW_ACCESS_KEY=$SCALEWAY_ACCESS_KEY
|
||||||
|
SCW_SECRET_KEY=$SCALEWAY_SECRET_KEY
|
||||||
|
SCW_DEFAULT_PROJECT_ID=$SCALEWAY_PROJECT_ID
|
||||||
|
SCW_DEFAULT_ORGANIZATION_ID=$SCALEWAY_ORGANIZATION_ID
|
||||||
|
|||||||
@@ -30,16 +30,6 @@ resource "scaleway_object_bucket" "backup" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
lifecycle_rule {
|
|
||||||
id = "nextcloud-clean"
|
|
||||||
prefix = "nextcloud-backup/"
|
|
||||||
enabled = true
|
|
||||||
|
|
||||||
expiration {
|
|
||||||
days = local.cloud_backup_retention_days
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
lifecycle_rule {
|
lifecycle_rule {
|
||||||
id = "mail-clean"
|
id = "mail-clean"
|
||||||
prefix = "mail-backup/"
|
prefix = "mail-backup/"
|
||||||
@@ -86,49 +76,6 @@ resource "scaleway_object_bucket_policy" "backup" {
|
|||||||
]
|
]
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "scaleway_object_bucket" "nextcloud" {
|
|
||||||
name = "a13labs-nextcloud-${random_string.bucket_suffix.result}"
|
|
||||||
project_id = var.scaleway_project_id
|
|
||||||
region = "fr-par"
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "scaleway_object_bucket_policy" "nextcloud" {
|
|
||||||
bucket = scaleway_object_bucket.nextcloud.name
|
|
||||||
policy = jsonencode({
|
|
||||||
Version = "2023-04-17",
|
|
||||||
Id = "AllowAccess",
|
|
||||||
Statement = [
|
|
||||||
{
|
|
||||||
Effect = "Allow"
|
|
||||||
Action = [
|
|
||||||
"s3:*",
|
|
||||||
]
|
|
||||||
Principal = {
|
|
||||||
SCW = "user_id:${var.scaleway_user_id}"
|
|
||||||
}
|
|
||||||
Resource = [
|
|
||||||
scaleway_object_bucket.nextcloud.name,
|
|
||||||
"${scaleway_object_bucket.nextcloud.name}/*",
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
Effect = "Allow"
|
|
||||||
Action = [
|
|
||||||
"s3:*",
|
|
||||||
]
|
|
||||||
Principal = {
|
|
||||||
SCW = "application_id:${scaleway_iam_application.nextcloud_app.id}"
|
|
||||||
}
|
|
||||||
Resource = [
|
|
||||||
scaleway_object_bucket.nextcloud.name,
|
|
||||||
"${scaleway_object_bucket.nextcloud.name}/*",
|
|
||||||
]
|
|
||||||
},
|
|
||||||
]
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "scaleway_object_bucket" "dovecot" {
|
resource "scaleway_object_bucket" "dovecot" {
|
||||||
name = "a13labs-dovecot-${random_string.bucket_suffix.result}"
|
name = "a13labs-dovecot-${random_string.bucket_suffix.result}"
|
||||||
project_id = var.scaleway_project_id
|
project_id = var.scaleway_project_id
|
||||||
|
|||||||
@@ -6,10 +6,6 @@ resource "scaleway_iam_application" "mail_app" {
|
|||||||
name = "mail_app"
|
name = "mail_app"
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "scaleway_iam_application" "nextcloud_app" {
|
|
||||||
name = "nextcloud_app"
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "scaleway_iam_application" "dovecot_app" {
|
resource "scaleway_iam_application" "dovecot_app" {
|
||||||
name = "dovecot_app"
|
name = "dovecot_app"
|
||||||
}
|
}
|
||||||
@@ -47,23 +43,6 @@ resource "scaleway_iam_policy" "email_full_access" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "scaleway_iam_policy" "object_read_write_nextcloud" {
|
|
||||||
name = "Nextcloud app policy"
|
|
||||||
description = "Gives nextcloud job access to object storage in project"
|
|
||||||
application_id = scaleway_iam_application.nextcloud_app.id
|
|
||||||
|
|
||||||
rule {
|
|
||||||
project_ids = [data.scaleway_account_project.default.id]
|
|
||||||
permission_set_names = [
|
|
||||||
"ObjectStorageObjectsWrite",
|
|
||||||
"ObjectStorageObjectsRead",
|
|
||||||
"ObjectStorageBucketsRead",
|
|
||||||
"ObjectStorageBucketsWrite",
|
|
||||||
"ObjectStorageObjectsDelete"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "scaleway_iam_policy" "object_read_write_dovecot" {
|
resource "scaleway_iam_policy" "object_read_write_dovecot" {
|
||||||
name = "Dovecot app policy"
|
name = "Dovecot app policy"
|
||||||
description = "Gives dovecot job access to object storage in project"
|
description = "Gives dovecot job access to object storage in project"
|
||||||
@@ -109,11 +88,6 @@ resource "scaleway_iam_api_key" "mail_app_api" {
|
|||||||
description = "mail access API key"
|
description = "mail access API key"
|
||||||
}
|
}
|
||||||
|
|
||||||
resource "scaleway_iam_api_key" "nextcloud_app_api" {
|
|
||||||
application_id = scaleway_iam_application.nextcloud_app.id
|
|
||||||
description = "nextcloud access API key"
|
|
||||||
}
|
|
||||||
|
|
||||||
resource "scaleway_iam_api_key" "dovecot_app_api" {
|
resource "scaleway_iam_api_key" "dovecot_app_api" {
|
||||||
application_id = scaleway_iam_application.dovecot_app.id
|
application_id = scaleway_iam_application.dovecot_app.id
|
||||||
description = "dovecot access API key"
|
description = "dovecot access API key"
|
||||||
|
|||||||
@@ -23,18 +23,6 @@ variable "scaleway_secret_key" {
|
|||||||
sensitive = true
|
sensitive = true
|
||||||
}
|
}
|
||||||
|
|
||||||
variable "nextcloud_mysql_password" {
|
|
||||||
description = "MySQL access password"
|
|
||||||
type = string
|
|
||||||
sensitive = true
|
|
||||||
}
|
|
||||||
|
|
||||||
variable "nextcloud_admin_password" {
|
|
||||||
description = "Nextcloud access password"
|
|
||||||
type = string
|
|
||||||
sensitive = true
|
|
||||||
}
|
|
||||||
|
|
||||||
variable "wireguard_private_key" {
|
variable "wireguard_private_key" {
|
||||||
description = "Wireguard public key"
|
description = "Wireguard public key"
|
||||||
type = string
|
type = string
|
||||||
|
|||||||
@@ -8,8 +8,6 @@ TF_VAR_scaleway_organization_id=$SCALEWAY_ORGANIZATION_ID
|
|||||||
TF_VAR_mysql_root_password=$MYSQL_ROOT_PASSWORD
|
TF_VAR_mysql_root_password=$MYSQL_ROOT_PASSWORD
|
||||||
TF_VAR_wordpress_mysql_password=$MYSQL_WORDPRESS_PASSWORD
|
TF_VAR_wordpress_mysql_password=$MYSQL_WORDPRESS_PASSWORD
|
||||||
TF_VAR_gitea_mysql_password=$MYSQL_GITEA_PASSWORD
|
TF_VAR_gitea_mysql_password=$MYSQL_GITEA_PASSWORD
|
||||||
TF_VAR_nextcloud_mysql_password=$MYSQL_NEXTCLOUD_PASSWORD
|
|
||||||
TF_VAR_nextcloud_admin_password=$NEXTCLOUD_ADMIN_PASSWORD
|
|
||||||
TF_VAR_collabora_admin_password=$NEXTCLOUD_ADMIN_PASSWORD
|
TF_VAR_collabora_admin_password=$NEXTCLOUD_ADMIN_PASSWORD
|
||||||
TF_VAR_wireguard_private_key=$WIREGUARD_PRIVATE_KEY
|
TF_VAR_wireguard_private_key=$WIREGUARD_PRIVATE_KEY
|
||||||
TF_VAR_wireguard_public_key=$WIREGUARD_PUBLIC_KEY
|
TF_VAR_wireguard_public_key=$WIREGUARD_PUBLIC_KEY
|
||||||
|
|||||||
Reference in New Issue
Block a user