Игнорировать файлы в репо при развертывании в Netlify

У меня есть репозиторий Github, который включает в себя несколько крупных графических ресурсов. Эти активы приводят к неудачным развертываниям в Netlify из-за ограничений Netlify по размеру. Есть ли способ сохранить эти файлы в репозитории Github, но исключить их из развертываний Netlify, точно так же, как я мог бы использовать . slugignore при развертывании на heroku.


person Undistraction    schedule 02.08.2018    source источник


Ответы (1)


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

Чтобы не развертывать их, самый простой способ - удалить их после сборки, примерно так:

npm run build && rm dist/hugefile1.jpg dist/subdir/hugefile2.pdf

Вы можете стать более интересным и использовать файл, чтобы перечислить их, или просто искать все огромное. Предупреждение - что-то огромное, что ДЕЙСТВИТЕЛЬНО размещать - это ваша карта исходных текстов (если вы ее используете), так что следите за тем, что это может зацепить!

npm run build && find dist -type f -size +20M

Фактически - вы можете делать все, что могли, в сценарии оболочки. NB: Вы должны убедиться, что ваш конвейер сборки выйдет из строя, если какой-либо необходимый шаг завершится неудачно - вот почему в примерах показано && для цепочки команд, а не ; (сборка может завершиться ошибкой, найти успешно, и мы публикуем пустой сайт!).

Подробнее здесь: https://www.netlify.com/blog/2016/10/18/how-our-build-bots-build-sites/, и вы можете протестировать свои скрипты, используя методологию, описанную здесь: https://github.com/netlify/build-image#testing-locally

person fool    schedule 02.08.2018