diff options
author | Reinier van der Leer <pwuts@agpt.co> | 2024-03-21 21:15:46 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-21 21:15:46 +0100 |
commit | dde0c70a8138a9e80f0deb41fbe1fa16099b2728 (patch) | |
tree | a96af33d4deb27d48173923a07eddbf5929a2d3c /autogpts | |
parent | feat(agent): Implement more fault tolerant `json_loads` function (#7016) (diff) | |
download | Auto-GPT-dde0c70a8138a9e80f0deb41fbe1fa16099b2728.tar.gz Auto-GPT-dde0c70a8138a9e80f0deb41fbe1fa16099b2728.tar.bz2 Auto-GPT-dde0c70a8138a9e80f0deb41fbe1fa16099b2728.zip |
ci(agent): Matrix CI tests across Linux, macOS and Windows (#7029)
* Matrix the AutoGPT Python CI's `test` job across Ubuntu, macOS and Windows
- Set up MinIO in a step rather than specifying it under `jobs[test].services`, because services are only supported on Linux runners
- Add Windows version of step to install Poetry
- Add macOS compatibility patches to 'Install Poetry (Unix)' and `setup_git_auth` steps
**Caveats:**
- **No Docker on macOS or Windows**
* Windows comes with Docker but only supports running Windows containers, while we're mainly interested in using Linux containers for code execution and/or running auxiliary services.
* [The macOS runner doesn't come with Docker](https://github.com/actions/runner-images/issues/17). Setting it up is possible but takes ~3-4 minutes, and the performance of the Colima engine is poor: a `docker pull` that takes 2 seconds on Linux takes 45 seconds on macOS.
- **No S3 service available on Windows**
It seems that running a background process [isn't possible on Windows](https://github.com/actions/runner/issues/598#issuecomment-2011890429), and neither is running Linux-based Docker containers.
* Add `autogpt-agent` and OS-specific flags to Codecov upload step
* Improve caching of Python dependencies in CI by changing the cache key
- Include hash of `poetry.lock` instead of `pyproject.toml` in key
- Remove date component from key; it was included to avoid getting stuck to old cached versions of packages when we were still using `requirements.txt`. With `poetry.lock` that is no longer a concern.
* Fix skip check in test_s3_file_storage.py
Diffstat (limited to 'autogpts')
-rw-r--r-- | autogpts/autogpt/tests/unit/test_s3_file_storage.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/autogpts/autogpt/tests/unit/test_s3_file_storage.py b/autogpts/autogpt/tests/unit/test_s3_file_storage.py index d58490d80..2544a3e9d 100644 --- a/autogpts/autogpt/tests/unit/test_s3_file_storage.py +++ b/autogpts/autogpt/tests/unit/test_s3_file_storage.py @@ -8,7 +8,7 @@ from botocore.exceptions import ClientError from autogpt.file_storage.s3 import S3FileStorage, S3FileStorageConfiguration -if not os.getenv("S3_ENDPOINT_URL") and not os.getenv("AWS_ACCESS_KEY_ID"): +if not (os.getenv("S3_ENDPOINT_URL") and os.getenv("AWS_ACCESS_KEY_ID")): pytest.skip("S3 environment variables are not set", allow_module_level=True) |