openshift-eng / elliott

Apache License 2.0
15 stars 28 forks source link

attach-cve-flaws should remove CVEs if flaws are dropped #430

Closed vfreex closed 2 years ago

vfreex commented 2 years ago

If a flaw bug is dropped from the advisory, it should also be removed from the CVENames field of that advisory.

openshift-bot commented 2 years ago

Build #1

GLOB sdist-make: /mnt/workspace/jenkins/working/art-tools_elliott_PR-430/setup.py
py38 create: /mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38
py38 installdeps: -rrequirements-dev.txt
py38 inst: /mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/.tmp/package/1/rh-elliott-2.0.14.dev130+gca79bca.zip
py38 installed: aiodns==3.0.0,aiohttp==3.8.1,aiosignal==1.2.0,astroid==2.12.9,async-timeout==4.0.2,attrs==22.1.0,Brotli==1.0.9,cchardet==2.1.7,certifi==2022.9.14,cffi==1.15.1,charset-normalizer==2.1.1,click==8.1.3,coverage==6.4.4,cryptography==38.0.1,decorator==5.1.1,defusedxml==0.7.1,dill==0.3.5.1,distlib==0.3.6,errata-tool @ git+http://github.com/thegreyd/errata-tool.git@bad2cb9c3321a1179f018cd9ddcf1d51d634290b,filelock==3.8.0,flake8==5.0.4,flexmock==0.11.3,frozenlist==1.3.1,future==0.18.2,gssapi==1.8.1,idna==3.4,importlib-metadata==4.12.0,iniconfig==1.1.1,isort==5.10.1,jaraco.classes==3.2.2,jeepney==0.8.0,jira==3.2.0,jsonpath-rw==1.4.0,keyring==23.9.1,koji==1.30.0,krb5==0.4.0,lazy-object-proxy==1.7.1,mccabe==0.7.0,mock==4.0.3,more-itertools==8.14.0,multidict==6.0.2,mypy==0.971,mypy-extensions==0.4.3,oauthlib==3.2.1,packaging==21.3,platformdirs==2.5.2,pluggy==1.0.0,ply==3.11,py==1.11.0,pycares==4.2.2,pycodestyle==2.9.1,pycparser==2.21,pyflakes==2.5.0,pygit2==1.10.1,pylint==2.15.2,pyparsing==3.0.9,pyspnego==0.6.0,pytest==7.1.3,python-bugzilla==3.2.0,python-dateutil==2.8.2,PyYAML==6.0,requests==2.28.1,requests-gssapi==1.2.3,requests-kerberos==0.14.0,requests-oauthlib==1.3.1,requests-toolbelt==0.9.1,rh-elliott @ file:///mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/.tmp/package/1/rh-elliott-2.0.14.dev130%2Bgca79bca.zip,ruamel.yaml==0.17.21,ruamel.yaml.clib==0.2.6,SecretStorage==3.3.3,semver==2.13.0,setuptools-scm==7.0.5,six==1.16.0,tenacity==8.0.1,tomli==2.0.1,tomlkit==0.11.4,tox==3.26.0,typing_extensions==4.3.0,urllib3==1.26.12,virtualenv==20.16.5,wrapt==1.14.1,yarl==1.8.1,zipp==3.8.1
py38 run-test-pre: PYTHONHASHSEED='4184115022'
py38 run-test: commands[0] | coverage run --branch --source elliottlib -m unittest discover -t . -s tests/
.........F.....................................BZ 9 is ignored because its status was MODIFIED at the moment of sweep cutoff (2021-06-30 12:30:00), however its status changed back to ['ASSIGNED'] afterwards
.................No flaw bugs could be found for these trackers: {'OCPBUGS-2'}
...changed 123 from status1 to status2
.123 is already on status1
.changed 123 from status1 to status2
..changed 123 from status1 to status2
.123 is already on status1
.changed 123 from status1 to status2
................../mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/connector.py:771: DeprecationWarning: The object should be created within an async function
  super().__init__(
/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/connector.py:782: DeprecationWarning: The object should be created within an async function
  resolver = DefaultResolver(loop=self._loop)
........./mnt/workspace/jenkins/working/art-tools_elliott_PR-430/elliottlib/errata_async.py:42: RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited
  resp.raise_for_status()
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
....................................../usr/lib64/python3.8/multiprocessing/pool.py:265: ResourceWarning: unclosed running multiprocessing pool <multiprocessing.pool.ThreadPool state=RUN pool_size=10>
  _warn(f"unclosed running multiprocessing pool {self!r}",
ResourceWarning: Enable tracemalloc to get the object allocation traceback
..................Retrieving bugs for advisories: ['123', '145']
./mnt/workspace/jenkins/working/art-tools_elliott_PR-430/elliottlib/errata_async.py:19: DeprecationWarning: The object should be created within an async function
  self._session = aiohttp.ClientSession(connector=aiohttp.TCPConnector(limit=32, force_close=True))
/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/cookiejar.py:67: DeprecationWarning: The object should be created within an async function
  super().__init__(loop=loop)
/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/client.py:341: ResourceWarning: Unclosed client session <aiohttp.client.ClientSession object at 0x7fec0c63e190>
  _warnings.warn(
ResourceWarning: Enable tracemalloc to get the object allocation traceback
Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7fec0c63e190>
.....
======================================================================
FAIL: test_get_updated_advisory_rhsa (tests.test_attach_cve_flaws_cli.TestAttachCVEFlawsCLI)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/tests/test_attach_cve_flaws_cli.py", line 52, in test_get_updated_advisory_rhsa
    advisory.update.assert_any_call(
  File "/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib/python3.8/site-packages/mock/mock.py", line 985, in assert_any_call
    raise AssertionError(
AssertionError: update(cve_names='something CVE-123 CVE-456') call not found

----------------------------------------------------------------------
Ran 161 tests in 0.791s

FAILED (failures=1)
Blocking bugs for next target release (4.7): ['OCPBUGS-4', 1]
ERROR: InvocationError for command /mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/bin/coverage run --branch --source elliottlib -m unittest discover -t . -s tests/ (exited with code 1)
___________________________________ summary ____________________________________
ERROR:   py38: commands failed
openshift-bot commented 2 years ago

Build #2

GLOB sdist-make: /mnt/workspace/jenkins/working/art-tools_elliott_PR-430/setup.py
py38 recreate: /mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38
py38 installdeps: -rrequirements-dev.txt
py38 inst: /mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/.tmp/package/1/rh-elliott-2.0.14.dev131+g7de96cf.zip
py38 installed: aiodns==3.0.0,aiohttp==3.8.1,aiosignal==1.2.0,astroid==2.12.9,async-timeout==4.0.2,attrs==22.1.0,Brotli==1.0.9,cchardet==2.1.7,certifi==2022.9.14,cffi==1.15.1,charset-normalizer==2.1.1,click==8.1.3,coverage==6.4.4,cryptography==38.0.1,decorator==5.1.1,defusedxml==0.7.1,dill==0.3.5.1,distlib==0.3.6,errata-tool @ git+http://github.com/thegreyd/errata-tool.git@bad2cb9c3321a1179f018cd9ddcf1d51d634290b,filelock==3.8.0,flake8==5.0.4,flexmock==0.11.3,frozenlist==1.3.1,future==0.18.2,gssapi==1.8.1,idna==3.4,importlib-metadata==4.12.0,iniconfig==1.1.1,isort==5.10.1,jaraco.classes==3.2.2,jeepney==0.8.0,jira==3.2.0,jsonpath-rw==1.4.0,keyring==23.9.1,koji==1.30.0,krb5==0.4.0,lazy-object-proxy==1.7.1,mccabe==0.7.0,mock==4.0.3,more-itertools==8.14.0,multidict==6.0.2,mypy==0.971,mypy-extensions==0.4.3,oauthlib==3.2.1,packaging==21.3,platformdirs==2.5.2,pluggy==1.0.0,ply==3.11,py==1.11.0,pycares==4.2.2,pycodestyle==2.9.1,pycparser==2.21,pyflakes==2.5.0,pygit2==1.10.1,pylint==2.15.2,pyparsing==3.0.9,pyspnego==0.6.0,pytest==7.1.3,python-bugzilla==3.2.0,python-dateutil==2.8.2,PyYAML==6.0,requests==2.28.1,requests-gssapi==1.2.3,requests-kerberos==0.14.0,requests-oauthlib==1.3.1,requests-toolbelt==0.9.1,rh-elliott @ file:///mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/.tmp/package/1/rh-elliott-2.0.14.dev131%2Bg7de96cf.zip,ruamel.yaml==0.17.21,ruamel.yaml.clib==0.2.6,SecretStorage==3.3.3,semver==2.13.0,setuptools-scm==7.0.5,six==1.16.0,tenacity==8.0.1,tomli==2.0.1,tomlkit==0.11.4,tox==3.26.0,typing_extensions==4.3.0,urllib3==1.26.12,virtualenv==20.16.5,wrapt==1.14.1,yarl==1.8.1,zipp==3.8.1
py38 run-test-pre: PYTHONHASHSEED='422146598'
py38 run-test: commands[0] | coverage run --branch --source elliottlib -m unittest discover -t . -s tests/
..............................................BZ 9 is ignored because its status was MODIFIED at the moment of sweep cutoff (2021-06-30 12:30:00), however its status changed back to ['ASSIGNED'] afterwards
.................No flaw bugs could be found for these trackers: {'OCPBUGS-2'}
...changed 123 from status1 to status2
.123 is already on status1
.changed 123 from status1 to status2
..changed 123 from status1 to status2
.123 is already on status1
.changed 123 from status1 to status2
................../mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/connector.py:771: DeprecationWarning: The object should be created within an async function
  super().__init__(
/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/connector.py:782: DeprecationWarning: The object should be created within an async function
  resolver = DefaultResolver(loop=self._loop)
........./mnt/workspace/jenkins/working/art-tools_elliott_PR-430/elliottlib/errata_async.py:42: RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited
  resp.raise_for_status()
RuntimeWarning: Enable tracemalloc to get the object allocation traceback
....................................../usr/lib64/python3.8/multiprocessing/pool.py:265: ResourceWarning: unclosed running multiprocessing pool <multiprocessing.pool.ThreadPool state=RUN pool_size=10>
  _warn(f"unclosed running multiprocessing pool {self!r}",
ResourceWarning: Enable tracemalloc to get the object allocation traceback
..................Retrieving bugs for advisories: ['123', '145']
./mnt/workspace/jenkins/working/art-tools_elliott_PR-430/elliottlib/errata_async.py:19: DeprecationWarning: The object should be created within an async function
  self._session = aiohttp.ClientSession(connector=aiohttp.TCPConnector(limit=32, force_close=True))
/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/cookiejar.py:67: DeprecationWarning: The object should be created within an async function
  super().__init__(loop=loop)
/mnt/workspace/jenkins/working/art-tools_elliott_PR-430/.tox/py38/lib64/python3.8/site-packages/aiohttp/client.py:341: ResourceWarning: Unclosed client session <aiohttp.client.ClientSession object at 0x7f949dae71c0>
  _warnings.warn(
ResourceWarning: Enable tracemalloc to get the object allocation traceback
Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7f949dae71c0>
.....
----------------------------------------------------------------------
Ran 161 tests in 0.857s

OK
Blocking bugs for next target release (4.7): ['OCPBUGS-4', 1]
py38 run-test: commands[1] | coverage report
Name                                              Stmts   Miss Branch BrPart  Cover
-----------------------------------------------------------------------------------
elliottlib/__init__.py                                8      2      2      1    70%
elliottlib/assembly.py                               92      9     54      7    89%
elliottlib/assertion.py                              11      0      6      0   100%
elliottlib/brew.py                                  328    188    144      5    38%
elliottlib/bug/__init__.py                            0      0      0      0   100%
elliottlib/build_finder.py                          114     12     76     15    86%
elliottlib/bzutil.py                                732    215    334     34    67%
elliottlib/cincinnati.py                             21     21      4      0     0%
elliottlib/cli/__init__.py                            0      0      0      0   100%
elliottlib/cli/__main__.py                          272    272     72      0     0%
elliottlib/cli/add_metadata_cli.py                   33     33      4      0     0%
elliottlib/cli/advisory_commons_cli.py               90     90     38      0     0%
elliottlib/cli/advisory_drop_cli.py                  21     21      2      0     0%
elliottlib/cli/advisory_images_cli.py                14     14      2      0     0%
elliottlib/cli/advisory_impetus_cli.py               22     22      6      0     0%
elliottlib/cli/attach_bugs_cli.py                    37     37     18      0     0%
elliottlib/cli/attach_cve_flaws_cli.py              129     66     58      9    45%
elliottlib/cli/change_state_cli.py                   44     44     16      0     0%
elliottlib/cli/cli_opts.py                           15      0     17      0   100%
elliottlib/cli/common.py                             48     12      6      1    69%
elliottlib/cli/create_cli.py                         70     70     20      0     0%
elliottlib/cli/create_placeholder_cli.py             40     40     12      0     0%
elliottlib/cli/create_textonly_cli.py                51     51      8      0     0%
elliottlib/cli/find_bugs_blocker_cli.py              43      4     12      3    87%
elliottlib/cli/find_bugs_qe_cli.py                   36      4      8      0    91%
elliottlib/cli/find_bugs_sweep_cli.py               172     46     94     12    70%
elliottlib/cli/find_builds_cli.py                   255    188    169      2    20%
elliottlib/cli/get_golang_versions_cli.py            56     21     32      5    50%
elliottlib/cli/list_cli.py                           17     17      4      0     0%
elliottlib/cli/puddle_advisories_cli.py              37     37     10      0     0%
elliottlib/cli/remove_bugs_cli.py                    50      8     14      6    78%
elliottlib/cli/repair_bugs_cli.py                    61      5     26      6    87%
elliottlib/cli/rhcos_cli.py                          97     97     54      0     0%
elliottlib/cli/rpmdiff_cli.py                       102    102     34      0     0%
elliottlib/cli/tag_builds_cli.py                    128    128     62      0     0%
elliottlib/cli/tarball_sources_cli.py                83     83     26      0     0%
elliottlib/cli/validate_rhsa.py                      42     42     12      0     0%
elliottlib/cli/verify_attached_bugs_cli.py          225     91    142     15    52%
elliottlib/cli/verify_attached_operators_cli.py     120     86     55      0    19%
elliottlib/cli/verify_cvp_cli.py                    162    162     78      0     0%
elliottlib/constants.py                              52      0      0      0   100%
elliottlib/cvp.py                                   216    216    115      0     0%
elliottlib/dotconfig.py                              54     11     32      6    76%
elliottlib/errata.py                                329    214    148      4    32%
elliottlib/errata_async.py                          109      6     42      5    93%
elliottlib/exceptions.py                             12      0     12      0   100%
elliottlib/exectools.py                              84     13     26      3    84%
elliottlib/gitdata.py                               171    137     86      0    17%
elliottlib/imagecfg.py                               21      2      2      0    91%
elliottlib/logutil.py                                 9      1      4      1    85%
elliottlib/metadata.py                              154     43     78     18    67%
elliottlib/model.py                                 105     22     38      2    80%
elliottlib/openshiftclient.py                        34     34      8      0     0%
elliottlib/pushd.py                                  21      0      4      0   100%
elliottlib/resultsdb.py                              28     28      6      0     0%
elliottlib/rhcos.py                                  51     51     12      0     0%
elliottlib/rpm_utils.py                              30     14     16      5    46%
elliottlib/rpmcfg.py                                  5      2      2      0    71%
elliottlib/rpmdiff.py                                31      0      2      0   100%
elliottlib/runtime.py                               275    200    108      2    22%
elliottlib/tarball_sources.py                        90     61     34      0    30%
elliottlib/util.py                                  303    168    112      9    41%
-----------------------------------------------------------------------------------
TOTAL                                              6062   3563   2618    176    39%
py38 run-test: commands[2] | flake8
___________________________________ summary ____________________________________
  py38: commands succeeded
  congratulations :)
Ximinhan commented 2 years ago

/lgtm

thegreyd commented 2 years ago

/lgtm