Commit Graph

77 Commits (b8238c222841860daf351d459691d42a4dee35c5)

Author SHA1 Message Date
Reinier van der Leer 1bed3c6056
ci: Fix docker release workflow
- Update autogpt-docker-release.yml to correctly sanitize image tags
- This unbreaks the release workflow
2023-12-13 21:41:03 +01:00
Reinier van der Leer b083d3245d
ci/cd: Strip `autogpt-` from tag name for Docker release 2023-12-11 15:47:30 +01:00
Reinier van der Leer b9d7dd1514
ci/cd: Only run AutoGPT Docker Release workflow on releases linked to `autogpt-*` tag
- Add a condition to the job in autogpt-docker-release.yml to only run on `refs/tags/autogpt-`
2023-12-11 15:34:32 +01:00
Reinier van der Leer 1f40d72081
feat(agent/workspace): Add GCS and S3 FileWorkspace providers (#6485)
* refactor: Rename FileWorkspace to LocalFileWorkspace and create FileWorkspace abstract class
  - Rename `FileWorkspace` to `LocalFileWorkspace` to provide a more descriptive name for the class that represents a file workspace that works with local files.
  - Create a new base class `FileWorkspace` to serve as the parent class for `LocalFileWorkspace`. This allows for easier extension and customization of file workspaces in the future.
  - Update import statements and references to `FileWorkspace` throughout the codebase to use the new naming conventions.

* feat: Add S3FileWorkspace + tests + test setups for CI and Docker
  - Added S3FileWorkspace class to provide an interface for interacting with a file workspace and storing files in an S3 bucket.
  - Updated pyproject.toml to include dependencies for boto3 and boto3-stubs.
  - Implemented unit tests for S3FileWorkspace.
  - Added MinIO service to Docker CI to allow testing S3 features in CI.
  - Added autogpt-test service config to docker-compose.yml for local testing with MinIO.

* ci(docker): tee test output instead of capturing

* fix: Improve error handling in S3FileWorkspace.initialize()
  - Do not tolerate all `botocore.exceptions.ClientError`s
  - Raise the exception anyways if the error is not "NoSuchBucket"

* feat: Add S3 workspace backend support and S3Credentials
  - Added support for S3 workspace backend in the Autogpt configuration
  - Added a new sub-config `S3Credentials` to store S3 credentials
  - Modified the `.env.template` file to include variables related to S3 credentials
  - Added a new `s3_credentials` attribute on the `Config` class to store S3 credentials
  - Moved the `unmasked` method from `ModelProviderCredentials` to the parent `ProviderCredentials` class to handle unmasking for S3 credentials

* fix(agent/tests): Fix S3FileWorkspace initialization in test_s3_file_workspace.py
  - Update the S3FileWorkspace initialization in the test_s3_file_workspace.py file to include the required S3 Credentials.

* refactor: Remove S3Credentials and add get_workspace function
  - Remove `S3Credentials` as boto3 will fetch the config from the environment by itself
  - Add `get_workspace` function in `autogpt.file_workspace` module
  - Update `.env.template` and tests to reflect the changes

* feat(agent/workspace): Make agent workspace backend configurable
  - Modified `autogpt.file_workspace.get_workspace` function to either take a workspace `id` or `root_path`.
  - Modified `FileWorkspaceMixin` to use the `get_workspace` function to set up the workspace.
  - Updated the type hints and imports accordingly.

* feat(agent/workspace): Add GCSFileWorkspace for Google Cloud Storage
  - Added support for Google Cloud Storage as a storage backend option in the workspace.
  - Created the `GCSFileWorkspace` class to interface with a file workspace stored in a Google Cloud Storage bucket.
  - Implemented the `GCSFileWorkspaceConfiguration` class to handle the configuration for Google Cloud Storage workspaces.
  - Updated the `get_workspace` function to include the option to use Google Cloud Storage as a workspace backend.
  - Added unit tests for the new `GCSFileWorkspace` class.

* fix: Unbreak use of non-local workspaces in AgentProtocolServer
  - Modify the `_get_task_agent_file_workspace` method to handle both local and non-local workspaces correctly
2023-12-07 14:46:08 +01:00
Reinier van der Leer b8b792e844
ci: Fix issue in Docker CI
* Stop Docker CI pushing images from PR workflow runs
2023-12-03 17:35:03 +01:00
Reinier van der Leer fe96f6d783
refactor: Disable mypy and autoflake in CI and pre-commit hook
- Commented out the mypy and autoflake checks in the CI workflow and pre-commit config files.
- The intention is to enable the mypy check again later.
2023-12-02 06:11:51 +01:00
Reinier van der Leer a771b2c6c1
ci: Push dev build in Docker CI if tests succeed
- Added Docker Hub authentication in the CI workflow
- Added a new step to push the dev build to Docker Hub
2023-11-30 17:45:09 +01:00
Reinier van der Leer b106a61352
Clean up & fix GitHub workflows (#6313)
* ci: Mitigate security issues in autogpt-ci.yml

- Remove unnecessary pull_request_target paths and related variables and config
- Set permissions for contents to read only

* ci: Simplify steps in autogpt-ci.yml workflow using GitHub CLI

- Simplify step in 'autogpt-ci.yml' by using GitHub CLI instead of API for adding label and comment functionality
- Replace curl command with 'gh issue edit' to add "behaviour change" label to the pull request
- Replace gh api command with 'gh issue comment' to leave a comment about the changed behavior of AutoGPT in the pull request

* ci: Fix issues in workflows

- Move environment variable definition to top level in benchmark-ci.yml (because the other job also needs it)
- Removed invalid 'branches: [hackathon]' restriction in hackathon.yml workflow
- Removed redundant 'ref' and 'repository' fields in the 'checkout' step of both workflows.

* ci: Delete legacy benchmarks.yml workflow

* ci: Add triggers for CI workflows

- Add triggers to run CI workflows when they are edited.
- Update the paths for the CI workflows in the trigger configuration.

* fix: Fix benchmark lint error

- Removed unnecessary blank lines in report_types.py
- Fixed string quotes in challenge.py to maintain consistency

* fix: Update task description in password generator data.json

- Update task description in `data.json` file for the password generator challenge to clarify the input requirements and error handling.
- This change is made in an attempt to make the Benchmark CI pass.

* fix: Fix PasswordGenerator challenge in CI

- Fix the behavior of the reference password_generator.py to align with the task description
- Use default password length 8 instead of a random length in the generate_password function
- Retrieve the password length from the command line arguments if "--length" is provided, else set it to 8
2023-11-21 10:58:54 +01:00
SwiftyOS 787c71a9de update benchmarking workflow 2023-11-16 14:49:09 +01:00
Reinier van der Leer 60264d65db
Add fridge, project management labels to do-not-stale list for issues 2023-11-16 10:14:59 +01:00
Merwane Hamadi 5ff3f2dbbb Hackathon CI: use agbenchmark instead of mock 2023-10-27 07:44:02 -07:00
Merwane Hamadi bd496066dc Hackathon CI: change name of folder 2023-10-27 07:27:43 -07:00
Merwane Hamadi 336e78eca0 Update Hackathon CI 2023-10-27 07:21:29 -07:00
merwanehamadi 21b809794a
Update hackathon.yml (#5975) 2023-10-26 13:47:36 -07:00
Merwane Hamadi 5fd82c7f15 Add CI for the hackathon and fix TestAgent.json 2023-10-26 08:27:47 -07:00
Reinier van der Leer 16e266c65f
Set up CI for `development` branch; deprecate `stable` branch 2023-10-21 15:46:53 -07:00
Reinier van der Leer ae9fc68b37
Remove references to legacy challenges 2023-10-17 17:31:23 -07:00
Reinier van der Leer 8cf246bb9e
Unbreak benchmark-ci.yml 2023-10-17 11:48:40 -07:00
Reinier van der Leer eb7eb37e65
Add AutoGPT agent to autogpts-ci.yml 2023-10-17 11:08:17 -07:00
Reinier van der Leer 0bd5d4420e
Unbreak autogpts-ci.yml 2023-10-17 10:47:43 -07:00
Reinier van der Leer 1eadc64dc0
Fix AutoGPT Docker cache purge workflow 2023-10-16 22:32:55 -07:00
merwanehamadi a7c11a994b
Frontend ci (#5579)
* Fix agbenchmark client

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>

* Add frontend ci

---------

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-10-06 12:20:01 -07:00
merwanehamadi bcb24c1a58
Fix challenges (#5561)
Fix challenges and CI

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-10-05 10:59:50 -07:00
SwiftyOS 11cb40af88 Update git stats 2023-10-03 12:45:28 +02:00
merwanehamadi a30cbcc2ce
Fix benchmark ci (#5478)
Fix benchmark CI

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-10-02 12:41:32 -07:00
merwanehamadi 163ab75379
Fix AutoGPTs-CI (#5477)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-10-02 12:05:04 -07:00
merwanehamadi 37fbb52d19
Add more challenges + cleanup (#5368)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-27 17:58:58 -07:00
Reinier van der Leer 747f27d26f
AutoGPT: unbreak Docker CI 2023-09-27 20:33:57 -04:00
merwanehamadi 8f41dbe27d
Rename Auto-GPT to AutoGPT (#5301)
* Rename to AutoGPT

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>

* Update autogpts/autogpt/BULLETIN.md

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>

* Update BULLETIN.md

* Update docker-compose.yml

* Update autogpts/forge/tutorials/001_getting_started.md

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>

* Update autogpts/autogpt/tests/unit/test_logs.py

Co-authored-by: Reinier van der Leer <pwuts@agpt.co>

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update introduction.md

* Update plugins.md

---------

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>
2023-09-22 15:49:29 -07:00
merwanehamadi f4e7b1c61c
Add eval_id and sync Skill Tree with Frontend(#5287)
Add eval_id to skill tree

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-21 13:36:17 -07:00
Reinier van der Leer c773815c70
Fix AutoGPT CI linters 2023-09-21 17:08:57 +02:00
Reinier van der Leer 8d29f97f46
AutoGPT: Fix Docker CI 2023-09-21 17:06:45 +02:00
merwanehamadi ff4c76ba00
Make agbenchmark a proxy of the evaluated agent (#5279)
Make agbenchmark a Proxy of the evaluated agent

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-20 16:06:00 -07:00
SwiftyOS 7e65df3f39 Changed repos stats to run daily 2023-09-20 16:46:03 +02:00
SwiftyOS 55bcb99e91 Edited the cron to run every 90mins 2023-09-20 13:23:35 +02:00
SwiftyOS 6dcee70eab Added repo stats 2023-09-20 12:53:29 +02:00
SwiftyOS 360ce60b83 commened out create PR bit 2023-09-19 13:04:57 +02:00
SwiftyOS 172d256e15 Switched pull request step 2023-09-19 12:57:49 +02:00
SwiftyOS 2c187b66b7 More messing with the action 2023-09-19 12:50:44 +02:00
SwiftyOS 9a94ce31d8 Testing PR creation 2023-09-19 12:44:21 +02:00
SwiftyOS c7f4bd265d Changed to push to a branch and make a pr 2023-09-19 12:35:04 +02:00
SwiftyOS 50842af1e5 Made the action only trigger if the frontend is modified 2023-09-19 12:10:39 +02:00
SwiftyOS 833a37e9a6 Added action to build and commit the frontend 2023-09-19 12:02:50 +02:00
merwanehamadi c09a0e7afa
Implement old polling mechanism (#5248)
Implement old polling mechanism

Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-18 16:23:06 -07:00
merwanehamadi 2cf350b783
Agent Protocol v1 (#5254)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-18 11:09:55 -07:00
Reinier van der Leer b181733d59
Protect meta issues from being staled 2023-09-17 16:56:49 +02:00
merwanehamadi f4d319cee4
Refactor benchmark (#5247)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-17 06:55:20 -07:00
merwanehamadi f76d45cd9e
Remove start from agbenchmark (#5241)
Signed-off-by: Merwane Hamadi <merwanehamadi@gmail.com>
2023-09-16 17:22:49 -07:00
merwanehamadi 4e43e4be78
Update CI pipy (#5240) 2023-09-16 17:00:46 -07:00
merwanehamadi 098bcb8b8d
Add working directory to agbenchmark pipy CI (#5237) 2023-09-16 14:36:35 -07:00