You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, the provider acceptance testing via internal/provider/acceptance.sh has an explicit dependency on the kinit executable to verify Kerberos session authentication (versus password and keytab authentication):
GO111MODULE=on make testacc TEST=./internal/provider || failed
It might be possible to replace the requirement for Kerberos client tools by instead implementing Go code (e.g. via github.com/jcmturner/gokrb5/v8) which writes out a Kerberos credentials cache file that is then picked up by the acceptance testing (e.g. via environment variable such as KRB5CCNAME or known location such as /tmp/krb5cc_$(id -u)). This will ease development environment requirements and potentially aid in simplifying macOS and Windows testing in CI.
There are some challenges here however as operating systems may implement credential caches in differing formats or locations and the current Kerberos package does not support writing credential caches natively.
Another option may be to run acceptance testing in a container, therefore moving any requirements to that environment which can be explicitly managed. This however introduces its own complexity, removes the operating system differences we are trying to test against, and is in no way common for provider acceptance testing.
Description
Currently, the provider acceptance testing via
internal/provider/acceptance.sh
has an explicit dependency on thekinit
executable to verify Kerberos session authentication (versus password and keytab authentication):terraform-provider-dns/internal/provider/acceptance.sh
Lines 102 to 120 in 69966bb
It might be possible to replace the requirement for Kerberos client tools by instead implementing Go code (e.g. via
github.com/jcmturner/gokrb5/v8
) which writes out a Kerberos credentials cache file that is then picked up by the acceptance testing (e.g. via environment variable such asKRB5CCNAME
or known location such as/tmp/krb5cc_$(id -u)
). This will ease development environment requirements and potentially aid in simplifying macOS and Windows testing in CI.There are some challenges here however as operating systems may implement credential caches in differing formats or locations and the current Kerberos package does not support writing credential caches natively.
Another option may be to run acceptance testing in a container, therefore moving any requirements to that environment which can be explicitly managed. This however introduces its own complexity, removes the operating system differences we are trying to test against, and is in no way common for provider acceptance testing.
References
The text was updated successfully, but these errors were encountered: