Deployment takes a long time

Hi @markvantage ,

I added a command inside the CLI to troubleshoot the deployment time (not released yet). Here is the output for my test inside your project.

 go build && ./qovery-cli environment deployment explain --organization "[REDACTED]" --project "[REDACTED]" --environment "test-romaric" --level "step"
.
└── Environment: test-romaric [duration: 10 minutes and 57 seconds]
    ├── Stage 1: Dependencies [duration: 1 minute and 37 seconds]
    │   ├── redis [duration: 1 minute and 33 seconds]
    │   │   └── Step 1: Deploy [duration: 50 seconds]
    │   ├── postgres [duration: 1 minute and 33 seconds]
    │   │   └── Step 1: Deploy [duration: 1 minute and 1 seconds]
    │   ├── elasticsearch [duration: 1 minute and 33 seconds]
    │   │   └── Step 1: Deploy [duration: 1 minute and 26 seconds]
    │   └── mailhog [duration: 1 minute and 32 seconds]
    │       └── Step 1: Deploy [duration: 1 minute and 0 seconds]
    ├── Stage 2: Essentials [duration: 3 minutes and 38 seconds]
    │   ├── db-migration-job [duration: 3 minutes and 25 seconds]
    │   │   └── Step 1: Deploy [duration: 3 minutes and 8 seconds]
    │   ├── fe-app [duration: 3 minutes and 35 seconds]
    │   │   ├── Step 1: Deploy [duration: 3 minutes and 35 seconds]
    │   │   └── Step 2: Deployed [duration: 1 minute and 46 seconds]
    │   └── fe-admin [duration: 3 minutes and 35 seconds]
    │       ├── Step 1: Deploy [duration: 3 minutes and 35 seconds]
    │       └── Step 2: Deployed [duration: 1 minute and 56 seconds]
    ├── Stage 3: CONTAINER DEFAULT [duration: 1 minute and 33 seconds]
    │   ├── api-ruby [duration: 1 minute and 30 seconds]
    │   │   ├── Step 1: Deploy [duration: 1 minute and 30 seconds]
    │   │   └── Step 2: Deployed [duration: 36 seconds]
    │   ├── node-api [duration: 1 minute and 30 seconds]
    │   │   ├── Step 1: Deploy [duration: 1 minute and 30 seconds]
    │   │   └── Step 2: Deployed [duration: 13 seconds]
    │   └── worker-que [duration: 1 minute and 21 seconds]
    │       └── Step 1: Deploy [duration: 36 seconds]
    ├── Stage 4: APPLICATION DEFAULT [duration: 1 minute and 11 seconds]
    │   ├── hasura-external [duration: 1 minute and 9 seconds]
    │   │   ├── Step 1: Deploy [duration: 1 minute and 9 seconds]
    │   │   └── Step 2: Deployed [duration: 19 seconds]
    │   ├── worker-sidekiq [duration: 1 minute and 0 seconds]
    │   │   └── Step 1: Deploy [duration: 37 seconds]
    │   └── hasura [duration: 1 minute and 7 seconds]
    │       ├── Step 1: Deploy [duration: 1 minute and 7 seconds]
    │       └── Step 2: Deployed [duration: 11 seconds]
    └── Stage 5: ALL OTHER [duration: 2 minutes and 43 seconds]
        ├── hasura-external-migration-job [duration: 2 minutes and 39 seconds]
        │   └── Step 1: Deploy [duration: 2 minutes and 25 seconds]
        ├── hasura-migration-job [duration: 2 minutes and 40 seconds]
        │   └── Step 1: Deploy [duration: 2 minutes and 28 seconds]
        └── node-worker [duration: 2 minutes and 40 seconds]
            └── Step 1: Deploy [duration: 1 minute and 39 seconds]

By quickly looking, I do think you should take a look at the following services to see if you can optimize them:

  • db-migration-job → it takes 3 minutes and 8 seconds to be deployed
  • fe-admin → it also takes 3 minutes to be deployed
  • fe-app → same for this one

