awslabs / aws-service-catalog-puppet

This is a framework where you list your AWS accounts with tags and your AWS Service Catalog products with tags or target accounts. The framework works through your lists, dedupes and spots collisions and then provisions the products into your AWS accounts for you. It handles the Portfolio sharing, its acceptance and can provision products cross account and cross region.
Apache License 2.0
75 stars 41 forks source link

generate-task-reference takes too long to execute #623

Closed eamonnfaherty closed 1 year ago

eamonnfaherty commented 1 year ago

Describe the bug Running servicecatalog-puppet --info generate-task-reference manifest-expanded.yaml takes over 1 hour to complete.

To Reproduce Steps to reproduce the behavior:

  1. Run servicecatalog-puppet --info generate-task-reference manifest-expanded.yaml

Expected behavior Should run in under 5 mins.

Attachments Please attach a copy of your manifest, expanded-manifest, logs and build artefacts where appropriate.

eamonnfaherty commented 1 year ago

nx.find_cycle(g) is executed during generate-task-rerference. Running find_cycle takes a long time.

eamonnfaherty commented 1 year ago

nx.is_directed_acyclic_graph is a quicker check that takes seconds to run. Will wrap find_cycle within nx.is_directed_acyclic_graph and only execute it when needed.

eamonnfaherty commented 1 year ago

fixed in https://github.com/awslabs/aws-service-catalog-puppet/releases/tag/0.214.0