Skip to content

Add first set of profile commands #2916

@MatteoPologruto

Description

@MatteoPologruto

Describe the request

Add first set of specific commands to edit the sketch.yaml project file using the CLI.

  1. arduino-cli profile init [-m <PROFILE_NAME>] [-b <FQBN>]
  2. arduino-cli profile lib add [-m <PROFILE_NAME>] <LIB_NAME@VERSION>
  3. arduino-cli profile lib remove [-m <PROFILE_NAME>] <LIB_NAME@VERSION>
  4. arduino-cli profile set-default <PROFILE_NAME>
  5. arduino-cli profile dump

Features:

  1. arduino-cli profile init [-m <PROFILE_NAME>] [-b <FQBN>]
    • creates a sketch.yaml file if it does not exist
    • optionally adds a new profile with the specified <PROFILE_NAME> and . It automatically adds the platform related to the FQBN if it is installed locally or can be retrieved using the Cloud Api, otherwise it returns a message to the user. If a profile with <PROFILE_NAME>, it notifies the user
    • it checks the current directory by default
  2. arduino-cli profile lib add [-m <PROFILE_NAME>] <LIB_NAME@VERSION>
    • if a default_profile is set, the operation is executed on that profile
  3. arduino-cli profile lib remove [-m <PROFILE_NAME>] <LIB_NAME@VERSION>
    • if a default_profile is set, the operation is executed on that profile
  4. arduino-cli profile set-default <PROFILE_NAME>
    • sets <PROFILE_NAME> as the default profile
  5. arduino-cli profile dump
    • prints the content of the sketch.yaml file

Describe the current behavior

All the operations on the sketch.yaml project file must be done manually.

Arduino CLI version

nightly

Operating system

N/A

Operating system version

N/A

Additional context

No response

Issue checklist

  • I searched for previous requests in the issue tracker
  • I verified the feature was still missing when using the nightly build
  • My request contains all necessary details

Metadata

Metadata

Labels

topic: codeRelated to content of the project itselftype: enhancementProposed improvement

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions