Commit Graph

11 Commits

Author SHA1 Message Date
Oliver Kurth bba03b4846 add script run coverity checks inside a container 2020-10-30 18:45:09 +00:00
Keerthana K 7e923b5307 Fix pytest in fedora
Fedora latest has python 3.9.0 and latest pytest which
does not have '_pytest.deprecated'. Moving to fedora 32
till we fix this issue.
2020-10-28 06:24:42 +00:00
Shreenidhi Shedi 6fd37a4634 Added tdnf-automatic
Added correspoding tests for this feature

Reorganized directories & files

Signed-off-by: Shreenidhi Shedi <sshedi@vmware.com>
2020-10-22 11:33:23 +05:30
oliverkurth 8cca97f0de Add tests for checking the signatures of packages.
Following changes are made:

all packages will be signed when built
there is no passphrase for the generated key because piping that to gpg is too complex (requires expect)
adds 5 test functions (one negative, 4 positive)
the rpm-sign package had to be added to the Fedora docker image
2020-10-05 11:02:15 -07:00
Tapas Kundu da56817f97 Improvement for metalink support
-Added checks for files and resources.
-Added verifying checksum for the files to be downloaded using metalink file
-If verifying checksum fails, we will fail the discard the download.
-Added checks for resource type to:
  - http
  - https
  - ftp
  - ftps
  - rsync
-We will also check the digest in below priority:
  - sha256
  - sha1
  - md5
If sha256 is valid in metalink file, we will store sha256 to compare with the downloaded repomd.
In case sha256 is invalid, we will store sha1 and use it for validating the downloaded repomd file.
If both sha1 or sha256 is not valid, we will store md5.

In case we have only one digest present in metalink file and if thats invalid, we will not store any
digest and discard by throwing error, digest missing.

Signed-off-by: Tapas Kundu <tkundu@vmware.com>
2020-04-21 20:48:47 +08:00
Tapas Kundu 8b5495dbc6 Add metalink support
Added metalink support for repo files.

If metalink URL is present, we will get the URL with the highest priority.
Then we concat the metalink path to the url and download the metalink file.

Once metalink file is downloaded, we parse it and downlod the repomd.xml
file and then parse the xml to download repoMD parts.

Also, we set the BaseURL for the respective repo to the URL we got from
the metalink file for further package downloads.

Signed-off-by: Tapas Kundu <tkundu@vmware.com>
2020-04-09 23:07:19 +08:00
Priyesh Padmavilasom 4615657144 refactor cmake
- fix issues while packaging for photon
 - fix library installs
2020-02-22 01:35:13 +00:00
Priyesh Padmavilasom d6a0e74723 plugin headers and initial repogpgcheck plugin implementation
- plugin event map for guidance to event items
 - plugin events init, repo, repomd
 - tests for plugin conf
 - tests with a repomd sign and verify via plugin
2020-02-12 18:50:26 +00:00
Priyesh Padmavilasom ccc22d80a1 setup ci to do valgrind memcheck 2020-01-23 00:14:16 +00:00
Siddharth Chandrasekaran 03638d97c5 pytest: switch to local repo; enable fedora tests
Signed-off-by: Siddharth Chandrasekaran <csiddharth@vmware.com>
2020-01-19 02:56:40 +00:00
Neal Gompa efbe460512 ci: Refactor CI setup to add Fedora build in addition to Photon build
In order to (hopefully) prevent future breakage, the CI has been refactored
so that TDNF is now built on both Fedora and Photon. This ensures
that TDNF remains buildable and somewhat usable on Fedora and other
similar RPM-based distributions. CI now builds the Python module to
verify that builds properly, too.

As the tests only work properly on Photon OS for now, the CI is configured
to only execute them for the Photon environment.

Signed-off-by: Neal Gompa <ngompa13@gmail.com>
2020-01-02 18:47:11 -05:00