Skip to content

Commit

Permalink
CI is too long now: disabling download/upload of part images and data…
Browse files Browse the repository at this point in the history
…sheets
  • Loading branch information
eeintech committed Jul 12, 2024
1 parent 1651e5b commit e61e2e6
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 23 deletions.
9 changes: 5 additions & 4 deletions kintree/database/inventree_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -439,7 +439,7 @@ def create_category(parent: str, name: str):
return category_pk, is_new_category


def upload_part_image(image_url: str, part_id: int) -> bool:
def upload_part_image(image_url: str, part_id: int, silent=False) -> bool:
''' Upload InvenTree part thumbnail'''
global inventree_api

Expand All @@ -448,7 +448,7 @@ def upload_part_image(image_url: str, part_id: int) -> bool:
image_location = settings.search_images + image_name

# Download image (multiple attempts)
if not download_with_retry(image_url, image_location, filetype='Image'):
if not download_with_retry(image_url, image_location, filetype='Image', silent=silent):
return False

# Upload image to InvenTree
Expand All @@ -462,7 +462,7 @@ def upload_part_image(image_url: str, part_id: int) -> bool:
return False


def upload_part_datasheet(datasheet_url: str, part_ipn: int, part_pk: int) -> str:
def upload_part_datasheet(datasheet_url: str, part_ipn: int, part_pk: int, silent=False) -> str:
''' Upload InvenTree part attachment'''
global inventree_api

Expand All @@ -479,7 +479,8 @@ def upload_part_datasheet(datasheet_url: str, part_ipn: int, part_pk: int) -> st
datasheet_url,
datasheet_location,
filetype='PDF',
timeout=10
timeout=10,
silent=silent,
):
return ''

Expand Down
36 changes: 20 additions & 16 deletions kintree/database/inventree_interface.py
Original file line number Diff line number Diff line change
Expand Up @@ -557,7 +557,7 @@ def get_inventree_stock_location_id(stock_location_tree: list):
return inventree_api.get_inventree_stock_location_id(stock_location_tree)


def inventree_create(part_info: dict, stock=None, kicad=False, symbol=None, footprint=None, show_progress=True, is_custom=False):
def inventree_create(part_info: dict, stock=None, kicad=False, symbol=None, footprint=None, show_progress=True, is_custom=False, enable_upload=False):
''' Create InvenTree part from supplier part data and categories '''

part_pk = 0
Expand Down Expand Up @@ -659,21 +659,24 @@ def inventree_create(part_info: dict, stock=None, kicad=False, symbol=None, foot
part_pk,
data={'existing_image': inventree_part['existing_image']})
elif inventree_part['image']:
# Add image
image_result = inventree_api.upload_part_image(inventree_part['image'], part_pk)
if not image_result:
cprint('[TREE]\tWarning: Failed to upload part image', silent=settings.SILENT)
if enable_upload:
# Add image
image_result = inventree_api.upload_part_image(inventree_part['image'], part_pk, silent=settings.SILENT)
if not image_result:
cprint('[TREE]\tWarning: Failed to upload part image', silent=settings.SILENT)
if inventree_part['datasheet'] and settings.DATASHEET_UPLOAD:
# Upload datasheet
datasheet_link = inventree_api.upload_part_datasheet(
datasheet_url=inventree_part['datasheet'],
part_ipn=inventree_part['IPN'],
part_pk=part_pk,
)
if not datasheet_link:
cprint('[TREE]\tWarning: Failed to upload part datasheet', silent=settings.SILENT)
else:
cprint('[TREE]\tSuccess: Uploaded part datasheet', silent=settings.SILENT)
if enable_upload:
# Upload datasheet
datasheet_link = inventree_api.upload_part_datasheet(
datasheet_url=inventree_part['datasheet'],
part_ipn=inventree_part['IPN'],
part_pk=part_pk,
silent=settings.SILENT,
)
if not datasheet_link:
cprint('[TREE]\tWarning: Failed to upload part datasheet', silent=settings.SILENT)
else:
cprint('[TREE]\tSuccess: Uploaded part datasheet', silent=settings.SILENT)

if kicad:
try:
Expand Down Expand Up @@ -845,7 +848,7 @@ def inventree_create_alternate(part_info: dict, part_id='', part_ipn='', show_pr
inventree_api.update_part(pk=part_pk,
data={'existing_image': existing_image})
elif image:
inventree_api.upload_part_image(image_url=image, part_id=part_pk)
inventree_api.upload_part_image(image_url=image, part_id=part_pk, silent=settings.SILENT)

# create or update parameters
if inventree_part.get('parameters', {}):
Expand All @@ -866,6 +869,7 @@ def inventree_create_alternate(part_info: dict, part_id='', part_ipn='', show_pr
datasheet_url=datasheet,
part_ipn=part_ipn,
part_pk=part_id,
silent=settings.SILENT,
)
if not part_info['datasheet']:
cprint('[TREE]\tWarning: Failed to upload part datasheet', silent=settings.SILENT)
Expand Down
6 changes: 3 additions & 3 deletions kintree/search/automationdirect_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ def find_categories(part_details: str):
return None, None


def fetch_part_info(part_number: str) -> dict:
def fetch_part_info(part_number: str, silent=False) -> dict:
''' Fetch part data from API '''

# Load Automation Direct settingss
Expand Down Expand Up @@ -212,7 +212,7 @@ def search_timeout(timeout=10):

except KeyError as e:
from ..common.tools import cprint
cprint(f'[INFO]\tNo pricing attribute "{e.args[0]}" found for "{part_number}"', silent=False)
cprint(f'[INFO]\tNo pricing attribute "{e.args[0]}" found for "{part_number}"', silent=silent)
part_info['pricing']['1'] = price_per_unit

part_info['currency'] = 'USD'
Expand Down Expand Up @@ -255,7 +255,7 @@ def test_api() -> bool:
}
}

test_part = fetch_part_info('BX-16ND3')
test_part = fetch_part_info('BX-16ND3', silent=True)
if not test_part:
test_success = False

Expand Down
1 change: 1 addition & 0 deletions run_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,7 @@ def check_result(status: str, new_part: bool) -> bool:
kicad=last_category,
symbol=part_info['Symbol'],
show_progress=False,
enable_upload=True if number == 'BSS84-7-F' else False,
)

inventree_result = check_result(status, new_part)
Expand Down

0 comments on commit e61e2e6

Please sign in to comment.