our library of open-source SDKs and libraries developed over years and used in production for many sites.
“Terraform is for infrastructure, right?”, we hear you think. While that's true, we’ve also found Terraform to be the ideal tool to manage pretty much any SAAS/Cloud-based service.
In 2018 we started working with commercetools and found out that no first-class method existed to manage the configuration of commercetools itself. Given our background in using Terraform as our main infrastructure-as-code tool, we decided to create a Terraform provider for commercetools ourselves.
That provider has evolved significantly and is now in use not only by us but by the majority of the commercetools community - including Commercetools themselves.
Over time we’ve started working with additional MACH providers and have created Terraform providers for those as well.
Terraform providers for MACH services:
While working with MACH platforms, we’ve created several libraries and SDKs that make it easier for us to work with those platforms, or work with them in languages that we prefer.
Over the years we’ve created and contributed a number of libraries in this category:
Python SDK for commercetools
Fully-featured commercetools SDK for building commercetools projects with.
Go SDK for commercetools
Initially created for the Terraform provider, but now feature-complete Go SDK for commercetools
NodeJS/Typescript testing library for mocking commercetools
commercetools mock HTTP server
Integrate commercetools with an Apollo GraphQL server
For the commercetools SDKs, we use code generation to generate the SDKs almost completely. The benefit of this is that when commercetools releases new features, all we need to do is re-generate the SDKs, in order to use those. This means that both the Go and Python SDKs for this platform are up to date most of the time.
For the python ecosystem, we’ve created several tools that make our lives easier.