But when I looked at the details of the Stage 2 (Essentials) and those services… I see that they are most of their time waiting to get a new Kubernetes node available.

    ├── Stage 2: Essentials [duration: 3 minutes and 38 seconds]
    │   ├── db-migration-job [duration: 3 minutes and 25 seconds]
    │   │   └── Step 1: Deploy [duration: 3 minutes and 8 seconds]
    │   │       ├── 🔓 Login to registry docker.io as user [REDACTED]devops
    │   │       ├── 🪞 Mirroring image to private cluster registry to ensure reproductibility
    │   │       ├── 🚀 Deployment of Job at tag [REDACTED]/api-ruby:master is starting with a timeout/max duration of 5.00 minutes
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │       ├── ┃  |__ Pod job-zbe271275-db-migration-job-9cqst is STARTING
    │   │       ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │       ├── ┃  |__ Pod job-zbe271275-db-migration-job-9cqst is STARTING
    │   │       ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │       ├── ┃  |__ Pod job-zbe271275-db-migration-job-9cqst is STARTING
    │   │       ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │       ├── ┃  |__ Pod job-zbe271275-db-migration-job-9cqst is STARTING
    │   │       ├── ┃     |__ ℹ️ Successfully pulled image "busybox:1.34.1" in 728.168337ms (728.186637ms including waiting)
    │   │       ├── ┃     |__ ℹ️ Created container qovery-wait-container-output
    │   │       ├── ┃     |__ ℹ️ Started container qovery-wait-container-output
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │       ├── ┃  |__ Pod job-zbe271275-db-migration-job-9cqst is STARTING
    │   │       ├── ┃     |__ ℹ️ Successfully pulled image "[REDACTED].dkr.ecr.us-east-1.amazonaws.com/qovery-mirror-be271275-27c4-4cb1-b4df-[REDACTED]:[REDACTED].api-ruby.master.be271275-27c4-4cb1-b4df-[REDACTED]" in 17.882343497s (17.882366331s including waiting)
    │   │       ├── ┃     |__ ℹ️ Created container job-zbe271275-db-migration-job
    │   │       ├── ┃     |__ ℹ️ Successfully pulled image "busybox:1.34.1" in 728.168337ms (728.186637ms including waiting)
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 1 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── Waiting for the job container job-zbe271275-db-migration-job to be processed...
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 1 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 1 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── 
    │   │       ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │       ├── ┃ Job at tag [REDACTED]/api-ruby:master execution is in progress ⏳, below the current status:
    │   │       ├── ┃
    │   │       ├── ┃ 🛰 Job at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │       ├── ┃ 🛰 Job at new tag [REDACTED]/api-ruby:master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │       ├── ┃  |__ Pod job-zbe271275-db-migration-job-9cqst is STARTING
    │   │       ├── ┃     |__ ℹ️ Started container job-zbe271275-db-migration-job
    │   │       ├── ┃     |__ ℹ️ Successfully pulled image "[REDACTED].dkr.ecr.us-east-1.amazonaws.com/qovery-mirror-be271275-27c4-4cb1-b4df-[REDACTED]:[REDACTED].api-ruby.master.be271275-27c4-4cb1-b4df-[REDACTED]" in 17.882343497s (17.882366331s including waiting)
    │   │       ├── ┃     |__ ℹ️ Created container job-zbe271275-db-migration-job
    │   │       └── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   ├── fe-app [duration: 3 minutes and 35 seconds]
    │   │   ├── Step 1: Deploy [duration: 3 minutes and 35 seconds]
    │   │   │   ├── 🔓 Login to registry docker.io as user [REDACTED]devops
    │   │   │   ├── 🪞 Mirroring image to private cluster registry to ensure reproductibility
    │   │   │   ├── 🚀 Deployment of Container `z0a4c5630` at tag/commit [REDACTED]/[REDACTED]-frontend:fe_app-ci-master is starting: You have 0 pod(s) running, 0 service(s) running, 0 network volume(s)
    │   │   │   ├── 
    │   │   │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master deployment is in progress ⏳, below the current status:
    │   │   │   ├── ┃
    │   │   │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │   │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── 
    │   │   │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master deployment is in progress ⏳, below the current status:
    │   │   │   ├── ┃
    │   │   │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃  |__ Pod app-z0a4c5630-fe-app-7cd5776d4b-d9zqq is STARTING
    │   │   │   ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │   │   │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── 
    │   │   │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master deployment is in progress ⏳, below the current status:
    │   │   │   ├── ┃
    │   │   │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃  |__ Pod app-z0a4c5630-fe-app-7cd5776d4b-d9zqq is STARTING
    │   │   │   ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │   │   │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── 
    │   │   │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master deployment is in progress ⏳, below the current status:
    │   │   │   ├── ┃
    │   │   │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃  |__ Pod app-z0a4c5630-fe-app-7cd5776d4b-d9zqq is STARTING
    │   │   │   ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │   │   │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── 
    │   │   │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master deployment is in progress ⏳, below the current status:
    │   │   │   ├── ┃
    │   │   │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_app-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │   │   │   ├── ┃  |__ Pod app-z0a4c5630-fe-app-7cd5776d4b-d9zqq is STARTING
    │   │   │   ├── ┃     |__ ℹ️ Successfully assigned env-z4efc517f-test-romaric/app-z0a4c5630-fe-app-7cd5776d4b-d9zqq to ip-10-31-85-124.ec2.internal
    │   │   │   ├── ┃     |__ ℹ️ Pulling image "[REDACTED].dkr.ecr.us-east-1.amazonaws.com/qovery-mirror-0a4c5630-6e0d-4edb-aa9b-652bb13d7097:[REDACTED].[REDACTED]-frontend.fe_app-ci-master.0a4c5630-6e0d-4edb-aa9b-652bb13d7097"
    │   │   │   ├── ┃     |__ ℹ️ pod triggered scale-up: [{eks-qovery-2023080317311382170000000a-50c4de3a-0f2f-faf7-a120-6abc3d3f7f63 6->7 (max: 15)}]
    │   │   │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │   │   │   ├── 🚀 Deployment of router `z41103054` is starting
    │   │   │   ├── 🌍 Checking DNS Ip resolution for domain z4efc517f-z41103054-gtw.[REDACTED]. Please wait, it can take some time...
    │   │   │   ├── 🌍 Waiting domain z4efc517f-z41103054-gtw.[REDACTED] resolve to an Ip address...
    │   │   │   └── ✨ Domain z4efc517f-z41103054-gtw.[REDACTED] resolved to ip 52.55.34.109
    │   │   └── Step 2: Deployed [duration: 1 minute and 46 seconds]
    │   │       ├── ✅ Deployment of Container succeeded
    │   │       └── ✅ Deployment of router succeeded
    │   └── fe-admin [duration: 3 minutes and 35 seconds]
    │       ├── Step 1: Deploy [duration: 3 minutes and 35 seconds]
    │       │   ├── 🔓 Login to registry docker.io as user [REDACTED]devops
    │       │   ├── 🪞 Mirroring image to private cluster registry to ensure reproductibility
    │       │   ├── 🚀 Deployment of Container `z3105c137` at tag/commit [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master is starting: You have 0 pod(s) running, 0 service(s) running, 0 network volume(s)
    │       │   ├── 
    │       │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master deployment is in progress ⏳, below the current status:
    │       │   ├── ┃
    │       │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │       │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │       │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── 
    │       │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master deployment is in progress ⏳, below the current status:
    │       │   ├── ┃
    │       │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │       │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │       │   ├── ┃  |__ Pod app-z3105c137-fe-admin-848bdd6848-d7x9w is STARTING
    │       │   ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │       │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── 
    │       │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master deployment is in progress ⏳, below the current status:
    │       │   ├── ┃
    │       │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │       │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │       │   ├── ┃  |__ Pod app-z3105c137-fe-admin-848bdd6848-d7x9w is STARTING
    │       │   ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │       │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── 
    │       │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master deployment is in progress ⏳, below the current status:
    │       │   ├── ┃
    │       │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │       │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │       │   ├── ┃  |__ Pod app-z3105c137-fe-admin-848bdd6848-d7x9w is STARTING
    │       │   ├── ┃     |__ ⚠️ 0/6 nodes are available: 6 Insufficient cpu. preemption: 0/6 nodes are available: 6 No preemption victims found for incoming pod..
    │       │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── 
    │       │   ├── ┏━━ 📝 Deployment Status Report ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── ┃ Container at tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master deployment is in progress ⏳, below the current status:
    │       │   ├── ┃
    │       │   ├── ┃ 🛰 Container at old version has 0 pods: 0 running, 0 starting, 0 terminating and 0 in error
    │       │   ├── ┃ 🛰 Container at new tag [REDACTED]/[REDACTED]-frontend:fe_admin-ci-master has 1 pods: 0 running, 1 starting, 0 terminating and 0 in error
    │       │   ├── ┃  |__ Pod app-z3105c137-fe-admin-848bdd6848-d7x9w is STARTING
    │       │   ├── ┃     |__ ℹ️ Successfully assigned env-z4efc517f-test-romaric/app-z3105c137-fe-admin-848bdd6848-d7x9w to ip-10-31-85-124.ec2.internal
    │       │   ├── ┃     |__ ℹ️ Pulling image "[REDACTED].dkr.ecr.us-east-1.amazonaws.com/qovery-mirror-3105c137-4dde-4010-a8f9-4bc35dff1f1a:[REDACTED].[REDACTED]-frontend.fe_admin-ci-master.3105c137-4dde-4010-a8f9-4bc35dff1f1a"
    │       │   ├── ┃     |__ ℹ️ pod triggered scale-up: [{eks-qovery-2023080317311382170000000a-50c4de3a-0f2f-faf7-a120-6abc3d3f7f63 6->7 (max: 15)}]
    │       │   ├── ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    │       │   ├── 🚀 Deployment of router `z648238af` is starting
    │       │   ├── 🌍 Checking DNS Ip resolution for domain z4efc517f-z648238af-gtw.[REDACTED]. Please wait, it can take some time...
    │       │   ├── 🌍 Waiting domain z4efc517f-z648238af-gtw.[REDACTED] resolve to an Ip address...
    │       │   └── ✨ Domain z4efc517f-z648238af-gtw.[REDACTED] resolved to ip 52.55.34.109
    │       └── Step 2: Deployed [duration: 1 minute and 56 seconds]
    │           ├── ✅ Deployment of Container succeeded
    │           └── ✅ Deployment of router succeeded

Let’s do 2 things to improve the deployment time here:

  1. Increase your cluster resources to ensure that when a new environment is deployed, the Kubernetes cluster does not claim an additional node (it can take some time - here, we see that it takes more than a minute).
  2. Adjust your apps’ CPU and RAM to avoid wasting resources and unnecessarily triggering the cluster node auto scaler. >> To do it - consider using Kubecost or a monitoring solution to know how much resources your apps really need.

How does that sound? Let me know if you have any questions.

Romaric.