Я использую провайдера gitlab в terraform, и я импортировал своего пользователя gitlab.Но когда я пытаюсь выполнить мой план terraform, он говорит, что собирается воссоздать ресурс.
Это происходит потому, что я дал фиктивный пароль для параметра пароля.Я не хочу терраформировать, чтобы изменить пользователя, так как это повлияет на продукт.Моя главная цель - работать с нашими пользователями gitlab в terraform, не меняя ничего в нашей рабочей версии gilab
Как я могу избежать этого?Это известная проблема?или я делаю что-то не так?
Terraform v0.11.7
+ provider.aws v1.54.0
+ provider.gitlab v1.1.0
provider "gitlab" {
base_url = "http://gitlab.XXX.com/api/v4"
token = "${var.gitlab_token}"
}
resource "gitlab_user" "user" {
name = "ab c"
password = "dummypassword"
username = "ab.c"
email = "ab.c@xxx.com"
is_admin = "false"
projects_limit = "100"
can_create_group = "true"
}
Я сделал импорт этого значения.
terraform import -var 'gitlab_token=xxxx' gitlab_user.user 70
gitlab_user.user: Importing from ID "70"...
gitlab_user.user: Import complete!
Imported gitlab_user (ID: 70)
gitlab_user.user: Refreshing state... (ID: 70)
Import successful!
план terraform
-/+ gitlab_user.user (new resource required)
id: "70" => <computed> (forces new resource)
can_create_group: "true" => "true"
email: "" => "ab.c@xxx.com" (forces new resource)
is_admin: "" => "false"
is_external: "" => "false"
name: "ab c" => "ab c"
password: <sensitive> => <sensitive> (attribute changed)
projects_limit: "100" => "100"
skip_confirmation: "" => "true"
username: "ab.c" => "ab.c"
я пытался добавить жизненный цикл вигнорировать изменения, но у меня все та же проблема
resource "gitlab_user" "user" {
name = "ab c"
username = "ab.c"
password = "defaultpassword"
email = "ab.c@xxx.com"
is_admin = "false"
projects_limit = "100"
can_create_group = "true"
lifecycle {
ignore_changes = ["password"]
}
}