π₯ backlog
Module-Cloud π
[TECH ED] Coursework feedback π Clone
Link to the coursework
https://github.com/CodeYourFuture/Module-Cloud/issues/
Why are we doing this?
The CYF curriculum is an open source project. Like all software, it is continually revised and improved in iterations.
Help improve the curriculum by giving quick emoji feedback on any assignment.
Feedback on this assignment by pressing the emoji reaction button on the top comment.
Emoji Key
π = Useful
π = Not useful
π = Way too much time given
π = Not enough time given
You are invited to give feedback on any assignment in this way. Do this on the CYF issue, not your copy, so CYF can track it using the GitHub reactions API.
Maximum time in hours
.05
How to submit
Click the emoji button on the first post on any coursework assignment.
- π― Topic Iteration
- π― Topic Teamwork
- ποΈ Priority Stretch
- π¦ Size Tiny
- π Week 4
[TECH ED] Develop extra skills with Udemy courses π Clone
Link to the coursework
https://codeyourfuture.udemy.com/learning-paths/2897212/
Why are we doing this?
We have a partnership with Udemy and you have access to thousands of specialised courses. Use this resource to develop your skills and consolidate your understanding.
Don’t like these courses? Suggest better ones. π
Maximum time in hours
n/a
How to get help
The best way to make progress in courses is to form a study group and do a course together. You don’t need to overcomplicate this – just checking in for 15 minutes a week with each other can help you focus, and finish.
- π― Topic Programming Fundamentals
- π― Topic Teamwork
- π― Topic Time Management
- ποΈ Priority Stretch
- π Size Medium
- π Sprint 2
[TECH ED] Check module success criteria π Clone
Link to the coursework
https://curriculum.codeyourfuture.io/cloud/success/
Why are we doing this?
π The most important thing is that you are secure in your understanding.
At the end of the course, we will expect you to deploy infrastructure as code using your understanding. If you cannot build things, we cannot put you forward for jobs. It is in your personal interest to make sure you have properly understood this track.
To join the Cloud employment pool, you will need to successfully complete this track. How will you as a cohort meet the success criteria? Discuss it in your channel and make a plan together.
π§πΏβπ€ good strategies
- asking volunteers to review your code
- helping each other with coursework blockers
- arranging midweek study sessions
- using Saturday time to review code and demo progress
π
πΏ bad strategies
- opening empty PRs or pretending to do work
- copying and pasting
- breaking the Trainee Agreement
- mistaking the measure for the target
Maximum time in hours
.5
How to get help
Discuss with your cohort. Support each other.
How to submit
In the penultimate sprint of your module you will need a representative to report to the organisation. Post your decision on Slack. Here’s your template, fill in your details and delete as appropriate:
# π Cohort Progress Report from @cohort-name to @programme-team
- criterion
- criterion
- criterion
- criterion
β
We are on target to complete this module.
β We are taking a consolidation week to meet our targets.
- π― Topic Code Review
- π― Topic Communication
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Teamwork
- π― Topic Testing
- π― Topic Time Management
- π Priority Mandatory
- π¦ Size Tiny
- π Week 1
- π Week 4
[TECH ED] Play the Bandit π Clone
Link to the coursework
https://overthewire.org/wargames/bandit/
Why are we doing this?
Basic Linux skills are essential for roles in Cloud, DevOps, Cyber, and SRE. Junior Cloud and DevOps roles are growing in the industry. It’s a good idea to practice Linux skills to make yourself more employable. During this module, you will execute commands in the terminal to create files and run scripts, so you will have many chances to practice your command line skills.
Your goal is to get to Level 30 by the end of the module. πͺ You can do this!
Maximum time in hours
n/a stretch
How to get help
Work through the puzzles together in #cyf-over-the-wire
Take this Linux 101 course if you are enjoying the puzzles
How to submit
There is no submission step. However, to apply for some roles and some courses (like CYF+ ) you must demonstrate these skills, so it would be a good idea to learn them.
Anything else?
Here’s a ChatGPT prompt you can use to get the best, most helpful learning experience:
Please act as a friendly, warm, straightforward technical mentor. You are an experienced Site Reliability Engineer who uses the terminal regularly and understands all shell commands in bash. You can explain clearly, using English mostly at CEFR B2 level, how to execute shell commands and how to navigate Linux file systems. We will be playing The Bandit, Over the Wire, shell game together. I don’t want you to give me all the answers. I want you to walk me towards the answer, helping me to find out and learn Linux commands, explaining clearly what is happening as we go. Please answer my questions carefully and do not offer code solutions, just explain in English the approach I should take and then review the commands I suggest to you. Say okee dokee if you understand.
And remember: every time ChatGPT offers code you don’t recognise, you must ask “Is this valid” before you continue. ChatGPT makes up invalid code all the time.
- π― Topic Problem-Solving
- π― Topic Programming Fundamentals
- ποΈ Priority Stretch
- π¦ Size Tiny
- π Sprint 2
[TECH ED] Use Terraform to add the previous steps π Clone
Link to the coursework
https://registry.terraform.io/namespaces/terraform-aws-modules
Why are we doing this?
This ticket assume you have completed #20 #21 #22 #23
By completing these tasks, youβll gain practical experience in implementing scalability and monitoring within AWS, essential for maintaining a healthy and efficient application. By using Terraform, you’ll have the opportunity to embed your understanding of infrastructure as code.
Use Terraform
Terraform: update the existing terraform files to add the previous steps in this coursework.
Maximum time in hours
n/a
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Commit your terraform files to your working repo.
- π― Topic Code Review
- π― Topic Delivery
- π― Topic Iteration
- π― Topic Requirements
- ποΈ Priority Stretch
- π¦ Size Large
- π Sprint 5
[TECH ED] Setup Scalability And Monitoring: CloudWatch Dashboards π Clone
Link to the coursework
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html
Why are we doing this?
In this sprint, youβll focus on implementing scalability features and monitoring capabilities for the CYF Hotel project.
Set High Availability for RDS
Create Custom Dashboard: Utilize CloudWatch Metrics to create a custom dashboard that shows metrics for both EC2 and RDS services.
By completing these tasks, youβll gain practical experience in implementing scalability and monitoring within AWS, essential for maintaining a healthy and efficient application.
Maximum time in hours
n/a
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- ποΈ Priority Stretch
- π Size Medium
- π Sprint 5
[TECH ED] Setup Scalability And Monitoring: CloudWatch Alarms π Clone
Link to the coursework
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html
Why are we doing this?
In this sprint, youβll focus on implementing scalability features and monitoring capabilities for the CYF Hotel project.
Set High Availability for RDS
Navigate to CloudWatch: In the AWS Management Console, navigate to the CloudWatch service.
Create CPU Utilization Alarm: Set up an alarm to monitor the CPU utilization of your EC2 instances.
Create RDS Read/Write Alarm: Set up another alarm to monitor the Read and Write capacity of your RDS instance.
Maximum time in hours
2
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- π Priority Mandatory
- π Size Medium
- π Sprint 5
[TECH ED] Setup Scalability And Monitoring: High Availability for RDS π Clone
Link to the coursework
https://docs.aws.amazon.com/rds/
Why are we doing this?
In this sprint, youβll focus on implementing scalability features and monitoring capabilities for the CYF Hotel project.
Set High Availability for RDS
Modify RDS Instance: In the AWS RDS Dashboard, modify your existing RDS instance to include Multi-AZ deployments for MySQL, PostgreSQL, SQL Server, or Oracle.
Maximum time in hours
1
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- π Priority Mandatory
- π¦ Size Large
- π Sprint 5
[TECH ED] Setup Scalability And Monitoring: EC2 Load Balancers π Clone
Link to the coursework
https://docs.aws.amazon.com/elasticloadbalancing/
Why are we doing this?
In this sprint, youβll focus on implementing scalability features and monitoring capabilities for the CYF Hotel project.
Setup EC2 Load Balancers
Create EC2 Load Balancer: In the AWS Management Console, set up a new EC2 Load Balancer.
Configure Load Balancer: Add rules to your Load Balancer to route traffic to your EC2 instances.
Test Load Balancer: Ensure that the Load Balancer is distributing traffic across multiple EC2 instances
Maximum time in hours
3
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- π Priority Mandatory
- π¦ Size Large
- π Sprint 5
[TECH ED] Prepare for live session π Clone
Link to the coursework
https://curriculum.codeyourfuture.io/cloud/sprints/5/prep/
Why are we doing this?
It is essential to start learning new concepts and ideas before Saturday’s session. During the week, we expect you to get stuck and form questions about the new content so you can address misconceptions during Saturday’s session. The prep work here will introduce you to the new concepts for the week.
You will need to do this prep work before tackling the coursework.
Maximum time in hours (Tech has max 16 per week total)
3
How to get help
Share your blockers in your track channel
https://curriculum.codeyourfuture.io/guides/asking-questions
How to submit
It will be clearly evident if you don’t do the prep. At CYF we come to class prepared.
- :brain: Prep work
- π Priority Mandatory
- π Size Medium
- π Priority Key
- π Sprint 5
[TECH ED] Prepare for live session π Clone
Link to the coursework
https://curriculum.codeyourfuture.io/cloud/sprints/4/prep/
Why are we doing this?
It is essential to start learning new concepts and ideas before Saturday’s session. During the week, we expect you to get stuck and form questions about the new content so you can address misconceptions during Saturday’s session. The prep work here will introduce you to the new concepts for the week.
You will need to do this prep work before tackling the coursework.
Maximum time in hours (Tech has max 16 per week total)
3
How to get help
Share your blockers in your track channel
https://curriculum.codeyourfuture.io/guides/asking-questions
How to submit
It will be clearly evident if you don’t do the prep. At CYF we come to class prepared.
- :brain: Prep work
- π Priority Mandatory
- π Size Medium
- π Priority Key
- π Sprint 4
[TECH ED] Prepare for live session π Clone
Link to the coursework
https://curriculum.codeyourfuture.io/cloud/sprints/3/prep/
Why are we doing this?
It is essential to start learning new concepts and ideas before Saturday’s session. During the week, we expect you to get stuck and form questions about the new content so you can address misconceptions during Saturday’s session. The prep work here will introduce you to the new concepts for the week.
You will need to do this prep work before tackling the coursework.
Maximum time in hours (Tech has max 16 per week total)
3
How to get help
Share your blockers in your track channel
https://curriculum.codeyourfuture.io/guides/asking-questions
How to submit
It will be clearly evident if you don’t do the prep. At CYF we come to class prepared.
- :brain: Prep work
- π Priority Mandatory
- π Size Medium
- π Priority Key
- π Sprint 3
[TECH ED] Prepare for live session π Clone
Link to the coursework
https://curriculum.codeyourfuture.io/cloud/sprints/2/prep/
Why are we doing this?
It is essential to start learning new concepts and ideas before Saturday’s session. During the week, we expect you to get stuck and form questions about the new content so you can address misconceptions during Saturday’s session. The prep work here will introduce you to the new concepts for the week.
You will need to do this prep work before tackling the coursework.
Maximum time in hours (Tech has max 16 per week total)
3
How to get help
Share your blockers in your track channel
https://curriculum.codeyourfuture.io/guides/asking-questions
How to submit
It will be clearly evident if you don’t do the prep. At CYF we come to class prepared.
- :brain: Prep work
- π Priority Mandatory
- π Size Medium
- π Priority Key
- π Sprint 2
[TECH ED] Prepare for live session π Clone
Link to the coursework
https://curriculum.codeyourfuture.io/cloud/sprints/1/prep/
Why are we doing this?
It is essential to start learning new concepts and ideas before Saturday’s session. During the week, we expect you to get stuck and form questions about the new content so you can address misconceptions during Saturday’s session. The prep work here will introduce you to the new concepts for the week.
You will need to do this prep work before tackling the coursework.
Maximum time in hours (Tech has max 16 per week total)
3
How to get help
Share your blockers in your track channel
https://curriculum.codeyourfuture.io/guides/asking-questions
How to submit
It will be clearly evident if you don’t do the prep. At CYF we come to class prepared.
- :brain: Prep work
- π Priority Mandatory
- π Size Medium
- π Priority Key
- π Sprint 1
[TECH ED] Check module success criteria π Clone
Link to the coursework
https://curriculum.codeyourfuture.io/cloud/success/
Why are we doing this?
π The most important thing is that you are secure in your understanding.
At the end of the course, we will expect you to deploy infrastructure as code using your understanding. If you cannot build things, we cannot put you forward for jobs. It is in your personal interest to make sure you have properly understood this track.
To join the Cloud employment pool, you will need to successfully complete this track. How will you as a cohort meet the success criteria? Discuss it in your channel and make a plan together.
π§πΏβπ€ good strategies
- asking volunteers to review your code
- helping each other with coursework blockers
- arranging midweek study sessions
- using Saturday time to review code and demo progress
π
πΏ bad strategies
- opening empty PRs or pretending to do work
- copying and pasting
- breaking the Trainee Agreement
- mistaking the measure for the target
Maximum time in hours
.5
How to get help
Discuss with your cohort. Support each other.
How to submit
In the penultimate sprint of your module you will need a representative to report to the organisation. Here’s your template, fill in your details and delete as appropriate:
π Cohort Progress Report from @cohort-name to @programme-team
- criterion
- criterion
- criterion
- criterion
β
We are on target to complete this module.
β We are taking a consolidation week to meet our targets.
- π― Topic Code Review
- π― Topic Communication
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Teamwork
- π― Topic Testing
- π― Topic Time Management
- π Priority Mandatory
- π¦ Size Tiny
- π Week 1
- π Week 4
[TECH ED] Using Terraform Modules and Remote State π Clone
Link to the coursework
https://developer.hashicorp.com/terraform/docs
Why are we doing this?
Objective
In this exercise, you will utilize a Terraform module to create a reusable configuration for S3 buckets. Additionally, you’ll implement remote state management using an S3 bucket.
Steps
Create a Terraform Module for S3 Buckets
- Create a new directory named
s3_module
and place a new Terraform file inside it, e.g.,main.tf
. - Define the Terraform code for an S3 bucket inside this file.
- Create a new directory named
Implement Remote State in S3
- In your main Terraform configuration (
main.tf
), configure the backend for remote state using S3.
- In your main Terraform configuration (
Initialize and Apply
- Initialize your Terraform project.
- Apply the configuration to create the S3 bucket using the module and configure remote state.
Validation
- Confirm that the S3 bucket was created as expected.
- Check the S3 bucket where you store the remote state to ensure that the
terraform.tfstate
file is present.
References
Maximum time in hours
n/a stretch
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- ποΈ Priority Stretch
- π¦ Size Large
- π Sprint 4
[TECH ED] Infrastructure as Code for CYF Hotel Database in RDS π Clone
Link to the coursework
https://developer.hashicorp.com/terraform/docs
Why are we doing this?
Objective:
Use Terraform to deploy your CYF Hotel backend to an RDS instance.
Steps:
Write a Terraform configuration file main.tf
for the RDS database.
Include necessary configurations like database engine, version, and credentials.
Deploy the code to AWS.
Outcome:
After running terraform apply
, the database should be live and reachable on the RDS instance.
Maximum time in hours
2
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- π Priority Mandatory
- π Size Medium
- π Sprint 4
[TECH ED] Infrastructure as Code for CYF Hotel Backend in EC2 π Clone
Link to the coursework
https://developer.hashicorp.com/terraform/docs
Why are we doing this?
Objective:
Use Terraform to deploy your CYF Hotel backend to an EC2 instance.
Steps:
Write a Terraform configuration file (main.tf) to define the EC2 instance.
Include configurations for security groups, key pairs, and IAM roles if necessary.
Deploy the code to AWS.
Outcome:
After running terraform apply
, the backend should be running on an AWS EC2 instance accessible via its IP address.
Maximum time in hours
1.5
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- π Priority Mandatory
- π Size Medium
- π Sprint 4
[TECH ED] Infrastructure as Code for CYF Hotel Frontend in S3 π Clone
Link to the coursework
https://developer.hashicorp.com/terraform/docs
Why are we doing this?
Objective:
Use Terraform to deploy your CYF Hotel frontend to an S3 bucket.
Steps:
- Write a Terraform configuration file
main.tf
to define the S3 bucket. - Include the necessary configurations like ACL, policy, and versioning.
- Deploy the code to AWS.
Outcome:
After running terraform apply
, you should see the CYF Hotel frontend live on the S3 bucket URL.
Maximum time in hours
2
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
Demo your progress in class.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Testing
- π Priority Mandatory
- π Size Medium
- π Sprint 4
[TECH ED] Docker Compose π Clone
Link to the coursework
Why are we doing this?
Research Docker Compose, its syntax and a few examples. Think how it can help you orchestrate your 3 containers for local development, and then create a docker-compose file to use this tool to automatically build, start and network your containers. Find a way to specify dependencies, to ensure that the backend start initialising only when the database is up and running.
If you want, you can experiment with running all 3 components in EC2 via Docker compose, but keep it as an experiment. Think about some advantages and disadvantages of the 2 approaches (all in a docker-compose file inside a EC2 instance vs using multiple managed services such as S3 and RDS)
How to get help
If you are doing this for the first time, this will be hard. You must reach out to volunteers to help you. Your ability to ask for help is actively assessed during this time. Ask good, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
You are not expected to be able to complete this module completely independently. You are expected to get help from volunteers.
How to submit
In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Structuring Data
- π― Topic Testing
- ποΈ Priority Stretch
- π Sprint 2
[TECH ED] Local Development Docker π Clone
Link to the coursework
Why are we doing this?
Local development (bonus)
This step is a bonus one, if you completed all previous steps and are not behind on the previous weeks.
Dockerise your Frontend, and have it run locally alongside via Docker with your backend. Can you get both to work correctly at the same time?
Replicate the process for the database, and move it from your local instance to a local Docker Container (remember persistence via volumes).
In both cases, managed AWS services (S3 and RDS) give us a lot of advantages for Cloud Deployment, but lack support for local development, and Docker can help with that.
Imagine how you would automate, with a script, the process of rebuilding all 3 containers on changes, and restart/reconnect everything. Try to build it.
How to get help
If you are doing this for the first time, this will be hard. You must reach out to volunteers to help you. Your ability to ask for help is actively assessed during this time. Ask good, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
You are not expected to be able to complete this module completely independently. You are expected to get help from volunteers.
How to submit
In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Structuring Data
- π― Topic Testing
- ποΈ Priority Stretch
[TECH ED] Dockerise CYF Hotel π Clone
Link to the coursework
Why are we doing this?
Dockerize CYF Hotel
The main aim of this sprint is to become familiar with Docker Concepts and be able to use it to a base level. To achieve this, weβll keep working on our CYF Hotel.
Prep
Make sure you have completed the prep for this week and your Docker daemon is working correctly before continuing.
Docker Backend
Start working on dockerising your application backend. Create a Dockerfile, set it up for node and replicate your setup and install steps that were manual so far in there. Iterate until you get it to run successfully as a Docker Container locally. Hint: Remember port forwarding!
Once successful, upload your created Docker Image to either your DockerHub account or (advanced) AWSβs ECR.
Once done, Update your EC2 instance to now run your backend as a container. Hint: You will need to set up Docker on the VM itself for this to work
GitHub Pipelines
Once this is done and working fully, time to automate it - rework your Github Actions Workflow to test, build and upload your Docker image, and then deploy the new version to the EC2 machine.
Maximum time in hours
6
How to get help
If you are doing this for the first time, this will be hard. You must reach out to volunteers to help you. Your ability to ask for help is actively assessed during this time. Ask good, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
You are not expected to be able to complete this module completely independently. You are expected to get help from volunteers.
How to submit
In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Structuring Data
- π― Topic Testing
- π Priority Mandatory
- π Priority Key
- π Sprint 2
[TECH ED] GitHub Actions for Backend π Clone
Link to the coursework
https://docs.github.com/en/actions
Why are we doing this?
Setup Github Actions for CYF Hotel Backend deployments to EC2
Create GitHub Actions Workflow File: Similar to the frontend, create a new YAML file in your CYF Hotel repository under .github/workflows, and name it appropriately, like backend-ec2-deploy.yml.
Configure AWS and SSH Credentials: Store your AWS and SSH credentials securely using GitHub Secrets. These will be used to authenticate and connect to your EC2 instance.
Write EC2 Deployment Steps: Outline the steps in the YAML file for SSHing into your EC2 instance, pulling the latest code, and restarting your backend service.
Test the Workflow: Like with the frontend, push a change to your repository or manually trigger the workflow from GitHub Actions to ensure that your backend is successfully deployed to the EC2 instance.
Maximum time in hours
4
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.
- π― Topic Delivery
- π― Topic Requirements
- π― Topic Structuring Data
- π Priority Mandatory
- π Size Medium
- π Sprint 2
[TECH ED] GitHub Actions π Clone
Link to the coursework
https://docs.github.com/en/actions
Why are we doing this?
Setup Github Actions for CYF Hotel Frontend deployments to S3
Create GitHub Actions Workflow File: In your CYF Hotel repository, create a new YAML file under the .github/workflows directory. Name it something relevant, like frontend-s3-deploy.yml.
Configure AWS Credentials: Utilize GitHub Secrets to securely store your AWS credentials. These secrets will be used in the GitHub Actions workflow to authenticate against AWS.
Write S3 Deployment Steps: In the YAML file, define the steps to install AWS CLI, configure AWS credentials, and sync your build folder to your S3 bucket.
Test the Workflow: Push a change to your repository or manually run the workflow from the GitHub Actions tab to verify that the S3 deployment works as expected.
Maximum time in hours
2
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.
- π― Topic Delivery
- π― Topic Structuring Data
- π Priority Mandatory
- π Size Medium
- π Sprint 2
[TECH ED] Database Deployment π Clone
Link to the coursework
https://github.com/CodeYourFuture/React-Module-Project
Why are we doing this?
Deploy CYF Hotel Database to RDS
- Create RDS Instance: In the AWS Management Console, set up a new RDS instance.
- Configure Security Groups: Update security groups to allow incoming traffic on the database port you intend to use.
- Database Credentials: Make a note of your database credentials (username, password).
- Initialize Database: Connect to the database and initialize it with the required tables and sample data.
- Connect to Backend: Update your backend code (running on EC2) to connect to the RDS database.
- Test End-to-End: Make some test API calls to ensure that the data flows correctly from the RDS database to your EC2 backend, and then to the S3-hosted frontend.
Maximum time in hours
3
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
In this advanced module you will demo your work. You may wish to make notes for case studies to add to your portfolio.
- π― Topic Delivery
- π― Topic Requirements
- π Priority Mandatory
- π Size Medium
- π Sprint 1
[TECH ED] Backend Deployment π Clone
From Module-Cloud created by SallyMcGrath: CodeYourFuture/Module-Cloud#1
Link to the coursework
https://github.com/CodeYourFuture/React-Module-Project
Why are we doing this?
Deploy CYF Hotel Backend to EC2
- Launch EC2 Instance: Start a new EC2 instance using a suitable AMI (Amazon Machine Image).
- SSH into EC2: Use SSH to access your EC2 instance. Follow the guide from AWS on how to ssh from your machine https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-linux-inst-ssh.html
- Set up Node.js: Install Node.js and any other dependencies.
- Upload Code: Transfer your backend code to the EC2 instance. Refer to the SSH guide to transfer the code to EC2 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-linux-inst-ssh.html#linux-file-transfer-scp
- Start Application: Run your Node.js application on the EC2 instance.
- Test API: Test your API endpoints to make sure theyβre working as expected.
Maximum time in hours
3
How to get help
Ask calm, curious questions with links, code samples, and no screenshots.
https://curriculum.codeyourfuture.io/guides/asking-questions/
How to submit
In this advanced module you will demo your work.
- π― Topic Delivery
- π― Topic Requirements
- π Priority Mandatory
- π Size Medium
- π Sprint 1
[TECH ED] Frontend Deployment π Clone
Link to the coursework
https://github.com/CodeYourFuture/React-Module-Project
Why are we doing this?
Setup Github Actions for CYF Hotel Frontend deployments to S3
Create GitHub Actions Workflow File: In your CYF Hotel repository, create a new YAML file under the .github/workflows directory. Name it something relevant, like frontend-s3-deploy.yml.
Configure AWS Credentials: Utilize GitHub Secrets to securely store your AWS credentials. These secrets will be used in the GitHub Actions workflow to authenticate against AWS.
Write S3 Deployment Steps: In the YAML file, define the steps to install AWS CLI, configure AWS credentials, and sync your build folder to your S3 bucket.
Test the Workflow: Push a change to your repository or manually run the workflow from the GitHub Actions tab to verify that the S3 deployment works as expected.
Maximum time in hours
3
How to get help
If you are doing this for the first time, this will be hard. You must reach out to volunteers to help you. Your ability to ask for help is be actively assessed during this time.
You are not expected to be able to complete this module completely independently. You are expected to get help from volunteers.
How to submit
In this advanced module you will demo your work.
- π― Topic Delivery
- π― Topic Requirements
- π Priority Mandatory
- π Size Medium
- π Sprint 1