One way to do that is AWS Code Deploy by using the S3 option with Gitlab-CI
Gitlab does not offer direct S3 integration but using "gitlab-ci.yml it can be downloaded into the container and then you can run the upload commands to put the generated zip file on the S3 container.
Here is the sample gitlab-ci.yml:
before_script:
- apt-get update --quiet --yes
- apt-get --quiet install --yes python
- pip install -U pip
- pip install awscli
AWS has full detailed documentation you can even refer to that.
Interested in learning AWS? Check out: AWS Certification