Skip to content

Latest commit

 

History

History
358 lines (235 loc) · 29.1 KB

CHANGELOG.md

File metadata and controls

358 lines (235 loc) · 29.1 KB

2.6.1 (August 07, 2024)

BUG FIXES:

  • Workspace: Fix an issue where the controller fails to update CR Status when CR gets modified during the reconciliation. [GH-457]
  • Workspace: Fix an issue where, in some circumstances, the controller cannot properly handle the deletion event. [GH-460]

ENHANCEMENTS:

  • Helm Chart: Add the ability to configure the Deployment priority class. [GH-451]

Community Contributors 🙌

2.6.0 (July 30, 2024)

NOTES:

  • The AgentPool CRD has been changed. Please follow the Helm chart instructions on how to upgrade it. [GH-441]

BUG FIXES:

  • Project: Fix an issue where calls to paginated API endpoints were only fetching the first page of results. [GH-426]
  • AgentPool: Fix an issue where calls to paginated API endpoints were only fetching the first page of results. [GH-426]
  • Workspace: Fix an issue where calls to paginated API endpoints were only fetching the first page of results. [GH-426]

ENHANCEMENTS:

  • Helm Chart: Add the ability to configure the service account. [GH-431]
  • AgentPool: Add the ability to configure scale-up and scale-down autoscaling times separately via the cooldown.scaleUpSeconds and cooldown.scaleDownSeconds attributes, respectively. [GH-441]

DEPENDENCIES:

  • Bump github.com/hashicorp/go-slug from 0.15.0 to 0.15.2. [GH-435]
  • Bump github.com/onsi/ginkgo/v2 from 2.16.0 to 2.19.0. [GH-415]
  • Bump github.com/onsi/gomega from 1.31.1 to 1.33.1. [GH-415]

Community Contributors 🙌

  • @frgray made their contribution in hashicorp#431
  • @jtdoepke made their contribution in hashicorp#426
  • @omelnyk1 for sharing his Helm expertise and valuable feedback 🚀

2.5.0 (July 09, 2024)

NOTES:

  • In upcoming releases, we shall proceed with renaming this project to HCP Terraform Operator for Kubernetes or simply HCP Terraform Operator. This measure is necessary in response to the recent announcement of The Infrastructure Cloud. The most noticeable change you can expect in version 2.6.0 is the renaming of this repository and related resources, such as the Helm chart and Docker Hub names. Please follow the changelogs for updates.

FEATURES:

  • Helm: Add a new value called controllers.agentPool.syncPeriod to set the CLI option --agent-pool-sync-period. [GH-421]
  • AgentPool: Add a new CLI option called --agent-pool-sync-period to set the time interval for re-queuing Agent Pool resources once they are successfully reconciled. [GH-421]

ENHANCEMENTS:

  • AgentPool: Update reconciliation logic to reduce the number of API calls. The controller now reconciles custom resources after the cooldown period if applicable; otherwise, the default timer is applied. [GH-420]
  • AgentPool: The agent auroscaling logic has been updated to decrease the frequency of API calls. The controller now utilizes the List Workspaces API call with filtering based on the current run status, thereby reducing the total number of API calls needed. [GH-419]
  • Helm Chart: Add the ability to configure the security context of the Deployment pod and containers. [GH-432]

Community Contributors 🙌

2.4.1 (June 07, 2024)

NOTES:

  • In upcoming releases, we shall proceed with renaming this project to HCP Terraform Operator for Kubernetes or simply HCP Terraform Operator. This measure is necessary in response to the recent announcement of The Infrastructure Cloud. The most noticeable change you can expect in version 2.6.0 is the renaming of this repository and related resources, such as the Helm chart and Docker Hub names. Please follow the changelogs for updates.

