liske / needrestart

Restart daemons after library updates.
GNU General Public License v2.0
426 stars 67 forks source link

needrestart output in noninteractive mode #299

Open sbernhard opened 7 months ago

sbernhard commented 7 months ago

If you turn on DEBIAN_FRONTEND=noninteractive needrestart does still output this "Scanning process" progress bar:

Scanning processes... [                                                        ]
Scanning processes... [                                                        ]
Scanning processes... [                                                        ]
Scanning processes... [=                                                       ]
Scanning processes... [=                                                       ]
Scanning processes... [==                                                      ]
Scanning processes... [==                                                      ]
Scanning processes... [===                                                     ]
Scanning processes... [===                                                     ]
Scanning processes... [====                                                    ]
Scanning processes... [====                                                    ]
Scanning processes... [====                                                    ]
Scanning processes... [=====                                                   ]
Scanning processes... [=====                                                   ]
Scanning processes... [======                                                  ]
Scanning processes... [======                                                  ]
Scanning processes... [=======                                                 ]
Scanning processes... [=======                                                 ]
Scanning processes... [========                                                ]
Scanning processes... [========                                                ]
Scanning processes... [=========                                               ]
Scanning processes... [=========                                               ]
Scanning processes... [=========                                               ]
Scanning processes... [==========                                              ]
Scanning processes... [==========                                              ]
Scanning processes... [===========                                             ]
Scanning processes... [===========                                             ]
Scanning processes... [============                                            ]
Scanning processes... [============                                            ]
Scanning processes... [=============                                           ]
Scanning processes... [=============                                           ]
Scanning processes... [==============                                          ]
Scanning processes... [==============                                          ]
Scanning processes... [==============                                          ]
Scanning processes... [===============                                         ]
Scanning processes... [===============                                         ]
Scanning processes... [================                                        ]
Scanning processes... [================                                        ]
Scanning processes... [=================                                       ]
Scanning processes... [=================                                       ]
Scanning processes... [==================                                      ]
Scanning processes... [==================                                      ]
Scanning processes... [==================                                      ]
Scanning processes... [===================                                     ]
Scanning processes... [===================                                     ]
Scanning processes... [====================                                    ]
Scanning processes... [====================                                    ]
Scanning processes... [=====================                                   ]
Scanning processes... [=====================                                   ]
Scanning processes... [======================                                  ]
Scanning processes... [======================                                  ]
Scanning processes... [=======================                                 ]
Scanning processes... [=======================                                 ]
Scanning processes... [=======================                                 ]
Scanning processes... [========================                                ]
Scanning processes... [========================                                ]
Scanning processes... [=========================                               ]
Scanning processes... [=========================                               ]
Scanning processes... [==========================                              ]
Scanning processes... [==========================                              ]
Scanning processes... [===========================                             ]
Scanning processes... [===========================                             ]
Scanning processes... [============================                            ]
Scanning processes... [============================                            ]
Scanning processes... [============================                            ]
Scanning processes... [=============================                           ]
Scanning processes... [=============================                           ]
Scanning processes... [==============================                          ]
Scanning processes... [==============================                          ]
Scanning processes... [===============================                         ]
Scanning processes... [===============================                         ]
Scanning processes... [================================                        ]
Scanning processes... [================================                        ]
Scanning processes... [================================                        ]
Scanning processes... [=================================                       ]
Scanning processes... [=================================                       ]
Scanning processes... [==================================                      ]
Scanning processes... [==================================                      ]
Scanning processes... [===================================                     ]
Scanning processes... [===================================                     ]
Scanning processes... [====================================                    ]
Scanning processes... [====================================                    ]
Scanning processes... [=====================================                   ]
Scanning processes... [=====================================                   ]
Scanning processes... [=====================================                   ]
Scanning processes... [======================================                  ]
Scanning processes... [======================================                  ]
Scanning processes... [=======================================                 ]
Scanning processes... [=======================================                 ]
Scanning processes... [========================================                ]
Scanning processes... [========================================                ]
Scanning processes... [=========================================               ]
Scanning processes... [=========================================               ]
Scanning processes... [==========================================              ]
Scanning processes... [==========================================              ]
Scanning processes... [==========================================              ]
Scanning processes... [===========================================             ]
Scanning processes... [===========================================             ]
Scanning processes... [============================================            ]
Scanning processes... [============================================            ]
Scanning processes... [=============================================           ]
Scanning processes... [=============================================           ]
Scanning processes... [==============================================          ]
Scanning processes... [==============================================          ]
Scanning processes... [==============================================          ]
Scanning processes... [===============================================         ]
Scanning processes... [===============================================         ]
Scanning processes... [================================================        ]
Scanning processes... [================================================        ]
Scanning processes... [=================================================       ]
Scanning processes... [=================================================       ]
Scanning processes... [==================================================      ]
Scanning processes... [==================================================      ]
Scanning processes... [===================================================     ]
Scanning processes... [===================================================     ]
Scanning processes... [===================================================     ]
Scanning processes... [====================================================    ]
Scanning processes... [====================================================    ]
Scanning processes... [=====================================================   ]
Scanning processes... [=====================================================   ]
Scanning processes... [======================================================  ]
Scanning processes... [======================================================  ]
Scanning processes... [======================================================= ]
Scanning processes... [======================================================= ]
Scanning processes... [========================================================]
Scanning processes...                                                           
Scanning linux images... [                                                     ]
Scanning linux images... [=====================================================]
Scanning linux images...                                                        

Running kernel seems to be up-to-date.

No services need to be restarted.

No containers need to be restarted.

No user sessions are running outdated binaries.
Exit status: 0

In case, needrestart or the apt-get upgrade hook to run needrestart is started within a script or remote execution job, you would see the output as above. Wouldn't it be better to prevent the progress bar? Is this somehow already implemented with a special flag or environment var you need to set?

liske commented 6 months ago

needrestart only prints the progress bar if stderr is a terminal

Are you observing this issue in some automation implementation lacking a real terminal implementation?