Django: ограничить доступ разработчика веб-интерфейса к внутреннему коду - PullRequest
0 голосов
/ 25 сентября 2018

Мы запускаем «классический» веб-сайт django (шаблоны рендеринга в бэкэнде) и размещаем полный исходный код на github.

Мы также используем «классическую» структуру папок:

/source/         # For python related django code and packages
/templates/      # Just the normal django templates
/static/img/     # static images
/static/sass/    # Sass files
/static/css/     # Generated css files from sass (django-pipeline)

В целях разработки мы используем vagrant и ssh на машине, чтобы запустить сервер разработки django.Изменения передаются в github.

Это наше текущее состояние, и оно хорошо работает для разработчиков, которые участвуют в проекте.

Но у нас также есть, например, внешние дизайнерыкоторый не должен иметь доступа к бэкэнду.

Проблема : у конструктора должен быть доступ только к папке / static / (локально и в git) или если он также хочет изменить структуру htmlим нужен доступ к папке / static / и / templates /.

Итак, как они могут запустить проект, не имея доступа к внутренним файлам?(Политика, установка и объяснение vagrant отнимает много времени у не-разработчиков ...)

Я не смог найти решение, но у меня есть следующая идея:

  1. Создать для статическогопапка новый репозиторий
  2. Создайте сервер со всем необходимым для запуска сервера
  3. Смонтируйте локальную папку / static / (и / templates /) от разработчика на сервере.Так что локальные изменения обслуживаются сервером.Таким образом, дизайнеру не нужен доступ к исходному коду, а также не нужны бродячие накладные расходы.(Не уверен, как решить эту проблему)

На данный момент это единственный способ, который я вижу.Может быть, есть лучшее решение и как я могу реализовать шаг 3?

...