Gitlab ci when:manual for some branches

We would like to have the following logic: run the deploy_qa stage automatically for the master branch but require all other branches manually run the stage.

stage: deploy_qa
except:
  - master
  when:manual

Is there a simple way to accomplish this? I could not find any similar use case.