Skip to content

Latest commit

 

History

History

deploy-a-lifecycle-job

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Deploy a lifecycle job

This ready to use example show you how to deploy a lifecycle job from GitHub (and from an image) on AWS. All of that in just a few lines of Terraform file.

Terraform providers used:

Behind the scene

Behind the scene, Qovery:

  1. Creates a complete infrastructure on your AWS account (VPC, Security Groups, Subnet, EKS/Kubernetes...)
  2. Creates Qovery resources:
  3. Organization Terraform Demo
  4. Project lifecycle-job
  5. Environment production
  6. Application lifecycle-job
  7. Builds echo app application
  8. Pushes echo app container image in your ECR registry
  9. Deploys it on your EKS cluster (created by Qovery) and run it on the schedule you've defined

It will take approximately 20 minutes to create your infrastructure and less than 5 minutes to deploy your lifecycle job.

How to use

  1. Clone this repository
  2. Sign in to Qovery
  3. Install the Qovery CLI and generate an API Token with this guide.
  4. Generate your AWS credentials (Access Key ID and Secret Access Key) with this guide
  5. Open you terminal and run the following command by changing the values:
export TF_VAR_aws_access_key_id=YOUR_AWS_ACCESS_KEY_ID \
TF_VAR_aws_secret_access_key=YOUR_AWS_SECRET_ACCESS_KEY \
TF_VAR_qovery_access_token=YOUR_QOVERY_API_TOKEN \
TF_VAR_qovery_organization_id=YOUR_QOVERY_ORG_ID
  1. Clone my Echo app
  2. Edit the main.tf file and change:
  • Resource resource "qovery_job" "lifecycle-job" field source.git_repository.url (=https://github.com/Qovery/terraform-provider-testing.git) with yours
  • Resource resource "qovery_job" "lifecycle-job" field source.git_repository.branch (=job-echo-n-seconds) with yours
  1. You can now run the Terraform commands
terraform init
terraform plan
terraform apply
  1. Open your Qovery console to find out the newly created lifecycle job.
  2. To tear down your infrastructure and avoid unnecessary cloud costs you can run terraform destroy.