Удаленное обновление таблиц на стороне клиента с новой версией библиотеки

#google-apps-script #deployment #google-apps-script-api

#google-apps-script #развертывание #google-apps-script-api

Вопрос:

У меня вопрос об использовании библиотек в Google Таблицах. Я разработал скрипт автономных приложений, опубликованный как библиотека. Эта библиотека используется 150 файлами Google Sheets (я сделал это, чтобы централизовать и скрыть некоторый код от пользователей).

Сегодня мне нужно обновить код библиотеки, чтобы добавить некоторые функциональные возможности. Я хотел бы знать, знаете ли вы решение для удаленного обновления клиентов 150 Sheets в соответствии с новой версией библиотеки на стороне клиента (я не использую режим «dev»).

Похоже, что API Apps Script может вносить изменения в саму библиотеку, но не на стороне клиента (sheets).

У кого-нибудь еще была эта проблема и как вы с ней справлялись?

Ответ №1:

Нет. Вам придется сделать это самостоятельно. Библиотеки, не находящиеся в режиме разработки, никогда не обновляются автоматически и не могут быть обновлены разработчиком библиотеки до последней версии, потому что они являются библиотеками — ожидается, что в месте назначения есть код, который его использует, и, следовательно, не гарантируется, что изменение версии не приведет к нарушению кода интерфейса.

Если вы хотите, чтобы ваш развернутый код автоматически обновлялся до последней версии, вам следует использовать модель дополнения или (когда вы знаете, что у вас будет обратная совместимость с вашим библиотечным интерфейсом) получить доступ к вашим библиотекам из ваших сценариев в режиме разработки.

Вы можете собрать необходимые идентификаторы сценариев (Файл -> Свойства проекта), которые необходимо обновить в библиотеке, и вы можете обновить содержимое проекта Script (включая appsscript.json файл манифеста, который определяет версию библиотеки) через API Apps Script. Это может оказаться clasp полезным для вас.