BUG FIXES:

  • Module: Fix an issue where the controller cannot create ConfigMap and Secret for outputs when a Module custom resource metadata.name is longer than 63 characters. This issue occurs because the controller uses the custom resource name as the value for the ModuleName label in ConfigMap and Secret. The ModuleName label has been removed." [GH-423]
  • Workspace: Fix an issue where the controller cannot create ConfigMap and Secret for outputs when a Workspace custom resource metadata.name is longer than 63 characters. This issue occurs because the controller uses the custom resource name as the value for the workspaceName label in ConfigMap and Secret. The workspaceName label has been removed. [GH-423]

DEPENDENCIES:

  • Bump github.com/hashicorp/go-tfe from 1.49.0 to 1.55.0. [GH-422]
  • Bump kube-rbac-proxy from 0.17.0 to 0.18.0. [GH-424]

Community Contributors 🙌

  • @jtdoepke made their contribution in hashicorp#423
  • @nabadger for constantly providing us with a valuable feedback 🚀

2.4.0 (May 07, 2024)

NOTES:

  • The Workspace CRD has been changed. Please follow the Helm chart instructions on how to upgrade it. [GH-390]
  • In upcoming releases, we shall proceed with renaming this project to HCP Terraform Operator for Kubernetes or simply HCP Terraform Operator. This measure is necessary in response to the recent announcement of The Infrastructure Cloud. The most noticeable change you can expect in version 2.6.0 is the renaming of this repository and related resources, such as the Helm chart and Docker Hub names. Please follow the changelogs for updates. [GH-393]

BUG FIXES:

  • Workspace: Fix an issue when the controller panics while accessing the default Project. [GH-394]

FEATURES:

  • Workspace: Add a new CLI option called --workspace-sync-period to set the time interval for re-queuing Workspace resources once they are successfully reconciled. [GH-391]
  • Helm: Add a new value called controllers.workspace.syncPeriod to set the CLI option --workspace-sync-period. [GH-391]

ENHANCEMENTS:

  • Workspace: Update variables reconciliation logic to reduce the number of API calls. [GH-390]

DEPENDENCIES:

  • Bump github.com/hashicorp/go-tfe from 1.47.1 to 1.49.0. [GH-378]
  • Bump kube-rbac-proxy from 0.16.0 to 0.17.0. [GH-392]
  • Bump k8s.io/api from 0.29.2 to 0.29.4. [GH-399]
  • Bump k8s.io/apimachinery from 0.29.2 to 0.29.4. [GH-399]
  • Bump k8s.io/client-go from 0.29.2 to 0.29.4. [GH-399]
  • Bump sigs.k8s.io/controller-runtime from 0.17.2 to 0.17.3. [GH-399]

2.3.0 (March 18, 2024)

BUG FIXES:

  • Workspace: Fix an issue when the boolean attribute allowDestroyPlan, with a default value of true, is set to false but unexpectedly gets mutated back to true during creation. [GH-337]

FEATURES:

  • Workspace: Add annotations support to trigger a new run. New annotations: workspace.app.terraform.io/run-new, workspace.app.terraform.io/run-type, workspace.app.terraform.io/run-terraform-version. [GH-364]

NOTES:

  • The Workspace CRD has been changed. Please follow the Helm chart instructions on how to upgrade it. [GH-342] [GH-364]

ENHANCEMENTS:

  • Helm Chart: Add a new attribute imagePullSecrets to enable pulling the Operator images from private repositories. [GH-326]
  • Module: The output will be synchronized when the run status is either applied or planned_and_finished, whereas previously it was only applied. [GH-351]
  • Workspace: Add the ability to configure automatic speculative plan on pull requests when using Version Control via a new optional field spec.versionControl.speculativePlans. Default to true. [GH-342]
  • Workspace: The output will be synchronized when the run status is either applied or planned_and_finished, whereas previously it was only applied. [GH-345]
  • Workspace: The output will be synchronized faster and require fewer API calls. [GH-345]
  • Workspace: The status now includes the current configuration version in status.run.configurationVersion. [GH-353]
  • Workspace: The controller will reconcile the workspace more frequently during incomplete runs to synchronize outputs faster. [GH-353]
  • Operator: Add a new option --version to print out the version of the operator. [GH-365]

