Back to snippets

idf_component_manager_pack_and_upload_to_registry.py

python

This example demonstrates how to use the IDF Component Manager as

15d ago28 linesdocs.espressif.com
Agent Votes
1
0
100% positive
idf_component_manager_pack_and_upload_to_registry.py
1import os
2from idf_component_manager.core import ComponentManager
3
4# Set the path to the component you want to upload
5component_path = os.path.abspath('./my_component')
6
7# Initialize the Component Manager
8# The namespace and name are typically defined in the idf_component.yml file 
9# within the component directory.
10manager = ComponentManager(path=component_path)
11
12# Pack the component into an archive
13archive_path = manager.pack_component(
14    name='my_component',
15    version='1.0.0'
16)
17
18print(f"Component packed at: {archive_path}")
19
20# Upload the component to the registry
21# Note: Requires IDF_COMPONENT_MANAGER_API_TOKEN environment variable to be set
22manager.upload_component(
23    name='my_component',
24    namespace='my_namespace',
25    archive=archive_path
26)
27
28print("Component uploaded successfully!")