aboutsummaryrefslogtreecommitdiff
path: root/src/ee/tools
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2019-04-09 06:03:33 +0200
committerTrygve Laugstøl <trygvis@inamo.no>2019-04-13 05:58:28 +0200
commita00dcfc7f6d12442fca8c5b7d43f12b707f0c877 (patch)
tree537fe862e4a8946a1346e87f97ac77772db56e17 /src/ee/tools
parent0232e0f992c3a03fe163b437cc1c1d631c8ddb83 (diff)
downloadee-python-a00dcfc7f6d12442fca8c5b7d43f12b707f0c877.tar.gz
ee-python-a00dcfc7f6d12442fca8c5b7d43f12b707f0c877.tar.bz2
ee-python-a00dcfc7f6d12442fca8c5b7d43f12b707f0c877.tar.xz
ee-python-a00dcfc7f6d12442fca8c5b7d43f12b707f0c877.zip
o Renaming part-create-distributor-search-list to pn-part-search-list.
Making the search more narrow, it is only responsible to find parts based on MPN or SPN.
Diffstat (limited to 'src/ee/tools')
-rw-r--r--src/ee/tools/ninja.py4
-rw-r--r--src/ee/tools/pn_part_search_list.py (renamed from src/ee/tools/part_create_distributor_search_list.py)8
-rw-r--r--src/ee/tools/templates/build.ninja.j231
3 files changed, 28 insertions, 15 deletions
diff --git a/src/ee/tools/ninja.py b/src/ee/tools/ninja.py
index c53b5da..2c8a88a 100644
--- a/src/ee/tools/ninja.py
+++ b/src/ee/tools/ninja.py
@@ -2,7 +2,7 @@ import argparse
import os.path
import sys
from pathlib import Path
-from typing import List, Union, Optional
+from typing import List, Union
from jinja2 import Environment, PackageLoader, select_autoescape
@@ -92,7 +92,7 @@ def generate(project: Project):
# Local part databases first
part_dbs.extend([parent_dir_filter(p) / noext_filter(p) for p in parts_yaml_files])
- part_dbs.extend([Path("ee") / d / "normalized" for d in distributors])
+ part_dbs.extend([Path("ee") / d / "parts" for d in distributors])
with build_ninja.open("w") as f:
env = _create_env()
diff --git a/src/ee/tools/part_create_distributor_search_list.py b/src/ee/tools/pn_part_search_list.py
index 273b6d3..f82808c 100644
--- a/src/ee/tools/part_create_distributor_search_list.py
+++ b/src/ee/tools/pn_part_search_list.py
@@ -1,7 +1,7 @@
import argparse
from pathlib import Path
-from ee.part.create_distributor_search_list import create_distributor_search_list
+from ee.part.pn_part_search_list import pn_part_search_list
parser = argparse.ArgumentParser()
@@ -14,6 +14,10 @@ parser.add_argument("--out",
required=True,
metavar="PART DB")
+parser.add_argument("--supplier",
+ required=True,
+ metavar="SUPPLIER")
+
args = parser.parse_args()
-create_distributor_search_list(Path(args.in_path), Path(args.out))
+pn_part_search_list(Path(args.in_path), Path(args.out), args.supplier)
diff --git a/src/ee/tools/templates/build.ninja.j2 b/src/ee/tools/templates/build.ninja.j2
index 23bef37..ea979da 100644
--- a/src/ee/tools/templates/build.ninja.j2
+++ b/src/ee/tools/templates/build.ninja.j2
@@ -21,9 +21,9 @@ rule kicad-make-bom
description = kicad-make-bom $out
command = $ee kicad-make-bom --sch $sch --out $out $strategy
-rule part-create-distributor-search-list
- description = part-create-distributor-search-list distributor: $distributor
- command = $ee part-create-distributor-search-list --in $in --out $out
+rule pn-part-search-list
+ description = pn-part-search-list supplier: $supplier
+ command = $ee pn-part-search-list --in $in --out $out --supplier $supplier
rule digikey-search-parts
description = digikey-search-parts
@@ -45,6 +45,10 @@ rule create-bom
description = create-bom
command = $ee create-bom --schematic $schematic --part-db $part_dbs --out $out $strategy
+rule export-order
+ description = export-order
+ command = $ee export-order --order $order $part_dbs --out-dir $out_dir
+
rule import-parts-yaml
description = import-parts-yaml $in
command = $ee import-parts-yaml --in $in --out $out
@@ -61,16 +65,16 @@ build ee/sch.xml: kicad-make-bom $sch
strategy = --strategy {{ project.cfg["kicad-project"]["strategy"] }}
{%- endif %}
{%- endif %}
-{% for d in distributors %}
-# Distributor {{ d }}
-build ee/{{ d }}/search-list.xml: part-create-distributor-search-list ee/sch.xml
- distributor = {{ d }}
+{% for s in distributors %}
+# Supplier {{ s }}
+build ee/{{ s }}/search-list.xml: pn-part-search-list ee/sch.xml
+ supplier = {{ s }}
-build ee/{{ d }}/downloaded.xml: {{ d }}-search-parts ee/{{ d }}/search-list.xml
+build ee/{{ s }}/downloaded.xml: {{ s }}-search-parts ee/{{ s }}/search-list.xml
-build ee/{{ d }}/normalized.xml: {{ d }}-normalize-facts ee/{{ d }}/downloaded.xml
+build ee/{{ s }}/parts.xml: {{ s }}-normalize-facts ee/{{ s }}/downloaded.xml
-default ee/{{ d }}/normalized.xml
+default ee/{{ s }}/parts.xml
{%- endfor %}
{%- for f in parts_yaml_files %}
@@ -86,7 +90,12 @@ build ee/bom.xml | $report_dir/bom.rst: create-bom ee/sch.xml {%- for p in part_
strategy = --strategy {{ project.cfg["create-bom"]["strategy"] }}
{%- endif %}
-default ee/bom.xml
+build ee/orders/index.xml: export-order ee/bom.xml {%- for p in part_dbs %} {{ p }}.xml{% endfor %}
+ order = ee/bom.xml
+ part_dbs ={%- for p in part_dbs %} --part-db {{ p }}.xml{% endfor %}
+ out_dir = ee/orders
+
+default ee/orders/index.xml
rule seeed-download-opl
description = seeed-download-opl $opl