resource "postgresql_role" "slz_admin" {
  name            = "slz_admin"
  login           = true
  create_database = true
  create_role     = true

  roles = [
    "rds_superuser",
    postgresql_role.slz_owner.name,
    "admin_user",
    "chartmetric_owner",
  ]
}

resource "postgresql_role" "slz_owner" {
  name            = "slz_owner"
  login           = true
  create_database = true
  create_role     = false

  roles = [
    "admin_user",
  ]
}

resource "postgresql_role" "slz_user" {
  name  = "slz_user"
  login = true
}

resource "postgresql_role" "slz_user_iam" {
  name  = "slz_user_iam"
  login = true

  roles = [
    postgresql_role.slz_user.name,
    "rds_iam",
  ]
}

resource "postgresql_role" "slz_user_proxy" {
  name  = "slz_user_proxy"
  login = true

  roles = [
    postgresql_role.slz_user.name,
  ]
}

resource "postgresql_role" "slz_reader" {
  name  = "slz_reader"
  login = true
}

resource "postgresql_role" "slz_reader_iam" {
  name  = "slz_reader_iam"
  login = true

  roles = [
    postgresql_role.slz_reader.name,
    "rds_iam",
  ]
}

resource "postgresql_role" "slz_reader_proxy" {
  name  = "slz_reader_proxy"
  login = true

  roles = [
    postgresql_role.slz_reader.name,
  ]
}

resource "postgresql_role" "efedorov" {
  name  = "efedorov"
  login = true

  roles = [
    postgresql_role.slz_reader.name,
  ]
}

resource "postgresql_role" "chartmetric_owner" {
  name            = "chartmetric_owner"
  login           = true
  create_database = true
  create_role     = false
}

resource "postgresql_role" "chartmetric_user" {
  name  = "chartmetric_user"
  login = true
}

resource "postgresql_role" "chartmetric_user_iam" {
  name  = "chartmetric_user_iam"
  login = true

  roles = [
    postgresql_role.chartmetric_user.name,
    "rds_iam",
  ]
}

resource "postgresql_role" "chartmetric_user_proxy" {
  name  = "chartmetric_user_proxy"
  login = true

  roles = [
    postgresql_role.chartmetric_user.name,
  ]
}

resource "postgresql_role" "chartmetric_reader" {
  name  = "chartmetric_reader"
  login = true
}

resource "postgresql_role" "chartmetric_reader_iam" {
  name  = "chartmetric_reader_iam"
  login = true

  roles = [
    postgresql_role.chartmetric_reader.name,
    "rds_iam",
  ]
}

resource "postgresql_role" "chartmetric_reader_proxy" {
  name  = "chartmetric_reader_proxy"
  login = true

  roles = [
    postgresql_role.chartmetric_reader.name,
  ]
}

resource "postgresql_role" "readonly_user" {
  name  = "readonly_user"
  login = true
}

resource "postgresql_role" "write_user" {
  name            = "write_user"
  login           = true
  create_database = true
}
