tools-iuc icon indicating copy to clipboard operation
tools-iuc copied to clipboard

Migrate autoupdate workflow

Open bernt-matthias opened this issue 1 year ago • 0 comments

Integrate the planemo autoupdate workflow as reusable workflow

  • Its to the largest extend identical to the excellent work of @simonbray at https://github.com/planemo-autoupdate/autoupdate, I only simplified a few bits.
  • Branches will be created locally in the IUC repo (autoupdate/REPOPATH) For people who want to add changes to such a PR might either create a PR targeting the autoupdate/REPOPATH branch?
  • This is also a potential downside of moving the tools, since the bot writes to the repository itself security considerations have to be considered. Since the workflow will have/need write premissions for creating branches and PRs we will need to make sure that in particular the main branch is protected and also changes to the workflow will need careful reviews. I also tried (on my fork) to limit the permissions to read for all workflows (in the settings) and raise it to write for the autoudate workflow.
  • The advantage will be that we won't need a wf for each repo at https://github.com/planemo-autoupdate/autoupdate/ and all repos deriving from the template will have autoupdate automatically.
  • Also added a new slash command /run-autoupdate which was quite handy for development
  • PR will have the autoupdate label (which we will need to add)
  • We will need to close / merge old autoupdate PRs manually.
  • I also tried to use an autoupdate mode of the planemo-ci-action (https://github.com/bernt-matthias/planemo-ci-action/tree/topic/autoupdate) which runs on all repos at once in a separate step. But its tricky since its difficult to add commits to an existing branch (which may have additional changes).
  • TODO change git config --global user.email "[email protected]"?

FOR CONTRIBUTOR:

  • [ ] - I have read the CONTRIBUTING.md document and this tool is appropriate for the tools-iuc repo.
  • [ ] - License permits unrestricted use (educational + commercial)
  • [ ] - This PR adds a new tool or tool collection
  • [ ] - This PR updates an existing tool or tool collection
  • [ ] - This PR does something else (explain below)

bernt-matthias avatar Oct 06 '22 07:10 bernt-matthias