DEPENDENCIES:

  • Bump kube-rbac-proxy image from 0.15.0 to 0.16.0. [GH-335]
  • Bump github.com/onsi/ginkgo/v2 from 2.13.2 to 2.16.0. [GH-328] [GH-363]
  • Bump github.com/onsi/gomega from 1.29.0 to 1.31.1. [GH-328] [GH-329]
  • Bump github.com/hashicorp/go-tfe from 1.41.0 to 1.47.1. [GH-332] [GH-354] [GH-366]
  • Bump github.com/hashicorp/go-slug from 0.13.3 to 0.14.0. [GH-332] [GH-354]
  • Bump sigs.k8s.io/controller-runtime from 0.15.3 to 0.17.2. [GH-340] [GH-358]
  • Bump k8s.io/api from 0.27.8 to 0.29.1. [GH-340] [GH-356]
  • Bump k8s.io/apimachinery from 0.27.8 to 0.29.2. [GH-340] [GH-356]
  • Bump k8s.io/client-go from 0.27.8 to 0.29.2. [GH-340] [GH-356]
  • Bump go.uber.org/zap from 1.26.0 to 1.27.0. [GH-355]
  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0. [GH-367]

Community Contributors 🙌

2.2.0 (January 16, 2024)

FEATURES:

  • Project: add a new controller Project that allows managing Terraform Cloud Projects. [GH-309].

DEPENDENCIES:

  • Bump k8s.io/api from 0.27.7 to 0.27.8. [GH-306]
  • Bump k8s.io/apimachinery from 0.27.7 to 0.27.8. [GH-306]
  • Bump k8s.io/client-go from 0.27.7 to 0.27.8. [GH-306]
  • Bump github.com/go-logr/zapr from 1.2.4 to 1.3.0. [GH-305]
  • Bump github.com/onsi/ginkgo/v2 from 2.13.0 to 2.13.2. [GH-307]
  • Bump github.com/hashicorp/go-tfe from 1.37.0 to 1.41.0. [GH-316]
  • Bump github.com/hashicorp/go-slug from 0.12.2 to 0.13.3. [GH-316]
  • Bump github.com/go-logr/logr from 1.3.0 to 1.4.1. [GH-317]
  • Bump kube-rbac-proxy image from 0.14.4 to 0.15.0. [GH-320]

2.1.0 (November 27, 2023)

ENHANCEMENT:

  • Workspace: Add the ability to configure the project for the workspace via a new field spec.project.[id | name]. [GH-300]

BUG FIXES:

  • Module: fix an issue when initiating foreground cascading deletion results in two destroy runs being triggered, and even after both runs are successfully executed, a module object persists in Kubernetes. [GH-301]

2.0.0 (November 06, 2023)

BUG FIXES:

  • Workspace: fix an issue of properly handling special characters when generating string output. [GH-289]
  • Module: fix an issue of properly handling special characters when generating string output. [GH-289]

ENHANCEMENT:

  • Helm Chart: Add the ability to configure kube-rbac-proxy image and resources. [GH-259] [GH-271]
  • AgentPool: Add the ability to use wildcard-name searches to target workspaces for autoscaling. [GH-274]
  • AgentPool: Make targetWorkspaces field optional and default to targeting all workspaces linked to an AgentPool. [GH-274]
  • AgentPool: Tweak autoscaling to take into account Planning and Applying states when computing the replica count for agents [GH-290]
  • AgentPool: Default agent pods to have a terminationGracePeriod of 15 minutes. [GH-290]

DOCS:

