CraigWatt / vfo

Video File Organiser - Remux & encode your video files for streaming. Keep entire video catalogs orderly while retaining full control of quality.
GNU General Public License v3.0
3 stars 0 forks source link

Make workflows more readable (see this example) #33

Closed CraigWatt closed 1 year ago

CraigWatt commented 1 year ago

https://github.com/kentcdodds/kentcdodds.com/blob/main/.github/workflows/deployment.yml

CraigWatt commented 1 year ago

Might also attempt to solve Linux testing AND Linux packaging in this branch too

CraigWatt commented 1 year ago

At this point, I think the best solution for tag pushes workflow is:

(ignore any testing)

  1. linux-build application (vfo binary & vfo_config.conf) (using ubuntu-latest as it is fastest)

  2. hand over vfo binary & vfo_config.conf from linux-build to apple-pkg job.

  3. hand over vfo binary & vfo_config.conf from linux-build to linux-pkg job.

  4. hand over vfo binary & vfo_config.conf from linux-build to windows-pkg job.

  5. Finally run finale 'release' job that takes in all outputs from apple-pkg, linux-pkg & windows-pkg so release will contain release 'packages' in a single release.

Will right out the imposes push tests workflow after above is working.

It looks like using GitHub Action Cache is the best way to do this:

https://github.com/marketplace/actions/cache

CraigWatt commented 1 year ago

High level for push test workflows:

Keep overkill solution, but maybe see if we can do things in parallel to speed things up.

  1. build tests on macOS
  2. run tests on macOS
  3. clean_tests on macOS

repeat this cycle in parallel for linux and windows environments. If everything passes on everything GREEN, else RED.

CraigWatt commented 1 year ago

This is in a much better position now, however I'm going to break this down into smaller stories now as it's very much being tackled as a whole rather than in smaller chunks.