waka-readme/CONTRIBUTING.md
Jovial Joe Jayarson 77ba5f6a96 chore: monthly updates for July'23
- migrate to `pdm` from `poetry`
- update dependencies
- improvises `dockerfile` (drops `containerfile`)
- only `python` & `pip` are required in ci/cd
- adds `compose.yml`
- simplifies local & containerized development
2023-07-17 08:30:12 +05:30

2.0 KiB

Contributing

python_ver

First off, thank you! Please follow along.

You need to fork this repository and clone it onto your system. Inside the cloned folder, create a .env file with the following contents (without # comments):

INPUT_GH_TOKEN=EXAMPLE_GITHUB_PAT # required (for development)
INPUT_WAKATIME_API_KEY=EXAMPLE-WAKATIME-API-KEY # required
INPUT_API_BASE_URL=https://wakatime.com/api # required
INPUT_REPOSITORY=GITHUB_USERNAME/REPOSITORY_NAME # required
INPUT_COMMIT_MESSAGE=Updated WakaReadme graph with new metrics
INPUT_SHOW_TITLE=true
INPUT_SECTION_NAME=waka
INPUT_BLOCKS=->
INPUT_SHOW_TIME=true
INPUT_SHOW_TOTAL=true
INPUT_TIME_RANGE=last_7_days
INPUT_SHOW_MASKED_TIME=false
INPUT_LANG_COUNT=0
INPUT_STOP_AT_OTHER=true

NEVER commit this .env file!

Assumes that you already have latest version of either podman or docker (with compose) installed & configured.

Replace podman with docker everywhere, if you're using the latter.

# Build
$ podman-compose -p waka-readme -f ./docker-compose.yml up -d
# Logs
$ podman logs WakaReadmeDev
# Cleanup
$ podman-compose -p waka-readme -f ./docker-compose.yml down

Using virtual environments

Assumes you've already installed & configured latest version of python and pdm.

  1. Inside the cloned folder run the following commands to install dependencies

    $ pdm install
    $ eval $(pdm venv activate)
    

    in a virtual environnement and activate it. In windows use the following

    > Invoke-Expression (pdm venv activate)
    

    to activate virtual environment.

  2. To test or execute the program in development, run:

    (waka-readme-py3_11)$ python -m unittest discover # run tests
    (waka-readme-py3_11)$ python -m main --dev # execute program in dev mode