From 97b5e48b58f5391b839a0064e69b1009d6110e49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pedro=20Andr=C3=A9s=20Chaparro=20Quintero?= <62714297+PedroChaparro@users.noreply.github.com> Date: Fri, 5 Jan 2024 14:13:11 -0500 Subject: [PATCH] docs: Add documentation (#8) * docs: Add documentation (#7) * docs(gh): Add contribution guidelines * docs: Add environment variables description * docs: Add flow and sequences diagrams * docs(gh): Add README file --- README.md | 18 +++++ docs/contributing.md | 62 ++++++++++++++++++ docs/diagrams/flow.md | 37 +++++++++++ docs/diagrams/sequences.md | 32 +++++++++ docs/environment.md | 9 +++ .../images/tests-microservice-highlighted.png | Bin 0 -> 114219 bytes 6 files changed, 158 insertions(+) create mode 100644 README.md create mode 100644 docs/contributing.md create mode 100644 docs/diagrams/flow.md create mode 100644 docs/diagrams/sequences.md create mode 100644 docs/environment.md create mode 100644 docs/images/tests-microservice-highlighted.png diff --git a/README.md b/README.md new file mode 100644 index 0000000..54e3474 --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +# Tests Micro-service + +Welcome to the tests micro-service. This service is responsible for running the teacher's tests against the student's code and pushing the results to the `submissions-status-updates` queue for the `Submissions Status Updater` micro-service to pick them up and update the database accordingly. + +Below is a diagram of the overall architecture of the system with the tests micro-service highlighted in green. + +![Tests microservice highlighted with a green rectangle in the overall architecture diagram](./docs/images/tests-microservice-highlighted.png) + +## Documentation + +Please, refer to the following documents for more information about the tests micro-service: + +| Document | Description | +| --- | --- | +| [Contributing](./docs/contributing.md) | Contributing guidelines. | +| [Environment](./docs/environment.md) | A description of the environment variables used by the tests micro-service. | +| [Sequences Diagrams](./docs/diagrams/sequences.md) | A collection of sequence diagrams describing the interactions between the tests micro-service and other components of the system. | +| [Flow Diagrams](./docs/diagrams/flow.md) | A collection of flow diagrams describing the flow of the tests micro-service. | \ No newline at end of file diff --git a/docs/contributing.md b/docs/contributing.md new file mode 100644 index 0000000..1ebdfd9 --- /dev/null +++ b/docs/contributing.md @@ -0,0 +1,62 @@ +# General organization contribution guidelines + +Please, read the [General Contribution Guidelines](https://github.com/upb-code-labs/docs/blob/main/CONTRIBUTING.md) before contributing. + +# Tests micro-service contribution guidelines + +## Project structure / architecture + +The tests micro-service's architecture is based on the Hexagonal Architecture in order to make it easier to maintain and extend. + +The project structure is as follows: + +- `domain`: Contains the business logic of the tests micro-service. + - `definitions`: Contains the interfaces (contracts) of the tests micro-service. + - `entities`: Contains the entities of the tests micro-service. + - `dtos`: Contains the data transfer objects of the tests micro-service. + +- `application`: Contains the application logic (use cases) of the tests micro-service. + +- `infrastructure`: Contains the implementation of the tests micro-service's interfaces (contracts) and the external dependencies of the tests micro-service. + - `implementations`: Contains the implementations of the `domain` interfaces (contracts). + - `rabbitmq`: Contains the RabbitMQ related code. + - `static_files`: Contains the static files micro-service related code. + +- `utils`: Contains the utility functions of the tests micro-service. + +Note that, as the `application` layer cannot depend on the `infrastructure` layer, the `application` layer only uses the interfaces (contracts) defined in the `domain` layer, so, any implementation in the `infrastructure` layer can injected and used by the `application` layer without any problem. + +The above allows us, for instance, to use multiple `LanguageTestsRunner` implementations (`JavaTestsRunner`, `TypescriptTestsRunner`, etc.) without having to change the `application` layer. + +## Local development + +### Dependencies + +The following dependencies are required to run the tests micro-service locally: + +- [Go 1.21.5](https://golang.org/doc/install) +- [Podman](https://podman.io/getting-started/installation) (To build and test the container image) + +Please, note that `Podman` is a drop-in replacement for `Docker`, so you can use `Docker` instead if you prefer. + +Additionally, you may want to install the following dependencies to make your life easier: + +- [Air](https://github.com/cosmtrek/air) (for live reloading) + +### Running the tests micro-service locally + +As the role of the tests micro-service is to listen for messages in the `submissions` queue and run the tests for the submissions, you will need to run the [gateway](https://github.com/UPB-Code-Labs/main-api) project first in order to initialize the queue, database and the other micro-services and send submissions by using the REST API. + +After you have the gateway running, you can start the tests micro-service by running the following command: + +```bash +air +``` + +This will start the tests micro-service and will watch for changes in the source code and restart the service automatically. + +Additionally, you may want to generate a `.air.toml` file and add the `tests_exec_dir/` directory to the `exclude_dir` list in order to avoid restarting the service when the tests are executed, to do this, run the following command or refer to the [Air documentation](https://github.com/cosmtrek/air) + +```bash +air init +``` \ No newline at end of file diff --git a/docs/diagrams/flow.md b/docs/diagrams/flow.md new file mode 100644 index 0000000..87713af --- /dev/null +++ b/docs/diagrams/flow.md @@ -0,0 +1,37 @@ +# Sequences diagrams + +## Run tests + +### Java implementation + +```mermaid +flowchart TD + Start --> A[Save .zip archives in the FS] + A --> B{Error?} + B -- Yes --> Z + + B -- No --> D[Extract .zip archives] + D --> E{Error?} + E -- Yes --> Z + + E -- No --> F[Merge extracted folders] + F --> G{Error?} + G -- Yes --> Z + + G -- No --> H[Run test command] + H --> I[Sanitize Stdout / Stderr] + I --> J[Delete tests execution folder] + J --> Z + + Z[Send update to the SSU Queue] --> Finish +``` + +#### Explanations + +- `Merge extracted folders`: In this step, the `src/test/java` folder from the teacher's code is merged with the `src/main/java` folder from the student's code in the `src/` folder of the language template in order to: + + - Use the `pom.xml` file from the language template to make sure no additional dependencies are added or removed from the project by the teacher or the student. **This is important because we only guarantee that the tests will run correctly and securely if the dependencies are the same as the ones defined in the language template.** + + - Run the teacher's tests against the student's code. + +- `Sanitize Stdout / Stderr`: In this step, the `stdout` and `stderr` of the tests execution are sanitized in order to remove any sensitive information that may be present in the output of the tests execution (e.g. File paths, etc.). \ No newline at end of file diff --git a/docs/diagrams/sequences.md b/docs/diagrams/sequences.md new file mode 100644 index 0000000..1cc6e97 --- /dev/null +++ b/docs/diagrams/sequences.md @@ -0,0 +1,32 @@ +# Sequences diagrams + +## Full micro-service flow + +```mermaid +sequenceDiagram + participant SQ as Submissions Queue + participant TMSvc as Tests Microservice + participant SSUQ as Submissions Status Updates Queue + participant SFMSvc as Static Files Microservice + + + SQ ->> TMSvc: Pull message with job metadata. + + TMSvc -->> SSUQ: Send "running" update. + + TMSvc ->>+ SFMSvc: Get .zip archive with the language template. + SFMSvc-->>- TMSvc: .zip archive bytes. + TMSvc ->>+ SFMSvc: Get .zip archive with teacher's tests. + SFMSvc-->>- TMSvc: .zip archive bytes. + TMSvc ->>+ SFMSvc: Get .zip archive with the student's code. + SFMSvc-->>- TMSvc: .zip archive bytes. + + TMSvc -->> TMSvc: Run tests. + + TMSvc -->> SSUQ: Send "ready" update. + + TMSvc -->> SQ: ACK message. + +``` + +Please, note that the `Run tests` step is further detailed in the [flow diagrams](./flow.md). \ No newline at end of file diff --git a/docs/environment.md b/docs/environment.md new file mode 100644 index 0000000..7ba66ff --- /dev/null +++ b/docs/environment.md @@ -0,0 +1,9 @@ +# Environment + +This document describes the required environment variables to run the micro-service. + +| Name | Description | Example | Mandatory | +| ----------------------------- | ----------------------------------------------- | ---------------------------------------- | -------- | +| `RABBIT_MQ_CONNECTION_STRING` | The connection string to the RabbitMQ instance. | `amqp://username:password@address:port/` | Yes | +| `STATIC_FILES_MICROSERVICE_ADDRESS` | The address of the static files micro-service. | `http://domain:port` | Yes | +| `TESTS_EXECUTION_DIRECTORY` | The path (preferably absolute) to the directory where the tests will be executed. | `/tmp` | No | diff --git a/docs/images/tests-microservice-highlighted.png b/docs/images/tests-microservice-highlighted.png new file mode 100644 index 0000000000000000000000000000000000000000..b138c3f9f9d7c6299fc664b9b5c44b608cb63e17 GIT binary patch literal 114219 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