Commit Graph

12 Commits

Author SHA1 Message Date
Oran Avraham
8b89ef08a0
Use correct Poetry config when collecting Poetry projects (#447)
* Use correct Poetry config when collecting Poetry projects

When collecting Poetry projects for caching, a '**/poetry.lock' glob is
used.  However, in order to process the Poetry configuration, the
"poetry" command is run from the repo's root directory; this causes
Poetry to return an invalid configuration when there is a Poetry project
inside an inner directory.

Instead of running a single Poetry command, glob for the same pattern,
and run a Poetry command for every discovered project.

* Fix typo: saveSatetSpy -> saveStateSpy

* poetry: Support same virtualenv appearing in multiple projects

* Add nested Poetry projects test

* poetry: Set up environment for each project individually

* tests/cache-restore: Do not look for dependency files outside `data`

When the default dependency path is used for cache distributors, they
are looking for the dependency file in the project's root (including the
source code), which leads to tests taking a significant amount of time,
especially on Windows runners.  We thus hit sporadic test failures.

Change the test cases such that dependency files are always searched for
inside of `__tests__/data`, ignoring the rest of the project.

* poetry: Simplify `virtualenvs.in-project` boolean check

* README: Explain that poetry might create multiple caches

* poetry: Run `poetry env use` only after cache is loaded

The virtualenv cache might contain invalid entries, such as virtualenvs
built in previous, buggy versions of this action.  The `poetry env use`
command will recreate virtualenvs in case they are invalid, but it has
to be run only *after* the cache is loaded.

Refactor `CacheDistributor` a bit such that the validation (and possible
recreation) of virtualenvs happens only after the cache is loaded.

* poetry: Bump cache primary key
2023-01-03 11:13:00 -05:00
MaksimZhukov
2c3dd9e7e2
Add OS info to the error message (#559) 2022-12-07 18:12:42 +01:00
Dmitry Shibanov
49a521fa06
Fix poetry version (#445) 2022-07-25 15:02:06 +02:00
Milos Pantic
592a7a7a45
Add linux os release info to primary key (#467) 2022-07-19 14:20:19 +02:00
Dmitry Shibanov
766e8c6088
Fixing pipenv CI (#444)
* work on fixing pipenv

* change installation of pipenv to curl

* add different logs

* regenerate pipefile.lock

* change pipenv ci
2022-06-29 13:09:14 -04:00
Alexey
21c0493ecf
Cache hit output (#373)
* Remove useless await in getCacheDistributor calls

* Added cache-hit output

* Build action with cache-hit output

* Remove PromiseReturnType, add matchedKey == primaryKey check

* Update cache-distributor.ts

* Fix tests and rebuild
2022-04-05 09:57:13 -04:00
Vladimir Safonkin
7885ec3539 Rework pipenv caching test (#375)
* Rework python-pipenv-dependencies-caching test

* Update Pipfile.lock hash in the tests

* Rework python-pipenv-dependencies-caching-path test

* Set location for pipenv test

* Remove requests package from tests

* Test pipenv without caching

* Enable pipenv cache
2022-04-04 09:12:24 -04:00
Patrick Arminio
aac0ef93ba
Build and format 2022-03-25 22:54:10 -05:00
Patrick Arminio
1259541ec8
Add tests 2022-03-25 22:53:30 -05:00
Dmitry Shibanov
7f80679172
Add fix for Windows caching of pip (#332) 2022-02-04 14:00:41 +03:00
Hugo van Kemenade
ba33a692f1
Include Python version in pip cache key (#303) 2022-01-31 13:42:08 +03:00
Dmitry Shibanov
280924fbef
Implementation of python's caching (#266) 2021-11-17 13:31:22 +03:00