adedner / dune-testpypi

Test pypi packages for dune
0 stars 2 forks source link

Unify different versions of dune-testpypi #14

Open adedner opened 8 months ago

adedner commented 8 months ago

Suggestion

  1. implement a 'fem-tutorial' workflow in dune/dune-testpypi that does the testing of the tutorial which is triggered by a repository_dispatch event.
  2. only provide a 'upload package' workflow here that triggers the 'fem-tutorial' workflow and on success does the upload.

See https://blog.marcnuri.com/triggering-github-actions-across-different-repositories for some details on this. The packaging needs to still be done here so there will be some code duplication but not too bad hopefully. Perhaps the artifacts can also be transferred between repos.

adedner commented 8 months ago

was auch geht, und das schaue ich mir an, sobald das packaging wieder geht, dass man actions von anderen files lädt, dann kann man zumindest mal das testing der packages vom anderen testing laden und diese code Duplizierung vermeiden.

https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fstackoverflow.com%2Fquestions%2F64055230%2Fnested-templates-calling-a-yaml-file-from-another-yaml-file-in-github-actions&data=05%7C02%7CA.S.Dedner%40warwick.ac.uk%7C24d0e1b379a94aa225de08dc33bb31c9%7C09bacfbd47ef446592653546f2eaf6bc%7C0%7C0%7C638442126280847902%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=7QVNkGnDTzdO%2B41WWMLBFeYGgxkYu%2FZpl5t2cuPgGu4%3D&reserved=0

adedner commented 8 months ago

Vielleicht kann man im Privaten repo action file ein clone einbauen fuer das dune repo und die entscheidenden Dateien dort rauskopieren?

adedner commented 8 months ago

Idee:

  1. 'testing' wird nur noch in dune/dune-testpypi gemacht. Wir bauen da noch einen test fuer das ganze tutorial ein, so wie er jetzt in adedner/dune-testpypi existiert.
    1. In adedner/dune-testpypi machen wir nur noch einen workflow, der nur letzten Teil vom jetzigen .github/workflows/packaging.yml. Im Moment wird im upload​ Schritt actions/download-artifact@v3 ausgefuehrt, wodurch die Datei packages.zip​ gehohlt wird. Die Pakete aus der Datei werden dann nach pypi oder wo auch immer hochgeladen. Das kann so bleiben, ausser das packages.zip​ von dune/dune-testpypi gehohlt werden muss. Das geht wohl https://github.com/actions/download-artifact?tab=readme-ov-file#download-artifacts-from-other-workflow-runs-or-repositories

Nachteil:

um Pakete zu bauen muss man erst das tutorial testing in dune/dune-testpypi anstossen und wenn das geklappt hat, muss man zu adedner/dune-testpypi wechseln, um das hochladen zu machen. Aber dafuer ist alles was das bauen und testen angeht an einer Stelle und im anderen repo sind wirklich nur noch eine Datei mit den hochlade Skript.

Zusatz

Wenn das so funktioniert, dann koennen wir noch in den adedner/dune-testpypi workflow einbauen, dass der testing workflow in dune/dune-testpypi angestossen wird und dann das package.zip artifact holen und hochladen. Siehe link in der Beschreibung oben.