Skip to content

Release v1.7.0

Compare
Choose a tag to compare
@angelbarrera92 angelbarrera92 released this 02 Jun 17:01
· 221 commits to main since this release

Disaster Recovery Core Module version 1.7.0

SIGHUP team maintains this module updated and tested. That is the main reason why we worked on this new release.
With the Kubernetes 1.21 release, it became the perfect time to start testing this module against this Kubernetes
release.

Continue reading the Changelog to discover them:

Changelog

  • Update velero. From version 1.5.2 to 1.6.0.
    • Update Minio to the latest to enable verero-on-prem.
    • Update aws, gcp, azure providers.
    • Simplify interface for eks-velero module
    • Simplify interface for aws-velero module
    • Simplify interface for gcp-velero module
    • Simplify interface for azure-velero module
  • Update required terraform version to 0.15.4
  • Kubernetes support:
    • Deprecate Kubernetes 1.17 support.
    • Kubernetes 1.20 is considered stable.
    • Kubernetes 1.21 is considered tech preview.

Upgrade path

Terraform modules

To upgrade this core module from v1.6.X, you need to download this new version, then apply the
terraform project. Replace the module interface to match the new one. Ensure you are running terraform 0.15.4.

modules/eks-velero

Old interface:

locals {
    eks_oidc_issuer = replace(data.aws_eks_cluster.this.identity.0.oidc.0.issuer, "https://", "")
}

module "velero" {
  source             = "../vendor/modules/eks-velero"
  name               = "my-cluster"
  env                = "test"
  backup_bucket_name = "my-cluster-velero"
  oidc_provider_url  = local.eks_oidc_issuer
  region             = "eu-west-1"
}

New interface:

locals {
    eks_oidc_issuer = replace(data.aws_eks_cluster.this.identity.0.oidc.0.issuer, "https://", "")
}

module "velero" {
  source             = "../vendor/modules/eks-velero"
  backup_bucket_name = "my-cluster-velero"
  oidc_provider_url  = local.eks_oidc_issuer
  tags               = {
      "cluster" : "my-cluster",
      "env"     : "test",
      "any-key" : "any-value"
  }
}

modules/aws-velero

Old interface:

module "velero" {
  source             = "../vendor/modules/aws-velero"
  name               = "my-cluster"
  env                = "staging"
  backup_bucket_name = "my-cluster-staging-velero"
  region             = "eu-west-1"
}

New interface:

module "velero" {
  source             = "../vendor/modules/aws-velero"
  backup_bucket_name = "my-cluster-staging-velero"
  tags               = {
    "my-key": "my-value"
  }
}

modules/gcp-velero

Old interface:

module "velero" {
  source             = "../vendor/modules/gcp-velero"
  name               = "my-cluster"
  env                = "staging"
  backup_bucket_name = "my-cluster-staging-velero"
  project            = "sighup-staging"
}

New interface:

module "velero" {
  source             = "../vendor/modules/gcp-velero"
  backup_bucket_name = "my-cluster-staging-velero"
  project            = "sighup-staging"
  tags               = {
    "my-key": "my-value"
  }
}

modules/azure-velero

Old interface:

module "velero" {
  source                     = "../vendor/modules/azure-velero"
  name                       = "sighup"
  env                        = "production"
  backup_bucket_name         = "sighup-production-cluster-backup"
  aks_resource_group_name    = "XXX"
  velero_resource_group_name = "XXX"
}

New interface:

module "velero" {
  source                     = "../vendor/modules/azure-velero"
  backup_bucket_name         = "sighup-production-cluster-backup"
  aks_resource_group_name    = "XXX"
  velero_resource_group_name = "XXX"
  tags                       = {
    "my-key": "my-value"
  }
}
terraform init --reconfigure
terraform plan
terraform apply

Katalog

To upgrade this core module from v1.6.x to v1.7.0, you need to download this new version, then apply the
kustomize project. No further action is required.

$ kustomize build katalog/velero-on-prem | kubectl apply -f -
# or
$ kustomize build katalog/velero-aws | kubectl apply -f -
# or
$ kustomize build katalog/velero-gcp | kubectl apply -f -
# or
$ kustomize build katalog/velero-azure | kubectl apply -f -
# and/or
$ kustomize build katalog/velero-restic | kubectl apply -f -