Skip to content

moxovil/URLShortener

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Укорачиватель ссылок

Требования

  • Ссылка должна быть уникальной и на один оригинальный URL должна ссылаться только одна сокращенная ссылка.
  • Ссылка должна быть длинной 10 символов.
  • Ссылка должна состоять из символов латинского алфавита в нижнем и верхнем регистре, цифр и символа _ (подчеркивание).

Сервис должен принимать следующие запросы по http:

  1. Метод Post, который будет сохранять оригинальный URL в базе и возвращать сокращённый.
  2. Метод Get, который будет принимать сокращённый URL и возвращать оригинальный URL.
  • Сервис должен быть распространён в виде Docker-образа.
  • В качестве хранилища ожидается использовать in-memory решение и postgresql. Какое хранилище использовать указывается параметром при запуске сервиса.
  • Покрыть реализованный функционал Unit-тестами.

Для запуска приложения:

docker-compose build urllist-app

Для запуска в режиме postgresql указать переменную окружения MEM_MODE:

docker-compose run -e MEM_MODE=POSTGRES -p 8000:8000 urllist-app

По-умолчанию запуск в режиме in-memory:

docker-compose run -p 8000:8000 urllist-app

To do:

  • Исправить запуск контейнера с postgre при запуске в режиме in-memory.
  • Тест postgres.go проводится на запущенной БД. Использовать ory/dockertest.
  • Миграции БД.
  • Добавить Makefile.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published