You can configure the runners on EC2 instances. Also, you have few options, like:
1. Managing your own runners and giving them permissions to drop built files in S3 and your instances will pick from there. Then you can trigger SSM commands from the runner targeting your instances and they will download the built files.
2. Also you can look into S3 notifications, use them to trigger Lambda Function functions on object uploads and Lambda could then push SSM commands to instances, it's pretty fast.
Do you want to learn more about AWS? Checkout AWS Training by Intellipaat!