Loading repository data…
Loading repository data…
wizzfi1 / repository
This is my Cloud DevOps Portfolio Resume project — designed to showcase hands-on expertise in cloud-native architecture, automation, and deployment. It demonstrates end-to-end infrastructure delivery using AWS services, Infrastructure as Code (IaC), CI/CD pipelines, and dynamic backend APIs.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
🚀 Live Site: https://d19tltegw3kn0f.cloudfront.net
This is a Cloud DevOps Portfolio Resume, hosted entirely on AWS using modern Infrastructure as Code and CI/CD principles. It includes:
| Area | Tools & Services |
|---|---|
| ☁️ Cloud | S3, CloudFront, Lambda, DynamoDB, API Gateway |
| 📦 Infrastructure | Terraform (IaC), Ansible (automation) |
| 🚀 CI/CD | GitHub Actions |
| 👨💻 Frontend | HTML5, CSS3, JavaScript |
| 🔐 Security | IAM Roles, OAC, CORS |
GitHub Actions automatically deploys the resume-website/ folder to S3 and invalidates the CloudFront cache on every push to the main branch.
name: Deploy Resume to S3
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Configure AWS credentials (eu-north-1)
uses: aws-actions/configure-aws-credentials@v3
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: eu-north-1
- name: Deploy static site to S3
run: aws s3 sync ./resume-website s3://wizfi-bucket --delete
- name: Invalidate CloudFront (global)
uses: aws-actions/configure-aws-credentials@v3
with:
aws-region: us-east-1
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- run: |
aws cloudfront create-invalidation \
--distribution-id EG6N3RCWLM0WT \
--paths "/*"
📈 Visitor Count Integrated AWS Lambda function increments and retrieves resume views in real-time from DynamoDB.
// Frontend snippet in index.html
fetch("https://2k88saonj3.execute-api.eu-north-1.amazonaws.com")
.then(res => res.json())
.then(data => {
document.getElementById("visitor-count").innerText = 👁️ Views: ${data.views};
});
Trigger Lambda Counter: Open devtools and refresh to see view count increase
🛡 License MIT License © Wisdom Shaibu