
This is just something I add for used cases where I do actually have external dependencies.
#Vagrant aws install#
We're also running the install for any requirements in the requirements txt. So it's the official python library for AWS. So we're installing moto, which is a mock version of voto, which is a library that allows you to interact with AWS with python. So by activating it, it makes sure to install with the right version of pip, the version in our virtual env. So all the dependencies will localized and you don't have to worry about stomping on different versions of different binaries. This just allows you to have isolated applications so when you do your development, if you do them in a virtual environment, you can have all the dependencies in that environment and it's not going to mess up any other applications if they're all wrapped in a virtual environment. So, here it's setting up a new virtual environment.
#Vagrant aws zip#
And it'll set up zip which is not a python tool but used for zipping up the files and sending them off lambda. It's going to set up python-3.6, then it'll set up some python tools such as pip virtual env. And then to provision it, it's going to run the shell script. It's set to gui list, so no user interface. So everything in this folder will exist on the virtual machine under slash app underscore files. It's also syncing the folder that's this folder here. So you can see we're binding two ports on the guest and the host.
#Vagrant aws software#
It's going to install some software so this is just going to be a bootstrap script for the virtual machine.

If you're new to Vagrant, this is going to create a virtual machine and then set up port mapping. First I wanna set this to ruby because this is a ruby syntax and the syntax highlighting will make it just a bit easier to understand. This is basically where all of the DevTools are going to be created. Alright, let's check out the Vagrant file. So if you're new to Vagrant, I recommend that you check out the Vagrant documentation before moving on. We're going to cover the Vagrant file, but we're not really going to through Vagrant in depth. We'll also set up the AWS credentials file which is used to authenticate the AWS CLI. In this lesson we'll be reviewing the Vagrant file which is used to specify the settings for the development vm as well as provision it with some software that we'll need.

Note: The Apple M1 chip isn't compatible with this course currently. You'll use Lambda, API Gateway, S3, DynamoDB, and Cognito to create a multi-user to-do list application based on Vue.js. In this course, you'll build a serverless web application using Python 3.6. What has changed is that cloud providers now make it easy for software engineers to focus on writing their code, without having to focus on the underlying server. And that’s something that hasn’t changed. Regardless of the languages, tools, and frameworks used, there’s always a server running the code. Throughout all the changes in web development over the years, the server has been a constant. Over time, as JavaScript frameworks gained functionality and popularity, there was a shift towards putting more of the logic into the front end, and using the back-end as a supporting API. It started out with static web sites before moving on to dynamic sites that were rendered on the server. For years, web development has continued to evolve alongside programming languages, tooling, and frameworks.
