Skip to content

Latest commit

 

History

History
78 lines (51 loc) · 1.91 KB

DEVELOPMENT.md

File metadata and controls

78 lines (51 loc) · 1.91 KB

Development Guide

Docker local development setup

You should have docker installed in your system, if not click here.

  1. Go to diagrams root directory.

  2. Build the docker image.

    docker build --tag diagrams:1.0 -f ./docker/dev/Dockerfile .
  3. Create the container, run in background and mount the project source code.

    docker run -d \
    -it \
    --name diagrams \
    --mount type=bind,source="$(pwd)",target=/usr/src/diagrams \
    diagrams:1.0
  4. Run unit tests in the host using the container to confirm that it's working.

    docker exec diagrams python -m unittest tests/*.py -v
  5. Run the bash script autogen.sh to test.

    docker exec diagrams ./autogen.sh
  6. If the unit tests and the bash script autogen.sh is working correctly, then your system is now ready for development.

Mac local development setup

To be able to develop and run diagrams locally on you Mac device, you should have Python, Go, and brew installed on your system.

  1. Go to diagrams root directory.

  2. Install poetry, the Python project management package used by diagrams.

    pip install poetry
  3. Install the project's Python dependencies.

    poetry install
  4. Install diagrams binary dependencies.

    brew install imagemagick inkscape black
    go install github.com/mingrammer/round@latest
    # ln -sf ~/go/bin/round ~/.local/bin/round
  5. Run unit tests to confirm that it's working.

    python -m unittest tests/*.py -v
  6. Run the bash script autogen.sh to test.

    ./autogen.sh
  7. If the unit tests and the bash script autogen.sh is working correctly, then your system is now ready for development.