We should now have our service connected to our serverless account and our serverless account connected to our AWS account.
Now that our service has been created, we need to deploy it, but what actually happens through the deployment process? The moment you run the serverless deploy command, the Serverless Framework will check whether there is an app and an org setting in your serverless.yml file. It will then confirm you have valid credentials. In other words, you used serverless login and that the Oregon app have valid for the serverless account in those credentials.
If this does not match, then you will receive an error telling you so. f they do match, the Serverless Framework will then request temporary AWS credentials from your serverless account, which can do so using the role ARN that we configured earlier. These credentials exist for a short time and are only used for this specific deployment.
Once those are received, the framework will then retrieve the current safeguards configured under your profile and apply them to your serverless.yml configuration. If any rules are set to error, the deployment on a failed check, it will do that here and deployment will end with an error message.
Rules that to warn on fail the checks will just explain orange warning, but otherwise deployment will continue. If all the safeguards pass, the framework will then request any secrets configured with the profile. It will then search for any references to the secrets in your serverless.yml file, which we'll look at in detail later and replace those references with the actual values required prior to deployment.
At this stage, all the checks related to your service account are completed. The framework will now continue with the process of bundling your Lambda functions, executing any plugin code needed during the various life cycle stages of the deployment process, as well as generating a CloudFormation template and then uploading a zip file of all your Lambda functions and the dependencies to an S3 bucket especially created for in your account for this purpose. The prepared CloudFormation template is then passed to your AWS account and the framework will then listen to feedback from the CloudFormation stack creation or update process on the current state of deployment.
Once completed, we get a summary of the details of our deployment as well as an indication that the deployment data was updated within our serverless account and should be visible in the dashboard.
[coming soon] S3