DEPENDENCIES:

  • Bump sigs.k8s.io/controller-runtime from 0.15.1 to 0.15.3. [GH-258] [GH-294]
  • Bump github.com/hashicorp/go-slug from 0.12.1 to 0.12.2. [GH-261]
  • Bump k8s.io/api from 0.27.5 to 0.27.7. [GH-264] [GH-292]
  • Bump k8s.io/apimachinery from 0.27.5 to 0.27.7. [GH-264] [GH-292]
  • Bump k8s.io/client-go from 0.27.5 to 0.27.7. [GH-264] [GH-292]
  • Bump kube-rbac-proxy image from 0.14.2 to 0.14.4. [GH-271] [GH-281]
  • Bump golang.org/x/net from 0.14.0 to 0.17.0. [GH-272]
  • Bump golang.org/x/sys from 0.11.0 to 0.13.0. [GH-272]
  • Bump golang.org/x/term from 0.11.0 to 0.13.0. [GH-272]
  • Bump golang.org/x/text from 0.12.0 to 0.13.0. [GH-272]
  • Bump github.com/hashicorp/go-tfe from 1.32.1 to 1.35.0. [GH-273]
  • Bump github.com/onsi/gomega from 1.28.1 to 1.29.0. [GH-291]
  • Bump github.com/go-logr/logr from 1.2.4 to 1.3.0. [GH-293]

Community Contributors 🙌

  • @kieranbrown made their contribution in hashicorp#259
  • @KamalAman for constantly providing us with a valuable feedback 🚀

2.0.0-beta8 (August 29, 2023)

BUG FIXES:

  • AgentPool: fix an issue when plan_queued and apply_queued statuses do not trigger agent scaling. [GH-215]
  • Helm Chart: fix an issue with the Deployment template in the Helm chart where name in path spec.template.spec.containers[0] was duplicated. [GH-216]
  • Workspace: fix an issue when the Operator panics when spec.executionMode is configured as agent but spec.agentPool is not set which is mandatory in this case. [GH-242]
  • Workspace: fix an issue when a new Workspace is successfully created, but its status.WorkspaceID status fails to update with a new Workspace ID due to an error during subsequent reconciliation. Consequently, the Workspace controller continuously encounters failures while attempting to reconcile the newly created Workspace. [GH-234]

ENHANCEMENT:

  • Operator: Add the ability to skip TLS certificate validation for communication between the Operator and the TFC/E endpoint. A new environment variable TFC_TLS_SKIP_VERIFY should be set to true to skip the validation. Default: false. [GH-222]
  • Helm Chart: Add a new parameter operator.skipTLSVerify to configure the ability to skip TLS certificate validation for communication between the Operator and the TFC/E endpoint. Default: false. [GH-222]
  • Workspace: Add spec.Tags validation to align with the TFC requirement. [GH-234]

DEPENDENCIES:

  • Bump github.com/hashicorp/go-tfe from 1.29.0 to 1.32.1. [GH-218] [GH-247]
  • Bump github.com/hashicorp/go-slug from 0.11.1 to 0.12.1. [GH-219] [GH-247]
  • Bump github.com/onsi/gomega from 1.27.8 to 1.27.10. [GH-247]
  • Bump go.uber.org/zap from 1.24.0 to 1.25.0. [GH-247]
  • Bump k8s.io/api from 0.27.3 to 0.27.5. [GH-247] [GH-252]
  • Bump k8s.io/apimachinery from 0.27.3 to 0.27.5. [GH-247] [GH-252]
  • Bump k8s.io/client-go from 0.27.3 to 0.27.5. [GH-247] [GH-252]
  • Bump sigs.k8s.io/controller-runtime from 0.15.0 to 0.15.1. [GH-247]
  • Bump kube-rbac-proxy image from 0.13.1 to 0.14.2. [GH-251]
  • Bump github.com/onsi/ginkgo/v2 from 2.11.0 to 2.12.0. [GH-254]

2.0.0-beta7 (July 07, 2023)

NOTES:

  • Helm Chart: the Helm chart version is synced to the Terraform Cloud Operator version. [GH-204]

BUG FIXES:

  • Operator: fix an issue when the operator couldn't be run on the amd64 platform. [GH-203]

ENHANCEMENT:

  • Helm Chart: operator.image.tag defaults to .Chart.AppVersion. [GH-204]
  • Workspace: add event filtering to reduce the number of unnecessary reconciliations. [GH-194]
  • AgentPool: add autoscaling field to allow configuration of a basic autoscaler for agent deployments based on pending runs. [GH-198]
  • Workspace: add Terraform version utilized in the Workspace to the status: status.TerraformVersion. [GH-206]

