how to run multiple environments in single job in Jenkins
A pretty standard way of doing this would be to chain your jobs or your pipelines.  This lets you keep separate jobs (which can be useful), but lets you trigger one job from the other and visualize the end-to-end flow.

So, you still just tell one job to run, but it runs both properly.  Their config and logs are still well separated and you get all the other isolation related benefits.

Example: https://www.jrebel.com/blog/using-jenkins-build-pipelines

You can also do this in normal Jenkins jobs not using a pipeline; there is an option to trigger other jobs near the bottom usually.