~sespiros/ubuntu-security-tools/+git/ubuntu-security-tools:uaudit-improvements

Last commit made on 2023-11-23
Get this branch:
git clone -b uaudit-improvements https://git.launchpad.net/~sespiros/ubuntu-security-tools/+git/ubuntu-security-tools
Only Spyros Seimenis can upload to this branch. If you are Spyros Seimenis please log in for upload directions.

Branch merges

Branch information

Recent commits

1be52c1... by Spyros Seimenis

address comments

77e27bf... by Spyros Seimenis

lib/db.py: rename to influxdb_connector.py

dac9b95... by Spyros Seimenis

audits/uaudit.py: add --download-only option

when --download-only is supplied, uaudit's tools won't run and only
the download step will be performed. This can also be used with the
--export option, effectively making it behave like a "--export-only"
flag for cases where the tools have ran already and only the exporting
step needs to be repeated.

06a186c... by Spyros Seimenis

audits/uaudit.py: add --dry-run option

when --dry-run is supplied, downloading packages, running tools and
exporting steps are skipped. It is useful to check for which packages
or versions the tool will run.

11d6f26... by Spyros Seimenis

audits/uaudit.py: add grafana dashboards and instructions

936b2cb... by Spyros Seimenis

audits/uaudit.py: add ability to export to InfluxDB

adds InfluxDB exporting capabilities to uaudit and usage instructions.

- audits/lib/db.py, lib/export.py: contain the core backend. Several tool
  exporters have been implemented already and new can be added by
  subclassing the Tool abstract class.

- audits/uaudit.py: introduce the --export flag. When passed, only tools
  that support json will be executed (if needed) and the results
  will be exported to a configured InfluxDB database.

bb9fba2... by Spyros Seimenis

audits/uaudit.py: add ability to scan ppas and superseded

this ability contains several changes related to the ability to
scan ppas and also a new option to scan superseded version of packages
to get historical results.

- audits/lib/fetch.py: contains functions related to fetching packages
  - uaudit's download() function was renamed to umt_download() and
    moved to audits/lib/fetch.py. Moreover it is changed to not use
    glob to infer the package version from the path but from umt's
    output base version.
  - new function lpl_download() which uses launchpadlib to download
    packages directly from ppas or launchpad archives. This includes
    logic to allow for downloading of packages sources with status
    "Superseded" (other than the default "Published").

- audits/uaudit.py:
  - refactored uaudit to use the new lpl_download() function instead
    of umt_download when the --ppa or --superseded option is specified.
    The usual flow of uaudit should work as before both supporting umt
    download and also running uaudit from inside an unpacked folder.

1993cfe... by Spyros Seimenis

audits/uaudit.py: add TODO for dependency on ust dotfile

b5e5076... by Spyros Seimenis

audits/uaudit.py: allow specifying multiple releases

convert --download_release to --download_releases

458d280... by Spyros Seimenis

audits/uaudit.py: update usage/help text