Migrating AWS Lambda Functions to E2E

Consider an example where the AWS lambda function is already available on a GitHub repository.

  1. First of all the user needs to clone the repository using the Git Clone command.

../_images/Migration_Function1.png ../_images/Migration_Function2.png
  1. After cloning, the Function and its supporting files can be accessed locally. Their listing would look like this.

  1. Inside the same directory, create .github/workflows directory using the command

mkdir -p .github/workflows
  1. Create a file with the name deploy.yml under the workflows folder using the command

touch .github/workflows/deploy.yml
  1. Download this yaml file using link. Copy its content and paste it inside the deploy.yml file.

  1. Change your function file name from lambda_function.py to code.txt.

../_images/Migration_Function7.png ../_images/Migration_Function8.png
  1. Change the entry-level function name from def lambda_handler to def handler.

../_images/Migration_Function9.png ../_images/Migration_Function10.png
  1. Make changes in the deploy.yml file.

    • Change the branch name. The branch from which you want to trigger the automatic deployment.

    • Change the function name and runtime. The function name should be the same as the repository name. The runtime must be the one according to the supported language choices.

  1. Commit the changes.

  1. Create the function using the e2e-cli command line tool. If e2e-cli tool is not installed, please refer to the documentation and install it.

  1. On GitHub, go to the repository’s settings tab. Navigate to Security > Secrets and variables > Actions

  2. In case of generating a new API key and Auth-Token please refer to the Documentation

../_images/Migration_Function14.png ../_images/Migration_Function15.png
  1. Navigate to the Repository Secrets section and create new secrets by clicking the New Repository Secret button. Create the following two secrets:

    • E2E_API_KEY: Use apikey generated from MyAccount as the value for this secret.

    • E2E_AUTH_TOKEN: Use the authtoken generated from MyAccount as the value for this secret.

../_images/Migration_Function16.png ../_images/Migration_Function17.png
  1. Now push the code using the git push command.

  2. On GitHub navigate to the Actions > All workflows. You will see a workflow under execution. Once it is executed successfully, the Function will be redeployed. Same you can check on the MyAccount cloud console.

../_images/Migration_Function18.png ../_images/Migration_Function19.png