Тема Cake Build - это отдельная тема, я буду нацеливаться на директиву #load в сценариях C # в этом посте.
Для тех, кто не слышал о сценариях C #, я рекомендую вам добавить его в список своих навыков в 2018 году. Сценарии C # - это «язык», который построен на основе Roslyn (платформы компилятора). Это позволяет выполнять множество динамических программ, о которых я расскажу более подробно в одном из следующих постов.
А пока просто изобразите сценарий C # в виде файлов .csx.
Поскольку скрипты могут быть полностью изолированы (не требуются классы или static void main), вы сможете выгружать части скрипта (функции, переменные и т. Д.) В отдельные файлы.
То же самое и со сценариями сборки Cake. Cake уже обеспечивает отличную поддержку для управления информацией о среде.
Однако, если вам не нравится этот подход, потому что он не всегда обеспечивает прозрачность, на которую вы надеялись, как я; вы можете предоставить торт с различными файлами «конфигурации».
Одним из решений может быть установка переменных (baseUrl, имена пользователей, пароли и т. Д.) В отдельных сценариях и загрузка их в Cake.
Представьте себе этот сценарий конфигурации, например:
Этот сценарий настраивает среду для нашего сценария локальной сборки.
Теперь мы можем использовать эти переменные в нашем скрипте Cake.build.
Видите там строку №3? Это загружает переменные из внешнего скрипта и любые другие глобально объявленные объекты, если на то пошло.
Там, где это действительно может проявиться, так это в развертывании, вы могли бы развернуть файл params.csx для конкретной среды и извлечь все параметры синтаксического анализа из торта.