Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
lechnerc77
Product and Topic Expert
Product and Topic Expert

Here we go again – welcome 1.3.0

The May release aka version 1.3.0 of the Terraform provider for SAP BTP is out. Let’s look at what has been added since the last release.

Of course, you also find all the information in the release notes in the GitHub repository:

release notes.png

Features: Authenticating via SSO (Single Sign-on) for local execution

One feature requested by the community was to make the local experience more convenient and support SSO for authentication.

In release 1.3.0 this feature is now enabled. It is important to note that we support this feature for local testing only. It is not intended to be used e.g., in CI/CD pipelines.  

If you want to make use of this feature, you must set the environment variable “BTP_ENABLE_SSO” to true. The provider evaluates this environment parameter and will trigger browser based SSO login flow as you already know it from the BTP CLI. Be aware that a typical flow executes several logins so do not be surprised if the browser pops up more than once when executing e.g., a “terraform apply”.

Improvements: Readable Error messages for service instance creation

The creation of service instances can be a challenge when it comes to the provisioning of the right parameters. If a provisioning of a service instance fails, the error message should support you in finding the cause of it.

With this release, we improved the returned error message in these scenarios by propagating the human-readable description of the error returned by the service broker to the provider. If such a description is provided by the corresponding service, this should help you in finding the root cause when a service instance creation or update fails.

To give you an impression, here is an example of how the error message looked like when the creation of a HANA Cloud instance. We first create a valid setup via:

start-config-error.png

Next, we change the parameters by providing an invalid value for the memory:

wrong-config-error.png

In release 1.2.0 this results in the following error message

error_messgae_120.png

In release 1.3.0 you will see more information that helps you to pin down the root cause (if the service provides this message):

error_messgae_130.png

Improvement: Documentation

There is always room for improvement when it comes to the documentation and with this making the consumption of the provider easier. In this release we delivered improvements to two areas:

  • Required role collection per resource and data source: the documentation of the resources and data sources now describes which role collection(s) are needed to execute the corresponding Terraform artefact. This makes your Life easier e.g., when creating a technical user for Terraform setups and assigning the necessary role collections to the user to execute the setup tasks.
  • Support of drift and import: To make it easier for you to evaluate what is possible when it comes to implementing imports and configuration drift detection, we created some overview pages that allow you to identify immediately which resources can be imported (or if there are restrictions) and for which resources you can implement a drift detection out of the box.
    These lists can change over time, updates will be announced in the release notes.

Fix: Handling of state in service instance creation and update

With this release we also fixed a bug in the handling of the service instance creation and update process. If you created or updated a service instance with invalid JSON parameters, the provider persisted the new/changed JSON parameters in the state although the operation failed. A consequent “terraform plan” would have shown that everything is okay although the new parameters have not been applied to the service instance. This behavior is fixed and after a failed operation for a service instance resource the terraform plan operation delivers the expected results.   

How to update?

The update of the provider version is straightforward. Depending on your configuration in the provider, you must adjust the version constraint to 1.3.0 and execute a “terraform init -upgrade”.

That’s it.

You find the documentation of the enhanced resources in the Terraform registry: https://registry.terraform.io/providers/SAP/btp/latest

Feedback, questions, bugs, feature requests

The procedure hasn’t change: if you want to interact with us, use the GitHub repository https://github.com/SAP/terraform-provider-btp:

  • To file a bug, please open an issue in the repository.
  • To file a feature request, please file it in the repository.
  • If you have a question, want to discuss ideas, or do some “show & tell”, feel free to start a GitHub Discussion.

There are also some feature requests open that you can vote for. Check for the issues that are label as “enhancement” and “pending decision“ via this link https://github.com/SAP/terraform-provider-btp/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement+labe....

What else?

Besides the pure technical development mentioned above, we have also been busy in other areas that we want to highlight:

What is next?

Do you want a sneak peek at what is coming next and when we plan to deliver the next release? You find that information in the milestones on our GitHub repository https://github.com/SAP/terraform-provider-btp/milestones.

Be aware that plans and dates might change through the course of development.

With that … happy Terraforming!