Terraform by HashiCorp,is a tool for building, changing, and versioning infrastructure. It allows users to define a datacenter infrastructure in a high-level configuration language, from which it can create an execution plan to build the infrastructure such as OpenStack or in a service provider. Written in Go, it has a simple syntax that allows modularity and works against multi-cloud and allows for the automation of infrastructure.
GitLab is a single application for the whole DevOps lifecylce that includes not only configuration management, but also capabilities for proejct management, source code management, CI/CD, and monitoring. GitLab is designed for Kubernetes and cloud native applications.