diff --git a/tests/integration/test_data/pip_e2e_test_wheels/.build-config.yaml b/tests/integration/test_data/pip_e2e_test_wheels/.build-config.yaml new file mode 100644 index 000000000..31fe7c492 --- /dev/null +++ b/tests/integration/test_data/pip_e2e_test_wheels/.build-config.yaml @@ -0,0 +1,6 @@ +environment_variables: +- name: PIP_FIND_LINKS + value: ${output_dir}/deps/pip +- name: PIP_NO_INDEX + value: 'true' +project_files: [] diff --git a/tests/integration/test_data/pip_e2e_test_wheels/bom.json b/tests/integration/test_data/pip_e2e_test_wheels/bom.json new file mode 100644 index 000000000..d0cf383f8 --- /dev/null +++ b/tests/integration/test_data/pip_e2e_test_wheels/bom.json @@ -0,0 +1,203 @@ +{ + "bomFormat": "CycloneDX", + "components": [ + { + "name": "absl-py", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/absl-py@2.1.0", + "type": "library", + "version": "2.1.0" + }, + { + "name": "grpcio", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/grpcio@1.64.0", + "type": "library", + "version": "1.64.0" + }, + { + "name": "markdown", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/markdown@3.6", + "type": "library", + "version": "3.6" + }, + { + "name": "markupsafe", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/markupsafe@2.1.5", + "type": "library", + "version": "2.1.5" + }, + { + "name": "numpy", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/numpy@1.26.4", + "type": "library", + "version": "1.26.4" + }, + { + "name": "package", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + } + ], + "purl": "pkg:pypi/package@0.1.0?vcs_url=git%2Bhttps://github.com/cachito-testing/cachi2-pip-wheels%40eee59273542ee7d412fb359d471386b645cf166e", + "type": "library", + "version": "0.1.0" + }, + { + "name": "protobuf", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/protobuf@4.25.3", + "type": "library", + "version": "4.25.3" + }, + { + "name": "setuptools", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/setuptools@70.0.0", + "type": "library", + "version": "70.0.0" + }, + { + "name": "six", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/six@1.16.0", + "type": "library", + "version": "1.16.0" + }, + { + "name": "tensorboard-data-server", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/tensorboard-data-server@0.7.2", + "type": "library", + "version": "0.7.2" + }, + { + "name": "tensorboard", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/tensorboard@2.16.2", + "type": "library", + "version": "2.16.2" + }, + { + "name": "werkzeug", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + }, + { + "name": "cachi2:pip:package:binary", + "value": "true" + } + ], + "purl": "pkg:pypi/werkzeug@3.0.3", + "type": "library", + "version": "3.0.3" + } + ], + "metadata": { + "tools": [ + { + "name": "cachi2", + "vendor": "red hat" + } + ] + }, + "specVersion": "1.4", + "version": 1 +} diff --git a/tests/integration/test_data/pip_e2e_test_wheels/container/Containerfile b/tests/integration/test_data/pip_e2e_test_wheels/container/Containerfile new file mode 100644 index 000000000..e5e726079 --- /dev/null +++ b/tests/integration/test_data/pip_e2e_test_wheels/container/Containerfile @@ -0,0 +1,16 @@ +FROM docker.io/python:3.11 + +# check network access +RUN if curl -IsS www.google.com; then echo "Has network access!"; exit 1; fi + +# check source code +RUN cat /tmp/cachi2.env +RUN ls /tmp/pip_e2e_test_wheels-output/deps/pip +RUN ls /tmp/pip_e2e_test_wheels-source + +WORKDIR /tmp/pip_e2e_test_wheels-source + +# install packages +RUN . /tmp/cachi2.env && pip install -r requirements.txt +RUN cp /tmp/pip_e2e_test_wheels-source/package/main.py /opt/package + diff --git a/tests/integration/test_data/pip_e2e_test_wheels/fetch_deps_sha256sums.json b/tests/integration/test_data/pip_e2e_test_wheels/fetch_deps_sha256sums.json new file mode 100644 index 000000000..a1e610151 --- /dev/null +++ b/tests/integration/test_data/pip_e2e_test_wheels/fetch_deps_sha256sums.json @@ -0,0 +1,169 @@ +{ + "pip/Markdown-3.6-py3-none-any.whl": "sha256:48f276f4d8cfb8ce6527c8f79e2ee29708508bf4d40aa410fbc3b4ee832c850f", + "pip/Markdown-3.6.tar.gz": "sha256:ed4f41f6daecbeeb96e576ce414c41d2d876daa9a16cb35fa8ed8c2ddfad0224", + "pip/MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl": "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc", + "pip/MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl": "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5", + "pip/MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:e61659ba32cf2cf1481e575d0462554625196a1f2fc06a1c777d3f48e8865d46", + "pip/MarkupSafe-2.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:2174c595a0d73a3080ca3257b40096db99799265e1c27cc5a610743acd86d62f", + "pip/MarkupSafe-2.1.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:ae2ad8ae6ebee9d2d94b17fb62763125f3f374c25618198f40cbb8b525411900", + "pip/MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_aarch64.whl": "sha256:075202fa5b72c86ad32dc7d0b56024ebdbcf2048c0ba09f1cde31bfdd57bcfff", + "pip/MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_i686.whl": "sha256:598e3276b64aff0e7b3451b72e94fa3c238d452e7ddcd893c3ab324717456bad", + "pip/MarkupSafe-2.1.5-cp310-cp310-musllinux_1_1_x86_64.whl": "sha256:fce659a462a1be54d2ffcacea5e3ba2d74daa74f30f5f143fe0c58636e355fdd", + "pip/MarkupSafe-2.1.5-cp310-cp310-win32.whl": "sha256:d9fad5155d72433c921b782e58892377c44bd6252b5af2f67f16b194987338a4", + "pip/MarkupSafe-2.1.5-cp310-cp310-win_amd64.whl": "sha256:bf50cd79a75d181c9181df03572cdce0fbb75cc353bc350712073108cba98de5", + "pip/MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_universal2.whl": "sha256:629ddd2ca402ae6dbedfceeba9c46d5f7b2a61d9749597d4307f943ef198fc1f", + "pip/MarkupSafe-2.1.5-cp311-cp311-macosx_10_9_x86_64.whl": "sha256:5b7b716f97b52c5a14bffdf688f971b2d5ef4029127f1ad7a513973cfd818df2", + "pip/MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:6ec585f69cec0aa07d945b20805be741395e28ac1627333b1c5b0105962ffced", + "pip/MarkupSafe-2.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:b91c037585eba9095565a3556f611e3cbfaa42ca1e865f7b8015fe5c7336d5a5", + "pip/MarkupSafe-2.1.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:7502934a33b54030eaf1194c21c692a534196063db72176b0c4028e140f8f32c", + "pip/MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_aarch64.whl": "sha256:0e397ac966fdf721b2c528cf028494e86172b4feba51d65f81ffd65c63798f3f", + "pip/MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_i686.whl": "sha256:c061bb86a71b42465156a3ee7bd58c8c2ceacdbeb95d05a99893e08b8467359a", + "pip/MarkupSafe-2.1.5-cp311-cp311-musllinux_1_1_x86_64.whl": "sha256:3a57fdd7ce31c7ff06cdfbf31dafa96cc533c21e443d57f5b1ecc6cdc668ec7f", + "pip/MarkupSafe-2.1.5-cp311-cp311-win32.whl": "sha256:397081c1a0bfb5124355710fe79478cdbeb39626492b15d399526ae53422b906", + "pip/MarkupSafe-2.1.5-cp311-cp311-win_amd64.whl": "sha256:2b7c57a4dfc4f16f7142221afe5ba4e093e09e728ca65c51f5620c9aaeb9a617", + "pip/MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_universal2.whl": "sha256:8dec4936e9c3100156f8a2dc89c4b88d5c435175ff03413b443469c7c8c5f4d1", + "pip/MarkupSafe-2.1.5-cp312-cp312-macosx_10_9_x86_64.whl": "sha256:3c6b973f22eb18a789b1460b4b91bf04ae3f0c4234a0a6aa6b0a92f6f7b951d4", + "pip/MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:ac07bad82163452a6884fe8fa0963fb98c2346ba78d779ec06bd7a6262132aee", + "pip/MarkupSafe-2.1.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:f5dfb42c4604dddc8e4305050aa6deb084540643ed5804d7455b5df8fe16f5e5", + "pip/MarkupSafe-2.1.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:ea3d8a3d18833cf4304cd2fc9cbb1efe188ca9b5efef2bdac7adc20594a0e46b", + "pip/MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_aarch64.whl": "sha256:d050b3361367a06d752db6ead6e7edeb0009be66bc3bae0ee9d97fb326badc2a", + "pip/MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_i686.whl": "sha256:bec0a414d016ac1a18862a519e54b2fd0fc8bbfd6890376898a6c0891dd82e9f", + "pip/MarkupSafe-2.1.5-cp312-cp312-musllinux_1_1_x86_64.whl": "sha256:58c98fee265677f63a4385256a6d7683ab1832f3ddd1e66fe948d5880c21a169", + "pip/MarkupSafe-2.1.5-cp312-cp312-win32.whl": "sha256:8590b4ae07a35970728874632fed7bd57b26b0102df2d2b233b6d9d82f6c62ad", + "pip/MarkupSafe-2.1.5-cp312-cp312-win_amd64.whl": "sha256:823b65d8706e32ad2df51ed89496147a42a2a6e01c13cfb6ffb8b1e92bc910bb", + "pip/MarkupSafe-2.1.5-cp37-cp37m-macosx_10_9_x86_64.whl": "sha256:c8b29db45f8fe46ad280a7294f5c3ec36dbac9491f2d1c17345be8e69cc5928f", + "pip/MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:ec6a563cff360b50eed26f13adc43e61bc0c04d94b8be985e6fb24b81f6dcfdf", + "pip/MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:a549b9c31bec33820e885335b451286e2969a2d9e24879f83fe904a5ce59d70a", + "pip/MarkupSafe-2.1.5-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:4f11aa001c540f62c6166c7726f71f7573b52c68c31f014c25cc7901deea0b52", + "pip/MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_aarch64.whl": "sha256:7b2e5a267c855eea6b4283940daa6e88a285f5f2a67f2220203786dfa59b37e9", + "pip/MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_i686.whl": "sha256:2d2d793e36e230fd32babe143b04cec8a8b3eb8a3122d2aceb4a371e6b09b8df", + "pip/MarkupSafe-2.1.5-cp37-cp37m-musllinux_1_1_x86_64.whl": "sha256:ce409136744f6521e39fd8e2a24c53fa18ad67aa5bc7c2cf83645cce5b5c4e50", + "pip/MarkupSafe-2.1.5-cp37-cp37m-win32.whl": "sha256:4096e9de5c6fdf43fb4f04c26fb114f61ef0bf2e5604b6ee3019d51b69e8c371", + "pip/MarkupSafe-2.1.5-cp37-cp37m-win_amd64.whl": "sha256:4275d846e41ecefa46e2015117a9f491e57a71ddd59bbead77e904dc02b1bed2", + "pip/MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_universal2.whl": "sha256:656f7526c69fac7f600bd1f400991cc282b417d17539a1b228617081106feb4a", + "pip/MarkupSafe-2.1.5-cp38-cp38-macosx_10_9_x86_64.whl": "sha256:97cafb1f3cbcd3fd2b6fbfb99ae11cdb14deea0736fc2b0952ee177f2b813a46", + "pip/MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:1f3fbcb7ef1f16e48246f704ab79d79da8a46891e2da03f8783a5b6fa41a9532", + "pip/MarkupSafe-2.1.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:fa9db3f79de01457b03d4f01b34cf91bc0048eb2c3846ff26f66687c2f6d16ab", + "pip/MarkupSafe-2.1.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:ffee1f21e5ef0d712f9033568f8344d5da8cc2869dbd08d87c84656e6a2d2f68", + "pip/MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_aarch64.whl": "sha256:5dedb4db619ba5a2787a94d877bc8ffc0566f92a01c0ef214865e54ecc9ee5e0", + "pip/MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_i686.whl": "sha256:30b600cf0a7ac9234b2638fbc0fb6158ba5bdcdf46aeb631ead21248b9affbc4", + "pip/MarkupSafe-2.1.5-cp38-cp38-musllinux_1_1_x86_64.whl": "sha256:8dd717634f5a044f860435c1d8c16a270ddf0ef8588d4887037c5028b859b0c3", + "pip/MarkupSafe-2.1.5-cp38-cp38-win32.whl": "sha256:daa4ee5a243f0f20d528d939d06670a298dd39b1ad5f8a72a4275124a7819eff", + "pip/MarkupSafe-2.1.5-cp38-cp38-win_amd64.whl": "sha256:619bc166c4f2de5caa5a633b8b7326fbe98e0ccbfacabd87268a2b15ff73a029", + "pip/MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_universal2.whl": "sha256:7a68b554d356a91cce1236aa7682dc01df0edba8d043fd1ce607c49dd3c1edcf", + "pip/MarkupSafe-2.1.5-cp39-cp39-macosx_10_9_x86_64.whl": "sha256:db0b55e0f3cc0be60c1f19efdde9a637c32740486004f20d1cff53c3c0ece4d2", + "pip/MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:3e53af139f8579a6d5f7b76549125f0d94d7e630761a2111bc431fd820e163b8", + "pip/MarkupSafe-2.1.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:17b950fccb810b3293638215058e432159d2b71005c74371d784862b7e4683f3", + "pip/MarkupSafe-2.1.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:4c31f53cdae6ecfa91a77820e8b151dba54ab528ba65dfd235c80b086d68a465", + "pip/MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_aarch64.whl": "sha256:bff1b4290a66b490a2f4719358c0cdcd9bafb6b8f061e45c7a2460866bf50c2e", + "pip/MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_i686.whl": "sha256:bc1667f8b83f48511b94671e0e441401371dfd0f0a795c7daa4a3cd1dde55bea", + "pip/MarkupSafe-2.1.5-cp39-cp39-musllinux_1_1_x86_64.whl": "sha256:5049256f536511ee3f7e1b3f87d1d1209d327e818e6ae1365e8653d7e3abb6a6", + "pip/MarkupSafe-2.1.5-cp39-cp39-win32.whl": "sha256:00e046b6dd71aa03a41079792f8473dc494d564611a8f89bbbd7cb93295ebdcf", + "pip/MarkupSafe-2.1.5-cp39-cp39-win_amd64.whl": "sha256:fa173ec60341d6bb97a89f5ea19c85c5643c1e7dedebc22f5181eb73573142c5", + "pip/MarkupSafe-2.1.5.tar.gz": "sha256:d283d37a890ba4c1ae73ffadf8046435c76e7bc2247bbb63c00bd1a709c6544b", + "pip/absl-py-2.1.0.tar.gz": "sha256:7820790efbb316739cde8b4e19357243fc3608a152024288513dd968d7d959ff", + "pip/absl_py-2.1.0-py3-none-any.whl": "sha256:526a04eadab8b4ee719ce68f204172ead1027549089702d99b9059f129ff1308", + "pip/grpcio-1.64.0-cp310-cp310-linux_armv7l.whl": "sha256:3b09c3d9de95461214a11d82cc0e6a46a6f4e1f91834b50782f932895215e5db", + "pip/grpcio-1.64.0-cp310-cp310-macosx_12_0_universal2.whl": "sha256:7e013428ab472892830287dd082b7d129f4d8afef49227a28223a77337555eaa", + "pip/grpcio-1.64.0-cp310-cp310-manylinux_2_17_aarch64.whl": "sha256:02cc9cc3f816d30f7993d0d408043b4a7d6a02346d251694d8ab1f78cc723e7e", + "pip/grpcio-1.64.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:1f5de082d936e0208ce8db9095821361dfa97af8767a6607ae71425ac8ace15c", + "pip/grpcio-1.64.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:d7b7bf346391dffa182fba42506adf3a84f4a718a05e445b37824136047686a1", + "pip/grpcio-1.64.0-cp310-cp310-musllinux_1_1_i686.whl": "sha256:b2cbdfba18408389a1371f8c2af1659119e1831e5ed24c240cae9e27b4abc38d", + "pip/grpcio-1.64.0-cp310-cp310-musllinux_1_1_x86_64.whl": "sha256:aca4f15427d2df592e0c8f3d38847e25135e4092d7f70f02452c0e90d6a02d6d", + "pip/grpcio-1.64.0-cp310-cp310-win32.whl": "sha256:7c1f5b2298244472bcda49b599be04579f26425af0fd80d3f2eb5fd8bc84d106", + "pip/grpcio-1.64.0-cp310-cp310-win_amd64.whl": "sha256:73f84f9e5985a532e47880b3924867de16fa1aa513fff9b26106220c253c70c5", + "pip/grpcio-1.64.0-cp311-cp311-linux_armv7l.whl": "sha256:2a18090371d138a57714ee9bffd6c9c9cb2e02ce42c681aac093ae1e7189ed21", + "pip/grpcio-1.64.0-cp311-cp311-macosx_10_9_universal2.whl": "sha256:59c68df3a934a586c3473d15956d23a618b8f05b5e7a3a904d40300e9c69cbf0", + "pip/grpcio-1.64.0-cp311-cp311-manylinux_2_17_aarch64.whl": "sha256:b52e1ec7185512103dd47d41cf34ea78e7a7361ba460187ddd2416b480e0938c", + "pip/grpcio-1.64.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:8d598b5d5e2c9115d7fb7e2cb5508d14286af506a75950762aa1372d60e41851", + "pip/grpcio-1.64.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:01615bbcae6875eee8091e6b9414072f4e4b00d8b7e141f89635bdae7cf784e5", + "pip/grpcio-1.64.0-cp311-cp311-musllinux_1_1_i686.whl": "sha256:0b2dfe6dcace264807d9123d483d4c43274e3f8c39f90ff51de538245d7a4145", + "pip/grpcio-1.64.0-cp311-cp311-musllinux_1_1_x86_64.whl": "sha256:7f17572dc9acd5e6dfd3014d10c0b533e9f79cd9517fc10b0225746f4c24b58e", + "pip/grpcio-1.64.0-cp311-cp311-win32.whl": "sha256:6ec5ed15b4ffe56e2c6bc76af45e6b591c9be0224b3fb090adfb205c9012367d", + "pip/grpcio-1.64.0-cp311-cp311-win_amd64.whl": "sha256:597191370951b477b7a1441e1aaa5cacebeb46a3b0bd240ec3bb2f28298c7553", + "pip/grpcio-1.64.0-cp312-cp312-linux_armv7l.whl": "sha256:1ce4cd5a61d4532651079e7aae0fedf9a80e613eed895d5b9743e66b52d15812", + "pip/grpcio-1.64.0-cp312-cp312-macosx_10_9_universal2.whl": "sha256:650a8150a9b288f40d5b7c1d5400cc11724eae50bd1f501a66e1ea949173649b", + "pip/grpcio-1.64.0-cp312-cp312-manylinux_2_17_aarch64.whl": "sha256:8de0399b983f8676a7ccfdd45e5b2caec74a7e3cc576c6b1eecf3b3680deda5e", + "pip/grpcio-1.64.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:46b8b43ba6a2a8f3103f103f97996cad507bcfd72359af6516363c48793d5a7b", + "pip/grpcio-1.64.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:a54362f03d4dcfae63be455d0a7d4c1403673498b92c6bfe22157d935b57c7a9", + "pip/grpcio-1.64.0-cp312-cp312-musllinux_1_1_i686.whl": "sha256:1f8ea18b928e539046bb5f9c124d717fbf00cc4b2d960ae0b8468562846f5aa1", + "pip/grpcio-1.64.0-cp312-cp312-musllinux_1_1_x86_64.whl": "sha256:c56c91bd2923ddb6e7ed28ebb66d15633b03e0df22206f22dfcdde08047e0a48", + "pip/grpcio-1.64.0-cp312-cp312-win32.whl": "sha256:874c741c8a66f0834f653a69e7e64b4e67fcd4a8d40296919b93bab2ccc780ba", + "pip/grpcio-1.64.0-cp312-cp312-win_amd64.whl": "sha256:0da1d921f8e4bcee307aeef6c7095eb26e617c471f8cb1c454fd389c5c296d1e", + "pip/grpcio-1.64.0-cp38-cp38-linux_armv7l.whl": "sha256:c46fb6bfca17bfc49f011eb53416e61472fa96caa0979b4329176bdd38cbbf2a", + "pip/grpcio-1.64.0-cp38-cp38-macosx_10_9_universal2.whl": "sha256:3d2004e85cf5213995d09408501f82c8534700d2babeb81dfdba2a3bff0bb396", + "pip/grpcio-1.64.0-cp38-cp38-manylinux_2_17_aarch64.whl": "sha256:6d5541eb460d73a07418524fb64dcfe0adfbcd32e2dac0f8f90ce5b9dd6c046c", + "pip/grpcio-1.64.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:1f279ad72dd7d64412e10f2443f9f34872a938c67387863c4cd2fb837f53e7d2", + "pip/grpcio-1.64.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:85fda90b81da25993aa47fae66cae747b921f8f6777550895fb62375b776a231", + "pip/grpcio-1.64.0-cp38-cp38-musllinux_1_1_i686.whl": "sha256:a053584079b793a54bece4a7d1d1b5c0645bdbee729215cd433703dc2532f72b", + "pip/grpcio-1.64.0-cp38-cp38-musllinux_1_1_x86_64.whl": "sha256:579dd9fb11bc73f0de061cab5f8b2def21480fd99eb3743ed041ad6a1913ee2f", + "pip/grpcio-1.64.0-cp38-cp38-win32.whl": "sha256:23b6887bb21d77649d022fa1859e05853fdc2e60682fd86c3db652a555a282e0", + "pip/grpcio-1.64.0-cp38-cp38-win_amd64.whl": "sha256:753cb58683ba0c545306f4e17dabf468d29cb6f6b11832e1e432160bb3f8403c", + "pip/grpcio-1.64.0-cp39-cp39-linux_armv7l.whl": "sha256:2186d76a7e383e1466e0ea2b0febc343ffeae13928c63c6ec6826533c2d69590", + "pip/grpcio-1.64.0-cp39-cp39-macosx_10_9_universal2.whl": "sha256:0f30596cdcbed3c98024fb4f1d91745146385b3f9fd10c9f2270cbfe2ed7ed91", + "pip/grpcio-1.64.0-cp39-cp39-manylinux_2_17_aarch64.whl": "sha256:d9171f025a196f5bcfec7e8e7ffb7c3535f7d60aecd3503f9e250296c7cfc150", + "pip/grpcio-1.64.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl": "sha256:cf4c8daed18ae2be2f1fc7d613a76ee2a2e28fdf2412d5c128be23144d28283d", + "pip/grpcio-1.64.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:3550493ac1d23198d46dc9c9b24b411cef613798dc31160c7138568ec26bc9b4", + "pip/grpcio-1.64.0-cp39-cp39-musllinux_1_1_i686.whl": "sha256:3161a8f8bb38077a6470508c1a7301cd54301c53b8a34bb83e3c9764874ecabd", + "pip/grpcio-1.64.0-cp39-cp39-musllinux_1_1_x86_64.whl": "sha256:2e8fabe2cc57a369638ab1ad8e6043721014fdf9a13baa7c0e35995d3a4a7618", + "pip/grpcio-1.64.0-cp39-cp39-win32.whl": "sha256:31890b24d47b62cc27da49a462efe3d02f3c120edb0e6c46dcc0025506acf004", + "pip/grpcio-1.64.0-cp39-cp39-win_amd64.whl": "sha256:5a56797dea8c02e7d3a85dfea879f286175cf4d14fbd9ab3ef2477277b927baa", + "pip/grpcio-1.64.0.tar.gz": "sha256:257baf07f53a571c215eebe9679c3058a313fd1d1f7c4eede5a8660108c52d9c", + "pip/numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl": "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0", + "pip/numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl": "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a", + "pip/numpy-1.26.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:d209d8969599b27ad20994c8e41936ee0964e6da07478d6c35016bc386b66ad4", + "pip/numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:ffa75af20b44f8dba823498024771d5ac50620e6915abac414251bd971b4529f", + "pip/numpy-1.26.4-cp310-cp310-musllinux_1_1_aarch64.whl": "sha256:62b8e4b1e28009ef2846b4c7852046736bab361f7aeadeb6a5b89ebec3c7055a", + "pip/numpy-1.26.4-cp310-cp310-musllinux_1_1_x86_64.whl": "sha256:a4abb4f9001ad2858e7ac189089c42178fcce737e4169dc61321660f1a96c7d2", + "pip/numpy-1.26.4-cp310-cp310-win32.whl": "sha256:bfe25acf8b437eb2a8b2d49d443800a5f18508cd811fea3181723922a8a82b07", + "pip/numpy-1.26.4-cp310-cp310-win_amd64.whl": "sha256:b97fe8060236edf3662adfc2c633f56a08ae30560c56310562cb4f95500022d5", + "pip/numpy-1.26.4-cp311-cp311-macosx_10_9_x86_64.whl": "sha256:4c66707fabe114439db9068ee468c26bbdf909cac0fb58686a42a24de1760c71", + "pip/numpy-1.26.4-cp311-cp311-macosx_11_0_arm64.whl": "sha256:edd8b5fe47dab091176d21bb6de568acdd906d1887a4584a15a9a96a1dca06ef", + "pip/numpy-1.26.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:7ab55401287bfec946ced39700c053796e7cc0e3acbef09993a9ad2adba6ca6e", + "pip/numpy-1.26.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:666dbfb6ec68962c033a450943ded891bed2d54e6755e35e5835d63f4f6931d5", + "pip/numpy-1.26.4-cp311-cp311-musllinux_1_1_aarch64.whl": "sha256:96ff0b2ad353d8f990b63294c8986f1ec3cb19d749234014f4e7eb0112ceba5a", + "pip/numpy-1.26.4-cp311-cp311-musllinux_1_1_x86_64.whl": "sha256:60dedbb91afcbfdc9bc0b1f3f402804070deed7392c23eb7a7f07fa857868e8a", + "pip/numpy-1.26.4-cp311-cp311-win32.whl": "sha256:1af303d6b2210eb850fcf03064d364652b7120803a0b872f5211f5234b399f20", + "pip/numpy-1.26.4-cp311-cp311-win_amd64.whl": "sha256:cd25bcecc4974d09257ffcd1f098ee778f7834c3ad767fe5db785be9a4aa9cb2", + "pip/numpy-1.26.4-cp312-cp312-macosx_10_9_x86_64.whl": "sha256:b3ce300f3644fb06443ee2222c2201dd3a89ea6040541412b8fa189341847218", + "pip/numpy-1.26.4-cp312-cp312-macosx_11_0_arm64.whl": "sha256:03a8c78d01d9781b28a6989f6fa1bb2c4f2d51201cf99d3dd875df6fbd96b23b", + "pip/numpy-1.26.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:9fad7dcb1aac3c7f0584a5a8133e3a43eeb2fe127f47e3632d43d677c66c102b", + "pip/numpy-1.26.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:675d61ffbfa78604709862923189bad94014bef562cc35cf61d3a07bba02a7ed", + "pip/numpy-1.26.4-cp312-cp312-musllinux_1_1_aarch64.whl": "sha256:ab47dbe5cc8210f55aa58e4805fe224dac469cde56b9f731a4c098b91917159a", + "pip/numpy-1.26.4-cp312-cp312-musllinux_1_1_x86_64.whl": "sha256:1dda2e7b4ec9dd512f84935c5f126c8bd8b9f2fc001e9f54af255e8c5f16b0e0", + "pip/numpy-1.26.4-cp312-cp312-win32.whl": "sha256:50193e430acfc1346175fcbdaa28ffec49947a06918b7b92130744e81e640110", + "pip/numpy-1.26.4-cp312-cp312-win_amd64.whl": "sha256:08beddf13648eb95f8d867350f6a018a4be2e5ad54c8d8caed89ebca558b2818", + "pip/numpy-1.26.4-cp39-cp39-macosx_10_9_x86_64.whl": "sha256:7349ab0fa0c429c82442a27a9673fc802ffdb7c7775fad780226cb234965e53c", + "pip/numpy-1.26.4-cp39-cp39-macosx_11_0_arm64.whl": "sha256:52b8b60467cd7dd1e9ed082188b4e6bb35aa5cdd01777621a1658910745b90be", + "pip/numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl": "sha256:d5241e0a80d808d70546c697135da2c613f30e28251ff8307eb72ba696945764", + "pip/numpy-1.26.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:f870204a840a60da0b12273ef34f7051e98c3b5961b61b0c2c1be6dfd64fbcd3", + "pip/numpy-1.26.4-cp39-cp39-musllinux_1_1_aarch64.whl": "sha256:679b0076f67ecc0138fd2ede3a8fd196dddc2ad3254069bcb9faf9a79b1cebcd", + "pip/numpy-1.26.4-cp39-cp39-musllinux_1_1_x86_64.whl": "sha256:47711010ad8555514b434df65f7d7b076bb8261df1ca9bb78f53d3b2db02e95c", + "pip/numpy-1.26.4-cp39-cp39-win32.whl": "sha256:a354325ee03388678242a4d7ebcd08b5c727033fcff3b2f536aea978e15ee9e6", + "pip/numpy-1.26.4-cp39-cp39-win_amd64.whl": "sha256:3373d5d70a5fe74a2c1bb6d2cfd9609ecf686d47a2d7b1d37a8f3b6bf6003aea", + "pip/numpy-1.26.4-pp39-pypy39_pp73-macosx_10_9_x86_64.whl": "sha256:afedb719a9dcfc7eaf2287b839d8198e06dcd4cb5d276a3df279231138e83d30", + "pip/numpy-1.26.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl": "sha256:95a7476c59002f2f6c590b9b7b998306fba6a5aa646b1e22ddfeaf8f78c3a29c", + "pip/numpy-1.26.4-pp39-pypy39_pp73-win_amd64.whl": "sha256:7e50d0a0cc3189f9cb0aeb3a6a6af18c16f59f004b866cd2be1c14b36134a4a0", + "pip/numpy-1.26.4.tar.gz": "sha256:2a02aba9ed12e4ac4eb3ea9421c420301a0c6460d9830d74a9df87efa4912010", + "pip/protobuf-4.25.3-cp310-abi3-win32.whl": "sha256:d4198877797a83cbfe9bffa3803602bbe1625dc30d8a097365dbc762e5790faa", + "pip/protobuf-4.25.3-cp310-abi3-win_amd64.whl": "sha256:209ba4cc916bab46f64e56b85b090607a676f66b473e6b762e6f1d9d591eb2e8", + "pip/protobuf-4.25.3-cp37-abi3-macosx_10_9_universal2.whl": "sha256:f1279ab38ecbfae7e456a108c5c0681e4956d5b1090027c1de0f934dfdb4b35c", + "pip/protobuf-4.25.3-cp37-abi3-manylinux2014_aarch64.whl": "sha256:e7cb0ae90dd83727f0c0718634ed56837bfeeee29a5f82a7514c03ee1364c019", + "pip/protobuf-4.25.3-cp37-abi3-manylinux2014_x86_64.whl": "sha256:7c8daa26095f82482307bc717364e7c13f4f1c99659be82890dcfc215194554d", + "pip/protobuf-4.25.3-cp38-cp38-win32.whl": "sha256:f4f118245c4a087776e0a8408be33cf09f6c547442c00395fbfb116fac2f8ac2", + "pip/protobuf-4.25.3-cp38-cp38-win_amd64.whl": "sha256:c053062984e61144385022e53678fbded7aea14ebb3e0305ae3592fb219ccfa4", + "pip/protobuf-4.25.3-cp39-cp39-win32.whl": "sha256:19b270aeaa0099f16d3ca02628546b8baefe2955bbe23224aaf856134eccf1e4", + "pip/protobuf-4.25.3-cp39-cp39-win_amd64.whl": "sha256:e3c97a1555fd6388f857770ff8b9703083de6bf1f9274a002a332d65fbb56c8c", + "pip/protobuf-4.25.3-py3-none-any.whl": "sha256:f0700d54bcf45424477e46a9f0944155b46fb0639d69728739c0e47bab83f2b9", + "pip/protobuf-4.25.3.tar.gz": "sha256:25b5d0b42fd000320bd7830b349e3b696435f3b329810427a6bcce6a5492cc5c", + "pip/setuptools-70.0.0-py3-none-any.whl": "sha256:54faa7f2e8d2d11bcd2c07bed282eef1046b5c080d1c32add737d7b5817b1ad4", + "pip/setuptools-70.0.0.tar.gz": "sha256:f211a66637b8fa059bb28183da127d4e86396c991a942b028c6650d4319c3fd0", + "pip/six-1.16.0-py2.py3-none-any.whl": "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254", + "pip/six-1.16.0.tar.gz": "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", + "pip/tensorboard-2.16.2-py3-none-any.whl": "sha256:9f2b4e7dad86667615c0e5cd072f1ea8403fc032a299f0072d6f74855775cc45", + "pip/tensorboard_data_server-0.7.2-py3-none-any.whl": "sha256:7e0610d205889588983836ec05dc098e80f97b7e7bbff7e994ebb78f578d0ddb", + "pip/tensorboard_data_server-0.7.2-py3-none-macosx_10_9_x86_64.whl": "sha256:9fe5d24221b29625dbc7328b0436ca7fc1c23de4acf4d272f1180856e32f9f60", + "pip/tensorboard_data_server-0.7.2-py3-none-manylinux_2_31_x86_64.whl": "sha256:ef687163c24185ae9754ed5650eb5bc4d84ff257aabdc33f0cc6f74d8ba54530", + "pip/werkzeug-3.0.3-py3-none-any.whl": "sha256:fc9645dc43e03e4d630d23143a04a7f947a9a3b5727cd535fdfe155a17cc48c8", + "pip/werkzeug-3.0.3.tar.gz": "sha256:097e5bfda9f0aba8da6b8545146def481d06aa7d3266e7448e2cccf67dd8bd18" +} diff --git a/tests/integration/test_data/pip_no_wheels/.build-config.yaml b/tests/integration/test_data/pip_no_wheels/.build-config.yaml new file mode 100644 index 000000000..31fe7c492 --- /dev/null +++ b/tests/integration/test_data/pip_no_wheels/.build-config.yaml @@ -0,0 +1,6 @@ +environment_variables: +- name: PIP_FIND_LINKS + value: ${output_dir}/deps/pip +- name: PIP_NO_INDEX + value: 'true' +project_files: [] diff --git a/tests/integration/test_data/pip_no_wheels/bom.json b/tests/integration/test_data/pip_no_wheels/bom.json new file mode 100644 index 000000000..f0ef18e71 --- /dev/null +++ b/tests/integration/test_data/pip_no_wheels/bom.json @@ -0,0 +1,51 @@ +{ + "bomFormat": "CycloneDX", + "components": [ + { + "name": "cryptos", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + } + ], + "purl": "pkg:pypi/cryptos@2.0.9", + "type": "library", + "version": "2.0.9" + }, + { + "name": "pyicu", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + } + ], + "purl": "pkg:pypi/pyicu@2.12", + "type": "library", + "version": "2.12" + }, + { + "name": "wheels-of-fortune", + "properties": [ + { + "name": "cachi2:found_by", + "value": "cachi2" + } + ], + "purl": "pkg:pypi/wheels-of-fortune@0.1.0?vcs_url=git%2Bhttps://github.com/cachito-testing/cachi2-pip-wheels.git%403697d63affaec82985f1d9b4035d5305e58c91d6", + "type": "library", + "version": "0.1.0" + } + ], + "metadata": { + "tools": [ + { + "name": "cachi2", + "vendor": "red hat" + } + ] + }, + "specVersion": "1.4", + "version": 1 +} diff --git a/tests/integration/test_data/pip_no_wheels/fetch_deps_sha256sums.json b/tests/integration/test_data/pip_no_wheels/fetch_deps_sha256sums.json new file mode 100644 index 000000000..68ca6c316 --- /dev/null +++ b/tests/integration/test_data/pip_no_wheels/fetch_deps_sha256sums.json @@ -0,0 +1,4 @@ +{ + "pip/PyICU-2.12.tar.gz": "sha256:bd7ab5efa93ad692e6daa29cd249364e521218329221726a113ca3cb281c8611", + "pip/cryptos-2.0.9.tar.gz": "sha256:3465f37ff22fad3903394ed1dafa0d712472a2ab2e9bc1f13a31886ffc7df343" +} diff --git a/tests/integration/test_pip.py b/tests/integration/test_pip.py index 1bf34da95..c5dc725d6 100644 --- a/tests/integration/test_pip.py +++ b/tests/integration/test_pip.py @@ -96,6 +96,30 @@ ), id="pip_yanked", ), + pytest.param( + utils.TestParameters( + repo="https://github.com/cachito-testing/cachi2-pip-wheels.git", + ref="3697d63affaec82985f1d9b4035d5305e58c91d6", + packages=({"path": ".", "type": "pip", "allow_binary": "true"},), + check_vendor_checksums=False, + expected_exit_code=0, + expected_output="All dependencies fetched successfully", + ), + id="pip_no_wheels", + ), + pytest.param( + utils.TestParameters( + repo="https://github.com/cachito-testing/cachi2-pip-wheels.git", + ref="eee59273542ee7d412fb359d471386b645cf166e", + packages=({"path": ".", "type": "pip", "allow_binary": "false"},), + check_output=False, + check_deps_checksums=False, + check_vendor_checksums=False, + expected_exit_code=2, + expected_output="Error: PackageRejected: No distributions found", + ), + id="pip_no_sdists", + ), ], ) def test_pip_packages( @@ -147,6 +171,26 @@ def test_pip_packages( ["registry.fedoraproject.org/fedora-minimal:37"], id="pip_e2e_test", ), + pytest.param( + utils.TestParameters( + repo="https://github.com/cachito-testing/cachi2-pip-wheels", + ref="eee59273542ee7d412fb359d471386b645cf166e", + packages=( + { + "type": "pip", + "requirements_files": ["requirements.txt"], + "requirements_build_files": [], + "allow_binary": "true", + }, + ), + check_vendor_checksums=False, + expected_exit_code=0, + expected_output="All dependencies fetched successfully", + ), + ["python3", "/opt/package"], + ["Hello, world!"], + id="pip_e2e_test_wheels", + ), ], ) def test_e2e_pip(