Skip to content

Commit a85d0da

Browse files
committed
feat: enhance cookiecutter template with centralized app-rdm configuration and optional dependencies
1 parent a4dd787 commit a85d0da

2 files changed

Lines changed: 74 additions & 50 deletions

File tree

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
{#- Centralized configuration for app-rdm -#}
2+
{%- set app_rdm_version = "~=13.0.0b2.dev2" -%}
3+
{%- set app_rdm_base = "invenio-app-rdm" ~ app_rdm_version -%}
4+
{%- set app_rdm_extras = [] -%}
5+
{%- if cookiecutter.search -%}
6+
{%- set app_rdm_extras = app_rdm_extras + [cookiecutter.search] -%}
7+
{%- endif -%}
8+
{%- if cookiecutter.file_storage == 'S3' -%}
9+
{%- set app_rdm_extras = app_rdm_extras + ['s3'] -%}
10+
{%- endif -%}
11+
12+
{%- if cookiecutter.python_package_manager == 'pipenv' -%}
13+
[[source]]
14+
name = "pypi"
15+
url = "https://pypi.org/simple"
16+
verify_ssl = true
17+
18+
[dev-packages]
19+
check-manifest = ">=0.25"
20+
21+
[packages]
22+
invenio-app-rdm = {extras = {{ app_rdm_extras | tojson }}, version = "{{ app_rdm_version }}"}
23+
{%- if cookiecutter.site_code == 'yes'%}
24+
{{cookiecutter.project_shortname}} = {editable = true, path="./site"}
25+
{% endif %}
26+
uwsgi = ">=2.0"
27+
uwsgitop = ">=0.11"
28+
uwsgi-tools = ">=1.1.1"
29+
30+
[requires]
31+
python_version = "3.9"
32+
33+
[pipenv]
34+
allow_prereleases = false
35+
36+
{%- endif -%}
37+
{%- if cookiecutter.python_package_manager == 'uv' -%}
38+
[project]
39+
name = "{{ cookiecutter.project_name | slugify() }}"
40+
description = "Add your description here"
41+
readme = "README.md"
42+
version = "0.1.0"
43+
requires-python = ">= 3.12"
44+
dynamic = ["version"]
45+
46+
dependencies = [
47+
"{{ app_rdm_base }}",
48+
"uwsgi>=2.0",
49+
"uwsgitop>=0.11",
50+
"uwsgi-tools>=1.1.1",
51+
{% if cookiecutter.site_code == 'yes' -%}
52+
"{{cookiecutter.project_shortname}}",
53+
{%- endif %}
54+
]
55+
56+
[project.optional-dependencies]
57+
58+
all = {% if app_rdm_extras %}[{{ app_rdm_extras | join(',') }}]{% endif %}
59+
60+
[tool.setuptools]
61+
py-modules = []
62+
63+
{% if cookiecutter.site_code == 'yes' -%}
64+
[tool.uv.sources]
65+
{{cookiecutter.project_shortname}} = { path = "./site", editable = true }
66+
{%- endif -%}
67+
68+
{#- Conditional source configuration for S3 -#}
69+
{%- if cookiecutter.file_storage == 'S3' -%}
70+
[[tool.uv.index]]
71+
name = "invenio-s3"
72+
url = "https://pypi.org/simple"
73+
{%- endif -%}
74+
{%- endif -%}

{{cookiecutter.project_shortname}}/{{cookiecutter.python_package_manager == "uv" and "pyproject.toml" or "Pipfile"}}

Lines changed: 0 additions & 50 deletions
This file was deleted.

0 commit comments

Comments
 (0)