Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IDF Component Registry manifest #990

Merged
merged 2 commits into from
Feb 28, 2024
Merged

IDF Component Registry manifest #990

merged 2 commits into from
Feb 28, 2024

Conversation

nicklasb
Copy link
Contributor

@nicklasb nicklasb commented Feb 27, 2024

Ok then.

I added a idf_components.yml and did a --dry-run using compote, it didn't complain, at least.

So what is done is:

  1. Sign in at components.espressif.com. I use Github.
  2. In the profile menu, click tokens and create a token. I gave it all the rights as I way looking around the CLI.
  3. Add a ~.espressif/idf_component_manager.yml or equivalent on your platform.
  4. Make it look like:
profiles:
  default:
    api_token: "ADD THE FULL TOKEN HERE"
  1. Now you are logged in on the command line when you run IDF stuff.
  2. In the repository folder, run: compote component upload --name Radiolib

If you haven't gotten any errors, you should be able to search for find Radiolib at https://components.espressif.com/ .
I hope I haven't forgotten any steps, is really tired today, but seeing that you seem to work with getting stuff up in space, I am sure you can get stuff up on Espressif as well if I have made some mistake. :-)

Good luck!

@jgromes
Copy link
Owner

jgromes commented Feb 27, 2024

Thanks! I'll read up on some docs before merging this, to make sure I understand the workflow. But it seems to be similar to how platformio works.

Come to think of it I should probably automate publishing with some CI, it's getting quite tedious to be doing it manually, which is:

  1. Change versions in the appropriate files
  2. Push the updated files
  3. Wait for CI to build every example for every platform
  4. Create a tag (this gets picked up by Arduino library manager)
  5. Checkout the tag and publish to platformio
  6. Publish to espressif

@jgromes jgromes linked an issue Feb 27, 2024 that may be closed by this pull request
@nicklasb
Copy link
Contributor Author

nicklasb commented Feb 27, 2024

Yeah, that is probably a good move. Could be good idea to try once manually first though to get any kinks out.
Promise it is just not because I need it to be able to get my library up. :-)
(just saw I wrote that I logged in with LinkedIn, freudian mistake, meant GitHub of course)

@jgromes jgromes merged commit a52920b into jgromes:master Feb 28, 2024
29 checks passed
@jgromes
Copy link
Owner

jgromes commented Feb 28, 2024

@nicklasb all looks good, the package is up: https://components.espressif.com/components/jgromes/radiolib. Expect an update to 6.4.3 soon ;)

For future reference when I'm putting the release CI together, the command to upload the package must include the namespace: compote component upload --name RadioLib --namespace jgromes, otherwise a rather unhelpful ERROR: You are not allowed to perform this action. is shown.

@nicklasb
Copy link
Contributor Author

Ok, way cool. it worked! (https://components.espressif.com/components/robusto/robusto/versions/0.1.5-alpha)

For me it worked without the namespace initially, oddly. I asked for the "robusto" namespace though, so I have two namespaces, might be something like that. I didn't mention the namespace aspect as you have jgromes/ everywhere, and I assumed that you do not want to diverge from that.

There is one minor annoyance, though, and that is that the ESP-IDF CMakelist.txt reference to RadioLib had to be changed to lowercase, which might be of note to those who use RadioLib in ESP-IDF as a git-dependency following the case of the repo, or use the exact source of the nonArduino/ESP-IDF-example. Robusto is lowercase everywhere so it won't get stuck on that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

IDF Component registry
2 participants