barbitoff programmer`s blog

Здесь я публикую заметки из программерской жизни: грабли, на которые мне случилось наступить, проблемы, для которых было найдено элегантное (или не очень) решение, а также все, с чем мне пришлось столкнуться и чем хотелось бы поделиться =)
PS Если хотите меня поблагодарить - на странице есть 3 места, чтобы это сделать =)

среда, 28 октября 2026 г.

Terraform и песочница GitHub Copilot в VSCode

Проблема

Cтолкнулся с тем, что GitHub Copilot в VSCode, работая в песочнице, ругается на то, что terraform не установлен, хотя сам я его могу вызвать без проблем из терминала. 

Причина

Проблема в том, что в песочнице доступны все директории из PATH и выполнение любых исполняемых файлов в них. Однако, если исполняемый файл является символической ссылкой, смотрящей в директорию вне PATH - тут уже песочница блокирует выполнение. В моем случае это было именно так: в PATH была папка `/home/linuxbrew/.linuxbrew/bin`, а в ней файл `terraform`, являющийся ссылкой на `../Cellar/terraform/1.17.0/bin/terraform`. 

Решение

Я решил проблему добавлением директории `/home/linuxbrew/.linuxbrew/` в массив `readonlyPaths` внутри настройки `chat.agent.sandbox.fileSystem.userConfiguredPaths` в `settings.json`. Решение, конечно, не самое безопасное (агенты в песочнице теперь могут читать и выполнять что угодно из `/home/linuxbrew/.linuxbrew/`), но рабочее.