@@ -46,11 +46,14 @@ jobs:
4646 cd cloned/biskotaki
4747 echo "PKG_VERSION=$(python scripts/parse_version.py)" >> $GITHUB_ENV
4848
49+ # INSTALL `generate-python` CLI
50+ - name : Install `generate-python` CLI
51+ run : pip install --user -e .
52+
4953 # # GENERATE FROM TEMPLATE into gen/ ##
5054 # ROOT : gen/biskotaki/pyproject.toml
5155 - name : Generate Biskotaki from Template
5256 run : |
53- pip install --user -e .
5457 echo " version: \"${{ env.PKG_VERSION }}\"" >> .github/biskotaki.yaml
5558 generate-python -o gen --config-file ./.github/biskotaki.yaml --no-input -f --offline
5659
6770 - name : Test distributions 'Source', 'Built' and 'edit' (dev env) mode installation
6871 env :
6972 TOXPYTHON : " python${{ env.PY_VERSION }}"
73+ working-directory : gen/biskotaki
7074 run : |
71- cd gen/biskotaki
7275 tox -e 'edit,sdist,wheel'
7376 tox -e wheel-test
7477 tox -e coverage
@@ -77,30 +80,38 @@ jobs:
7780
7881 # Running Type Check, on src and Test code: Passes
7982 - name : ' Mypy: Static Type Checker -> PASS'
83+ working-directory : gen/biskotaki
8084 run : |
81- cd gen/biskotaki
8285 tox -e pin-deps -- -E typing
8386 tox -e type
8487
8588 - name : ' Ruff: Fast Python Linter -> PASS'
86- run : |
87- cd gen/biskotaki
88- tox -e ruff
89+ working-directory : gen/biskotaki
90+ run : tox -e ruff
91+
8992 # Running Lint Check, on src and Test code: Passes
9093 - name : ' Isort, Black: Code Formatter -> PASS'
91- run : |
92- cd gen/biskotaki
93- tox -e lint
94+ working-directory : gen/biskotaki
95+ run : tox -e lint
9496 # Running the Build script (sdist and wheel): produces Distro Artifacts: Source (.tar.gz) and Wheel (.whl) files
9597 - name : ' Build: sdist, wheel -> PASS'
96- run : |
97- cd gen/biskotaki
98- tox -e build
98+ working-directory : gen/biskotaki
99+ run : tox -e build
99100 # Running Quality Checks against Distro Metadata: Passes with 10/10 score
100101 - name : ' Pyroma: Distro Quality -> PASS'
102+ working-directory : gen/biskotaki
103+ run : tox -e check
104+
105+ # Docs Checks: Run Build Docs command, and verify it succeeds
106+ - name : ' Sphinx: Build Docs Web Site (html/css/js) -> PASS'
107+ working-directory : gen/biskotaki
101108 run : |
102- cd gen/biskotaki
103- tox -e check
109+ tox -e pin-deps -- -E docs # poetry export
110+ tox -e docs
111+
112+ - name : Remove requirements file generated with 'poetry export' for Docs
113+ # See tox.ini -> testenv.setenv.DEFAULT_REQS_FILE
114+ run : rm -f gen/biskotaki/reqs.txt
104115
105116 # tox -e graphs
106117
@@ -120,15 +131,39 @@ jobs:
120131 target-branch : ${{ env.branch }}
121132 commit-message : ' apply Template from https://github.com/boromir674/cookiecutter-python-package'
122133
123- # # GENERATE Python Gold Standard FROM TEMPLATE into gen/ ##
124- # ROOT : gen/biskotaki/pyproject.toml
134+ # # GENERATE Python GOLD STANDARD from TEMPLATE into gen/ ##
135+ # ROOT : gen-gold /biskotaki-gold-standard /pyproject.toml
125136 - name : Generate Python Gold Standard Biskotaki from Template
126137 env :
127138 USER_CONFIG : tests/data/gold-standard.yml
128139 run : |
129140 echo " version: \"${{ env.PKG_VERSION }}\"" >> ${{ env.USER_CONFIG }}
130141 generate-python -o gen-gold --config-file "${{ env.USER_CONFIG }}" --no-input -f --offline
131142
143+ # Generate poetry.lock to include in the Pushed Files
144+ - name : Generate Poetry.lock
145+ run : |
146+ pip install pipx
147+ pipx install poetry
148+ poetry lock
149+ working-directory : gen-gold/biskotaki-gold-standard
150+
151+ # # MKDOCS Checks: Run Build Docs command, and verify it succeeds ##
152+ - name : ' Mkdocs: Build Docs Web Site (html/css/js) -> PASS'
153+ working-directory : gen-gold/biskotaki-gold-standard
154+ run : |
155+ tox -e pin-deps -- -E docs # poetry export
156+ tox -e docs
157+
158+ # exlude 'site' dir from pushing to biskotaki repo
159+ - name : Exclude 'site' folder, built with Mkdocs, from 'git push'
160+ run : rm -rf gen-gold/biskotaki-gold-standard/site
161+
162+ # exlude 'reqs.txt' file, generated with 'poetry export' for Docs
163+ - name : Exclude 'reqs.txt' file, generated with 'poetry export' for Docs
164+ # See tox.ini -> testenv.setenv.DEFAULT_REQS_FILE
165+ run : rm -f gen-gold/biskotaki-gold-standard/reqs.txt
166+
132167 # # PUSH the Python Gold Standard to BISKOTAKI REPO ##
133168 - name : Push to dedicated branch in biskotaki repo
134169 # Pin to v1.7.2 -> 07c4d7b3def0a8ebe788a8f2c843a4e1de4f6900
0 commit comments