Commit graph

22 commits

Author SHA1 Message Date
Luc Didry
e3b1b714b3
🐛 — Delete tasks which are not in config file anymore (fix #19) 2024-03-21 15:49:39 +01:00
Luc Didry
098575f186
— Link to reschedule non-ok checks (fix #27) 2024-03-14 16:49:03 +01:00
Luc Didry
2d6091ea41 🐛 — Fix alerts config in test scenario 2023-12-14 15:20:46 +01:00
Luc Didry
75df5c1110 🐛 — Fix alerts config in test config 2023-12-14 15:20:46 +01:00
33becdd753 Accept all HTTP returned status for the SSL check.
Fixes #7
2023-10-30 15:53:23 +01:00
0e08bc8be6 Allow exceptions for advanced checks.
- See more information about this in #7
2023-10-30 15:02:13 +01:00
aee1545814 Deduplicate checks from settings. Fixes #5
- Allow the database to have duplicates (previous calls were causing a server crash)
- Add tests scenarii for duplication
2023-10-25 00:00:25 +02:00
5bca4fa261 argos server cleandb now keep a number of results per task 2023-10-20 02:40:06 +02:00
a9f823fbfa 🌱 Let's start with the Gitlab CI 2023-10-18 23:17:23 +02:00
9885a5809a Add an 'argos server clean' command that needs to be run periodically to clean the db 2023-10-18 21:45:10 +02:00
8c58a50e8f Add ARGOS_ prefix to env variables used in tests. 2023-10-18 12:34:29 +02:00
e437f48b34 Changed checks to accept ints for expected values.
(In the configuration)
2023-10-18 12:32:33 +02:00
83f57c6e47 Started working on a simple web interface.
- The web interface is exposed at /, and the api
  at /api.
- Include picocss for a minimal CSS framework
- Added some queries and models.Task properties
  to access the latest results
2023-10-13 09:43:47 +02:00
e2d8066746 Update API endpoints and test cases
- Adjusted test cases in test_api.py
  - Updated test_db fixture to delete the database between each test.
  - Consolidated test cases for tasks retrieval and results
2023-10-12 00:16:06 +02:00
43f8aabb2c Refactor server codebase for testing.
- Restructured server module to separate the application creation and configuration.
- Moved code dealing with SQLAlchemy database
  setup and teardown to the main application file.
- Moved functions related to configuration file loading to `argos.server.settings`.
- Fixed SQLAchemy expressions in `argos.server.queries`.
- Implemented a more granular system of setting checks' schedule on the server.
- Introduced frequency scheduling on per-website basis in the YAML config.
- Introduced Pytest fixtures for handling test database and authorized HTTP client in `tests/conftest.py`.
- Included a first test for the api
- Implemented changes to models to accommodate changes to task scheduling.
- Fixed errors concerning database concurrency arising from changes to the application setup.
2023-10-11 23:52:33 +02:00
e540eee9b3 Add the ability to convert to days, hours, minutes 2023-10-11 15:46:05 +02:00
4935a025ce Add a few more tests for duration conversions 2023-10-11 11:29:46 +02:00
daa22708c4 Make it possible to specify the frequency with '1d' 2023-10-11 11:11:57 +02:00
d35be89f4b Support !include filename in the yaml files.
- run isort on the codebase
2023-10-10 11:45:33 +02:00
cdfb1e30ac Add authorization headers
- Service endpoints now require an authentication
- Changed the location of the commands, which are now in `commands.py`
- There is now only one "argos" command which can start the server or an agent.
2023-10-10 11:30:16 +02:00
43e1767002 Refactor check config vlidation
- Refactored the `get_check_by_name` method to `get_registered_check` in the
  BaseCheck class and added a `get_registered_checks` method to get all the
  registered checks.
- Added a validation in the `WebsitePath` class to ensure that a check exists
  when parsing the configuration file.
- Updated the existing test for parsing SSL duration and added new tests to
  validate path parsing and check existence validation.
2023-10-10 10:04:46 +02:00
42ec15c6f4 Working SSL checks, refactoring of the codebase.
- Start implementing some tests using pytest
- Packaged using pyproject.toml
- Implemented SSL checks using httpx
- Checks can now run partially on the server, to access the configuration and determine the severity of the error if any
- Used black to format all the files
- Added an utility to convert strings like "3d" and "3w" to days
- The internal representation of SSL thresholds is now a list of tuples
- Models were lacking some relationship between Tasks and Results
2023-10-09 19:33:58 +02:00