ida-plugins icon indicating copy to clipboard operation
ida-plugins copied to clipboard

Using GitHub Actions to automate update monitor & contribution

Open NyaMisty opened this issue 3 years ago • 3 comments

Better Workflow for this repo

Automated Contribution

This repo is actually using GitHub as an DB. Now, if one wants to contribute to this repo, he has to modify the README.md & data.js (which is even sorted, have to find correct place to insert new plugin). That's quite compilcated. We can actually use GitHub Actions:

  1. If one want's to submit new plugin, he submit an issue in template
  2. Github Actions triggered by the issue, and creates a PR containing update to data.js and README, with a "Close #XXXX" linked back to the issue
  3. Writer of this repo can then review and pass the PR In this way we can make the "DB" insertion more friendly

Automated Update Check

Secondly, the last update time is still manually measured. Considered that most plugins are hosted on github, we can actually make a cron gitthub action to automatically check all plugin's update time.

The updater then automatically updates README and data.js, which release repo owner from updating everything manually

NyaMisty avatar Jun 27 '22 18:06 NyaMisty

Thanks for the suggestions! I quite like the idea of having some form of automated submission mechanism leveraging GitHub's features to make it easy. I don't know much about GitHub actions, would you know of a repo you could point to that uses something similar to what you're suggesting so I could peek at how it was done?

Now in terms of manual work, I actually have a bit of python that I still haven't added to the repo that does most things already: I simply add something to the .js file (this is the single source of truth), and the script resorts the js and regenerates the README.md. The script also goes and fetches all the last updated timestamps from GitHub, this is not manual either.

If I understand your suggestion correctly it sounds like the tool I'm mentioning would be 90% of what the action would need to do. Interesting.

vmallet avatar Jun 30 '22 05:06 vmallet

I don't know much about GitHub actions, would you know of a repo you could point to that uses something similar to what you're suggesting so I could peek at how it was done? There's one: https://github.com/Ash258/Scoop-GithubActions It's quite like my suggestion. The repo auto-updates itself, when issue created it triggers some other actions.

the script resorts the js and regenerates the README.md Glad to hear that! That's exactly what I want & part of what's I'm suggesting.

If I understand your suggestion correctly it sounds like the tool I'm mentioning would be 90% of what the action would need to do. Interesting. Yup, in my opinion the action is simply automating the script process, so that you won't need too much time.

I can help with this as I've actually made quite a lot actions before. Could you put your script into this repo?

NyaMisty avatar Jun 30 '22 06:06 NyaMisty

I'd appreciate the help with the action. I'll add the script to the repo after I get it de-hackified a bit which might be another week given how July has gone so far. I'll ping the issue once it's there.

vmallet avatar Jul 08 '22 18:07 vmallet