MOTOSHARE 🚗🏍️
Turning Idle Vehicles into Shared Rides & Earnings
From Idle to Income. From Parked to Purpose.
Earn by Sharing, Ride by Renting.
Where Owners Earn, Riders Move.
Owners Earn. Riders Move. Motoshare Connects.
With Motoshare, every parked vehicle finds a purpose.
Owners earn. Renters ride.
🚀 Everyone wins.
Terraform Backend
https://developer.hashicorp.com/terraform/language/settings/backends/configuration
https://www.devopsschool.com/blog/terraform-backend-tutorial
https://developer.hashicorp.com/terraform/language/settings/backends/s3
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "5.12.0"
}
azurerm = {
source = "hashicorp/azurerm"
version = "3.69.0"
}
github = {
source = "integrations/github"
version = "5.33.0"
}
}
backend "s3" {
bucket = "rajesh34444444444444444444555"
key = "devopsschoolapp/terraform.tfstate"
region = "us-east-1"
access_key = ""
secret_key = ""
}
}Code language: JavaScript (javascript)
BACKEND
Can TF integrate with CM like Ansible? What is the industry best practice in terms of TF's provisioner vs integration with other tools?
===================================================================================================================================
SDLC
------------------------------------------------------------
PLAN -> Code -> Analyze -> Build -> UT -> Package -> Archive -> Dep2QA -> AT -> CC
====================================================================================
JIRA GIT SonarQube Maven JUnit Packer Artifactory Ansible Selenium Jacoco
CONF
========================================================================================
jenkins
Packer
Create a AMI Using Packer
Config ur app in Server using Ansible
Create a Infra using terraform which contains AMI created using Pack
PASSED - Release -----> Dep2Prod
1Failed - Repeat
Dep2QA
==============
Create a QA infra using Terraform
Config ur app in Server using Ansible
Ansible - Configure your SERVER(S)
Terraform - Can Create SERVERS+Infra
provisioner "remote-exec" {
inline = [
"git clone repo-url-which-container-plybook
"ansible-playbook localhost app.yaml",
]
}
app.yaml --github
=====================================================================================================
WORKSPACE
https://www.devopsschool.com/blog/terraform-workspace-explained
terraform workspace
terraform workspace list
terraform workspace new dev
terraform workspace list
terraform plan
terraform apply --auto-approve
terraform workspace list
terraform workspace select default
terraform workspace list
terraform workspace delete dev
terraform workspace select dev
terraform destory --auto-approve
terraform destroy --auto-approve
Function
Template
DataSource
data "aws_ami" "ubuntu" {
most_recent = true
filter {
name = "name"
values = ["ubuntu/images/hvm-ssd/ubuntu-jammy-22.04-amd64-server-20230516"]
}
filter {
name = "virtualization-type"
values = ["hvm"]
}
owners = ["099720109477"] # Canonical
}
data "aws_availability_zones" "available" {
state = "available"
}
output "virtual_machine_id" {
value = data.aws_availability_zones.available.names[0]
}
output "virtual_machine_id1" {
value = data.aws_availability_zones.available.names[1]
}
output "ips_with_list_interpolation" {
value = [ for name in data.aws_availability_zones.available.names : name ]
}
resource "aws_instance" "first-ec2" {
ami = data.aws_ami.ubuntu.id # us-west-2
instance_type = "t2.micro"
tags = {
Name = "RajeshKumar"
}
}
Code language: PHP (php)
How to find a training
Notes?
https://www.bestdevops.com/terraform-notes-day-2-august/
https://www.bestdevops.com/terraform-notes-day-3-august/
https://www.bestdevops.com/terraform-notes-day-1-august/
Slides
https://devopsschool.com/slides/terraform/index.html
Tutorials
https://www.devopsschool.com/blog/?s=terraform
Videos
https://www.youtube.com/@sreschool
https://www.youtube.com/@DevSecOpsSchool
https://www.devopsschool.com/blog/top-4-youtube-channel-for-free-videos-tutorials/
Commands
https://www.devopsschool.com/commands
https://www.devopsschool.com/cheatsheets/
Quiz
https://www.devopsschool.com/lms/course/view.php?id=42
Trainer – Rajesh Kumar
https://www.rajeshkumar.xyz/