Skip to content

Latest commit

 

History

History
99 lines (69 loc) · 5.03 KB

instructions.md

File metadata and controls

99 lines (69 loc) · 5.03 KB

Данный репозиторий нужен для работы с программами, курсами, практиками, проектами Хекслета.

Подготовка к работе

  1. Клонируем репозиторий

    git clone [email protected]:hexlethq/hexlet-exercise-kit.git
  2. Переходим в директорию hexlet-exercise-kit

    cd hexlet-exercise-kit
  3. Создаём поддиректории в которых будем размещать практики, проекты, курсы, программы

    make prepare-dirs

Работа с практиками

  1. Структура директорий в hexlet-exercise-kit имеет принципиальное значение и должна соблюдаться

    tree exercises
    
    exercises
    └── ru
        └── course-js-arrays
            ├── js_arrays_aggregation_exercise
            ├── js_arrays_snail_exercise
            └── js_arrays_syntax_exercise

    В данном примере:

    • exercises — директория для всех практик любой локали. Внутри содержит разделение по локализации
    • ru — содержит все практики с русской локализацией
    • course-js-arrays — группирует упражнения и испытания в рамках одного курса. Имя состоит из префикса course и собственно названия курса. В качестве разделителя используется дефис
    • js_arrays_syntax_exercise - директория с практикой. Имя состоит из названия курса, названия упражнения и постфикса exercise (используется один и тот же как для упражнений, так и для испытаний)
  2. Директория с практикой создаётся по шаблону https://gitlab.com/hexlethq/boilerplates/example_exercise. Смотрите ридми репозитория и подробные комментарии внутри файлов

  3. Локально, чтобы проверить работу практики нужно выполнить команды (все команды выполняются непосредственно в директории практики):

    # сборка практики
    make build
    
    # остановка уже запущенного контейнера (если таковой есть) и запуск контейнера с практикой
    make start
    
    # подключится к запущенному контейнеру (если нужно)
    make attach
    
    # запуск тестов
    make lint
    
    # проверить код линтером с настройками продакшена
    # make lint-hexlet-<language>
    # доступные команды линтинга содержаться в docker.mk
    # например:
    lint-hexlet-js

    Если практика содержит веб-доступ, то проверить его работу можно после старта контейнера (make start) в браузере по адресу http://localhost

Работа с курсами

  1. Структура директорий в hexlet-exercise-kit имеет принципиальное значение и должна соблюдаться

    tree courses
    
    courses
    └── ru
        ├── js_arrays_course
        └── js_async_course

    В данном примере:

    • courses — директория для всех курсов любой локали. Внутри содержит разделение по локализации
    • ru — содержит все курсы с русской локализацией
    • js_arrays_course - директория с курсом. Имя состоит из языка, названия курса и постфикса course
  2. Директория с курсом создаётся по шаблону https://gitlab.com/hexlethq/boilerplates/example_course. Смотрите ридми репозитория и подробные комментарии внутри файлов

  3. Работа с курсом не предусматривает выполнение каких-либо команд make

Полезные команды и примеры использования.

Чтобы скачать/обновить практики курса, можете вызывать загрузчик и указать путь к курсу

# скачиваем практики из https://gitlab.hexlet.io/hexlethq/exercises/ru/course-python-lists
make downloader-run FILTER=exercises/ru/course-python-lists