Python Project Setup#
Example Project Name: foo
.
Project Directory Layout#
.dockerignore
.editorconfig
.env
.gitignore
.rgignore
CHANGELOG.md
Dockerfile
README.md
requirements.txt
setup.cfg
setup.py
1-docs/
2-docker/
docker-compose.yml
docker-compose.override.yml -> env/dev/docker-compose.override.yml
env/dev/docker-compose.override.yml
env/ci/docker-compose.override.yml
src/foo/__init__.py
src/foo/bar/__init__.py
src/foo/bar/something.py
src/foo/cli.py
tests/test_foo.py
tests/test_bar/test_something.py
Separating src/
and tests/
simplifies searching in different scopes (e.g.
rg something src/
[1]) and gives better structure for big git merges.
Python Method Redefinition
Gitlab Runner