Проект Gatsby / Netlify не находится в корне git repo - PullRequest
0 голосов
/ 11 сентября 2018

Примечание для обсуждения проблемы XY о том, является ли предпосылка вопроса плохой идеей, см. Здесь: Git-репо, содержащее BackEnd и FrontEnd


My Git-реповыглядит следующим образом:

root
|
|- .git\
|
|- JSFrontEnd\
|             |- package.json
|             |- tsconfig.json
|             |- .cache\
|             |- node_modules\
|             |- public\
|             |- src\
|             |- static\
|
|- C#BackEnd\
|
\_ .gitignore

Содержимое папки JSFrontEnd является стандартной структурой проекта Gatsby / Netlify, просто ее нет в корне репо.

Netlify, похоже, невот так - он хочет запустить gatsby build в корне репо, но, конечно, это не сработает - gatsby не знает, что делать, потому что нет package.json.

Как мне рассказать Гэтсби / Netlify, как использовать эту структуру репо?

Мои первые мысли о подходах включают:

  • Должен ли я поставитьpackage.json в корне репо?Если да, то как мне сказать, что все находится в подпапке.
  • Должен ли я каким-либо образом изменить сценарии build ?
  • Должен ли я настроить Netlify по-другомукогда я настраиваю свой сайт Netlify?

1 Ответ

0 голосов
/ 11 сентября 2018

Вы можете использовать файл netlify.toml, чтобы указать настройки сборки.В вашем случае попробуйте:

# Global settings applied to the whole site.  
# 
# “publish” is the directory to publish (relative to root of your repo),
# “command” is your build command,
# “base” is directory to change to before starting build. if you set base:
#    that is where we will look for package.json/.nvmrc/etc not repo root!

[build]
  base    = "JSFrontEnd"
  publish = "JSFrontEnd/public"
  command = "gatsby build"
...