Hugo Lambda Function

screenshot of Hugo Lambda Function

AWS Lambda function to build a Hugo website

Overview

The hugo-lambda-function is an innovative solution designed to streamline the process of building and deploying Hugo websites on AWS Lambda. Inspired by the work of Ryan Brown, this project harnesses the power of serverless architecture to automatically publish site content by responding to GitHub events via SNS (Simple Notification Service). This approach not only simplifies the deployment but also leverages AWS's scalability and reliability, making it a valuable tool for developers looking to automate their workflows.

With this utility, you can easily build a zip package that contains everything necessary for deployment. Once set up, the Lambda function will take care of building the static website and managing content storage in an S3 bucket. This means less manual intervention and a smooth flow from code changes in GitHub to live updates on your website.

Features

  • Automated Publishing: Responds to GitHub events, automatically triggering the website build process when updates are made.
  • Serverless Architecture: Utilizes AWS Lambda to build and deploy websites without worrying about server management.
  • Integration with SNS: Connects to AWS Simple Notification Service for seamless communication between GitHub and Lambda functions.
  • S3 Bucket Management: The function handles reading, listing, and updating objects in an S3 bucket, streamlining content storage.
  • Easy Setup: Comes with a build-package.sh script to simplify the process of creating the necessary zip file for deployment.
  • Cloudwatch Logging: Includes permissions for Cloudwatch, allowing for effective logging and monitoring of the Lambda function's performance.
  • Future Expansion: Plans for integration with CloudFormation for packaging the function and SNS topic together, enhancing deployment workflows.