GitHub Actions workflow to run steps on all 3 OSes: Linux, Windows and MacOS

Simple workflow to run commands on all 3 operating systems:

name: My Workflow
on:
  push:
    branches:
      - main
  workflow_dispatch:
jobs:
  run-on-all-3-oses:
    name: Run on (${{ matrix.os }})
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
        include:
          - os: ubuntu-latest
            system: Ubuntu Linux
          - os: macos-latest
            system: MacOS
          - os: windows-latest
            system: Windows
    steps:
      - uses: actions/checkout@v4

      - name: Hello from ${{ matrix.os }}
        run: |
          echo "Hello from ${{ matrix.system }}"