Как вы, наверное, заметили, Scotty.js больше не активен. Работать над Scotty.js было весело, но AWS тем временем выпустила AWS Amplify, и такие инструменты, как Scotty.js, больше не нужны. Пожалуйста, взгляните на консоль AWS Amplify. Это отличный инструмент для размещения статических веб-сайтов и одностраничных приложений.
Развертывайте статические веб-сайты или папки на AWS S3 с помощью одной команды.
Scotty.js доступен на NPM. Установите его как глобальную зависимость, чтобы иметь возможность использовать команду scotty
где угодно:
npm установить Scottyjs --global
Подними меня, Скотти
Чтобы развернуть статическую папку на AWS S3, выполните:
Скотти {варианты}
или
поднять мне настроение {варианты}
--help или -h — Распечатать эту справку
--version или -v — Распечатать текущую версию
--noclipboard или -n — не копировать URL-адрес в буфер обмена (по умолчанию: false)
--quiet или -q — Подавить вывод при выполнении команд (по умолчанию: false)
--website или -w — установить загруженную папку как статический веб-сайт (по умолчанию: false)
--spa — Установить загруженную папку как одностраничное приложение (по умолчанию: false)
--source или -s — Источник папки, которая будет загружена (по умолчанию: текущая папка)
--bucket или -b — Имя корзины S3 (по умолчанию: имя текущей папки)
--prefix или -p — префикс корзины S3 (по умолчанию: корень корзины)
--region или -r — регион AWS, куда будут загружены файлы, по умолчанию: сохраненный регион, если он существует, или список для выбора, если он еще не сохранен
--force или -f — обновить корзину без запроса (по умолчанию: false, принудительный регион можно переопределить с помощью -r )
--update или -u — обновить существующую корзину (по умолчанию: false)
--delete или -d — Удалить существующую корзину (по умолчанию: false)
--nocdn или -c — отключить обработку Cloudfront (по умолчанию: false)
--urlonly или -o — выводить только результирующий URL, CDN или S3 в соответствии с параметрами (по умолчанию: false)
--expire или -e — удалить объекты в корзине старше n дней (по умолчанию: без срока действия)
--profile или -a — используемый профиль AWS (по умолчанию: «по умолчанию»)
--empty или -y — Очистить корзину (удалить все объекты перед загрузкой файлов) (по умолчанию: false)
Полное руководство: http://medium.com/@slobodan/single-command-deployment-for-single-page-apps-29941d62ef97.
Чтобы развернуть приложения CRA, просто запустите npm run build
в корневой папке проекта, чтобы создать версию сборки.
Затем разверните версию сборки, используя следующую команду:
Скотти --spa --source ./build
Или, если вы хотите указать имя корзины, запустите:
scotty --spa --source ./build --bucket имя-ведра
С флагом --spa
Скотти установит необходимые перенаправления для вашего одностраничного приложения, чтобы ваше приложение могло использовать pushState «из коробки».
Чтобы развернуть несколько приложений в одном сегменте, вы можете использовать опцию --prefix
. Это бывает полезно, когда ваша система CI развертывается в промежуточной системе с каждой веткой в качестве пути. Например. master
ветвь должна идти к корню сегмента ( /
), поэтому префикс не задается. Ветка feature/fancy-stuff
должна идти к пути сегмента feature/fancy-stuff
поэтому просто добавьте это в качестве префикса. Вот пример командной строки:
# разверните сборку вашей основной ветки в ведре rootscotty --source ./build --bucket some-bucket-name# разверните сборку своей ветки в ведре с именем ветки в Bucketscotty --source_ ./build --bucket some-bucket-name - -префикс вашего/филиала
Мы используем Jasmine для модульных и интеграционных тестов. Если нет веской причины использовать что-то другое, продолжайте использовать Jasmine для тестов. Существующие тесты находятся в папке spec. Вот несколько полезных сочетаний команд:
Запустите все тесты:
НПМ-тест
Запустите только некоторые тесты:
тест npm -- фильтр=префикс
Получите подробный иерархический отчет по названиям тестов:
тест npm - полный
MIT – см. ЛИЦЕНЗИЮ