@@ -5,7 +5,7 @@ import { AnyAaaaRecord, AnyARecord } from 'dns'
5
5
import { resolveAny } from 'dns/promises'
6
6
import { access , mkdir , writeFile } from 'fs/promises'
7
7
import { Agent } from 'https'
8
- import { isEmpty , map , mapValues } from 'lodash'
8
+ import { isEmpty , isEqual , map , mapValues } from 'lodash'
9
9
import fetch , { RequestInit } from 'node-fetch'
10
10
import { dirname , join } from 'path'
11
11
import { parse , stringify } from 'yaml'
@@ -371,15 +371,23 @@ export async function patchContainerResourcesOfSts(
371
371
for ( const pod of pods . items ) {
372
372
const actualResources = pod . spec ?. containers ?. find ( ( container ) => container . name === containerName ) ?. resources
373
373
374
- if ( actualResources != desiredResources ) {
375
- d . info ( `sts/argocd-application-controller pod has not desired resources` )
374
+ if (
375
+ isEqual ( actualResources ?. limits , desiredResources ?. limits ) &&
376
+ isEqual ( actualResources ?. requests , desiredResources ?. requests )
377
+ ) {
378
+ d . info (
379
+ `sts/argocd-application-controller pod has desired resources: ${ JSON . stringify (
380
+ desiredResources ,
381
+ ) } and actual resources: ${ JSON . stringify ( actualResources ) } `,
382
+ )
383
+ return
384
+ }
376
385
377
- await patchStatefulSetResources ( statefulSetName , containerName , namespace , desiredResources , appsApi , d )
378
- d . info ( `sts/argocd-application-controller has been patched with resources: ${ JSON . stringify ( desiredResources ) } ` )
386
+ await patchStatefulSetResources ( statefulSetName , containerName , namespace , desiredResources , appsApi , d )
387
+ d . info ( `sts/argocd-application-controller has been patched with resources: ${ JSON . stringify ( desiredResources ) } ` )
379
388
380
- await deleteStatefulSetPods ( statefulSetName , namespace , appsApi , coreApi , d )
381
- d . info ( `sts/argocd-application-controller pods restarted` )
382
- }
389
+ await deleteStatefulSetPods ( statefulSetName , namespace , appsApi , coreApi , d )
390
+ d . info ( `sts/argocd-application-controller pods restarted` )
383
391
}
384
392
} catch ( error ) {
385
393
d . error ( `Error patching StatefulSet ${ statefulSetName } :` , error )
0 commit comments