Я пытаюсь получить мой .gitlab-ci.yml
файл для замены файла конфигурации другим во время сборки. Идея состоит в том, чтобы выбрать правильный файл конфигурации для каждой среды, прямо из моего Yaml.
Позвольте мне объяснить: у меня есть файлы конфигурации в моем приложении, под /lib/core/config
Я хотел бы заменить config.dart
на firebase_config.dart
если я подталкиваю к постановке. Я попробовал этот довольно неуклюжий способ, который не сработал:
webdev-build:
image: google/dart:latest
stage: build
cache:
paths:
- .dart_tool/
before_script:
- cp $CI_PROJECT_DIR/lib/core/config/config_firebase.dart $CI_PROJECT_DIR/lib/core/config/config.dart
script:
- pub global activate webdev
- pub get
- pub global run webdev build -o web:build
artifacts:
paths:
- build
only:
- dev
Я также попытался начать с простой работы вместо оператора before_script
.
В обоих случаях процесс сборки всегда дает сбой, потому что config_firebase.dart
не может быть найден.
Насколько я понимаю, Gitlab CI сначала клонирует мое хранилище в другое и создает контейнерную среду, которая будет использоваться для сборки моего приложения. Это будет означать, что моя попытка решить проблему происходит слишком поздно.
Каков будет правильный путь для достижения этой цели?