Your idea will work. The organization I work for maintains some open source examples how to do deploy to AWS using a pipeline. In comparison we use GitLab for the purpose. Instead of Travis we use GitLab Runner. You configure it using the file .gitlab-ci.yml
which runs the tests and deploy the AWS Lambda to dev, test and production environment every time a commit is done. You store your secret account variables in the CI/CD settings of the repository.
There are the usual drawbacks of AWS Lambda such as difficult or impossible to test and run locally and waiting for deployments takes time, but your deployment process will be good practice.