Я пишу пользовательский поставщик terraform и выполнил все задокументированные шаги в следующем URL: https://learn.hashicorp.com/terraform/development/writing-custom-terraform-providers
Я могу запустить его со всеми операциями CRUD с SDK используется для удаленного обслуживания, где я инициирую вызовы API.
Однако одна проблема, с которой я сталкиваюсь, заключается в том, что в случае недоступности удаленного URL-адреса, выполнение terraform apply
перезаписывает файл состояния TF, даже если я возвращаю ошибку из плагина. Эта ошибка также отражена в выводе terraform apply
.
Редактировать: Похоже, я нашел шаги для репликации этого с существующим хранилищем: https://github.com/Mastercard/terraform-provider-restapi/
Наблюдения от этого:
- Если я использую бинарный файл последней версии от https://github.com/Mastercard/terraform-provider-restapi/releases, он работает как положено.
- Если я клонирую репозиторий и сборку бинарного файла самостоятельно с помощью этой команды
go build -o terraform-provider-restapi_v1.10.0-linux-amd64
, я начинаю получать ошибки, как указано в вопросе. go версия: go version go1.10.3 linux/amd64
Что я здесь не так делаю? Как мы строим двоичные файлы провайдера?
Любая помощь о том, как это исправить?