Deploy application on a newly created AWS

I am creating an Ansible playbook that has two roles: one role that creates an AWS instance (from a pre-made AMI which includes Ansible), then another role that deploys Sonatype Nexus into that instance. I’ve tested the roles separately (and locally) to make sure they’re working fine and they work as expected, however, my problem is figuring out how to deploy Nexus into that newly created instance.

Is my approach wrong (having two separate roles for this)? I need some guidance as I’m new to Ansible.

Thanks