esp-idf
The idf.py command-line tool provides a front-end to easily manage your project builds, deployment, debugging and more. It manages CMake, Ninja and esptool.py.Installation
dagger install github.com/alanmosely/daggerverse/esp-idf@v0.0.2
Entrypoint
Return Type
EspIdf !
Example
dagger -m github.com/alanmosely/daggerverse/esp-idf@e9ccd9158f2e38b031364f2473270e2cfafd6cca call \
func (m *myModule) example() *EspIdf {
return dag.
EspIdf()
}
@function
def example() -> dag.EspIdf:
return (
dag.esp_idf()
)
@func()
example(): EspIdf {
return dag
.espIdf()
}
Types
EspIdf 🔗
run() 🔗
Execute idf.py from the official Espressif IDF Docker image
Example usage: dagger call run –project_dir . –image_version “v5.2”
Return Type
String !
Arguments
Name | Type | Default Value | Description |
---|---|---|---|
projectDir | Directory ! | - | The directory containing the ESP-IDF project |
imageVersion | String ! | "v5.1" | The version of the Espressif IDF Docker image to use |
idfArgs | [String ! ] ! | ["build"] | The arguments to pass to idf.py |
Example
dagger -m github.com/alanmosely/daggerverse/esp-idf@e9ccd9158f2e38b031364f2473270e2cfafd6cca call \
run --project-dir DIR_PATH --image-version string --idf-args string1 --idf-args string2
func (m *myModule) example(ctx context.Context, projectDir *Directory, imageVersion string, idfArgs []string) string {
return dag.
EspIdf().
Run(ctx, projectDir, imageVersion, idfArgs)
}
@function
async def example(project_dir: dagger.Directory, image_version: str, idf_args: List[str]) -> str:
return await (
dag.esp_idf()
.run(project_dir, image_version, idf_args)
)
@func()
async example(projectDir: Directory, imageVersion: string, idfArgs: string[]): Promise<string> {
return dag
.espIdf()
.run(projectDir, imageVersion, idfArgs)
}