@@ -269,9 +269,13 @@ func (_ *Package) CheckChanges(a, e, changes *Package) error {
269269// It just avoids unnecessary failures from running e.g. concurrent apt-get installs
270270var packageManagerLock sync.Mutex
271271
272+ // packageManagerLastUpdated is the last time the package manager update was done
273+ var packageManagerLastUpdated time.Time
274+
272275func (_ * Package ) RenderLocal (t * local.LocalTarget , a , e , changes * Package ) error {
273276 packageManagerLock .Lock ()
274277 defer packageManagerLock .Unlock ()
278+ klog .V (2 ).Infof ("Package Manager last updated: %s" , packageManagerLastUpdated )
275279
276280 d , err := distributions .FindDistribution ("/" )
277281 if err != nil {
@@ -332,10 +336,13 @@ func (_ *Package) RenderLocal(t *local.LocalTarget, a, e, changes *Package) erro
332336 // If it is newer than 10 minutes, we skip apt-get update.
333337 stat , err := os .Stat ("/var/lib/dpkg/status" )
334338 if err == nil && stat .ModTime ().After (time .Now ().Add (- 10 * time .Minute )) {
339+ klog .V (2 ).Infof ("/var/lib/dpkg/status last updated: %s" , stat .ModTime ())
335340 klog .V (2 ).Infof ("Skipping fetching the list of available packages" )
336341 } else {
337- if err != nil && ! os . IsNotExist ( err ) {
342+ if err != nil {
338343 klog .Warningf ("Error getting dpkg status info: %v" , err )
344+ } else {
345+ klog .V (2 ).Infof ("/var/lib/dpkg/status last updated: %s" , stat .ModTime ())
339346 }
340347 args := []string {"apt-get" , "update" }
341348 klog .Infof ("Running command %s" , args )
@@ -345,6 +352,7 @@ func (_ *Package) RenderLocal(t *local.LocalTarget, a, e, changes *Package) erro
345352 if err != nil {
346353 return fmt .Errorf ("error fetching the list of available packages: %v:\n %s" , err , string (output ))
347354 }
355+ packageManagerLastUpdated = time .Now ()
348356 }
349357 }
350358
@@ -386,6 +394,7 @@ func (_ *Package) RenderLocal(t *local.LocalTarget, a, e, changes *Package) erro
386394 }
387395 return fmt .Errorf ("error installing package %q: %v: %s" , e .Name , err , string (output ))
388396 }
397+ packageManagerLastUpdated = time .Now ()
389398 } else {
390399 if changes .Healthy != nil {
391400 if d .IsDebianFamily () {
0 commit comments