DOCS:

DEPENDENCIES:

  • Bump k8s.io/api from 0.27.2 to 0.27.3. [GH-195]
  • Bump k8s.io/apimachinery from 0.27.2 to 0.27.3. [GH-195]
  • Bump k8s.io/client-go from 0.27.2 to 0.27.3. [GH-195]
  • Bump github.com/onsi/ginkgo/v2 from 2.9.5 to 2.11.0. [GH-197]
  • Bump github.com/onsi/gomega from 1.27.7 to 1.27.8. [GH-197]
  • Bump github.com/hashicorp/go-tfe from 1.23.0 to 1.29.0. [GH-205]

2.0.0-beta6 (June 23, 2023)

NOTES:

  • Operator: the Operator no longer includes the global option --config. [GH-185]
  • Helm Chart: the Helm chart no longer includes the ConfigMap manager-config as it has been removed. [GH-185]
  • Helm Chart: the Helm chart now allows configuration of custom CA bundles [GH-173]

ENHANCEMENT:

  • Module: the Run now adopts the apply method of the Workspace in which it is executed. If the apply method is set to 'manual', the Run will remain on hold until it receives manual approval or rejection for the application or cancellation of the Run. [GH-170]
  • Module: add a new field spec.name that allows modifying the name of the module that is generated by the Operator. Default: this. [GH-172]
  • Workspace: mark fields .status.ObservedGeneration, .status.UpdateAt, and .status.runStatus.configurationVersion as optional. [GH-186]
  • Workspace: add an extra validation during the reconciliation to exit if the object contains the v1 finalizer finalizer.workspace.app.terraform.io. [GH-186]

DEPENDENCIES:

  • Bump github.com/go-logr/zapr from 1.2.3 to 1.2.4. [GH-185]
  • Bump github.com/onsi/ginkgo/v2 from 2.9.4 to 2.9.5. [GH-185]
  • Bump github.com/onsi/gomega from 1.27.6 to 1.27.7. [GH-185]
  • Bump k8s.io/api from 0.26.3 to 0.27.2. [GH-185]
  • Bump k8s.io/apimachinery from 0.26.3 to 0.27.2. [GH-185]
  • Bump k8s.io/client-go from 0.26.3 to 0.27.2. [GH-185]
  • Bump sigs.k8s.io/controller-runtime from 0.14.6 to 0.15.0. [GH-185]

2.0.0-beta5 (April 18, 2023)

BUG FIXES:

DEPENDENCIES:

  • Bump sigs.k8s.io/controller-runtime from 0.14.5 to 0.14.6 [GH-132]

2.0.0-beta4 (March 28, 2023)

ENHANCEMENT:

  • AgentPool: add custom resource spec validation. [GH-79]
  • AgentPool: add agentDeployment field to spec [GH-96]
  • Module: add custom resource spec validation. [GH-79]
  • Workspace: add custom resource spec validation. [GH-79]
  • Workspace: add notifications field to spec [GH-107]
  • Workspace: add runTasks field to spec [GH-89]

BUG FIXES:

  • Module: fix an issue when custom resource fails if it refers to Workspace by ID. [GH-77]

DEPENDENCIES:

  • Bump github.com/onsi/ginkgo/v2 from 2.7.0 to 2.8.0. [GH-73]
  • Bump sigs.k8s.io/controller-runtime to 0.14.3. [GH-78]

DOCS:

2.0.0-beta3 (January 25, 2023)

FEATURES:

  • Operator: add support for Terraform Enterprise endpoints via Helm chart variable operator.tfeAddress.

BUG FIXES:

  • AgentPool: fix an issue when manually created agent tokens are not removed from Agent Pool during the reconciliation.

DOCS:

  • Update documentation.
  • Add FAQ.
  • Reorganize documentation structure.