Skip to content

feat: Add CI/CD pipeline, testing framework, Slurm environment setup,…#26

Merged
crisingulani merged 6 commits intomainfrom
create_workflows
May 29, 2025
Merged

feat: Add CI/CD pipeline, testing framework, Slurm environment setup,…#26
crisingulani merged 6 commits intomainfrom
create_workflows

Conversation

@crisingulani
Copy link
Copy Markdown
Member

… and documentation

This commit introduces several new features and improvements:

  • Added a CI/CD pipeline using GitHub Actions to build and push Docker images to Docker Hub.
  • Implemented a testing framework using pytest with coverage reporting and integrated it with Codecov.
  • Added documentation for setting up a Slurm environment for worker management.
  • Created a shell script for setting up the Slurm environment.
  • Added a test case for the Processes API view.
  • Updated the README with instructions for setting up the Slurm environment.
  • Added pytest and related packages to the requirements.txt file.
  • Configured Django REST Framework for testing.

… and documentation

This commit introduces several new features and improvements:

- Added a CI/CD pipeline using GitHub Actions to build and push Docker images to Docker Hub.
- Implemented a testing framework using pytest with coverage reporting and integrated it with Codecov.
- Added documentation for setting up a Slurm environment for worker management.
- Created a shell script for setting up the Slurm environment.
- Added a test case for the Processes API view.
- Updated the README with instructions for setting up the Slurm environment.
- Added pytest and related packages to the requirements.txt file.
- Configured Django REST Framework for testing.
This commit enhances the development environment by configuring Docker and the Devcontainer for improved development workflows.

- Updates the .devcontainer/Dockerfile to install Docker CE, configure the Docker socket, and clean up unnecessary files.
- Modifies the backend/Dockerfile to create a /logs directory and adjust permissions.
- Updates the .devcontainer/devcontainer.json to mount the Docker socket and set the PYTHONPATH.
- Updates the .devcontainer/docker-compose.yml to mount the logs directory and add an extra host for Docker.
- Adds imports to backend/core/tests/test_processes.py
This commit includes enhancements to the testing framework and CI configurations.

- Adds a step to the CI workflow to create the /logs directory in the backend before running tests.
- Configures Django REST Framework to include MultiPartRenderer, JSONRenderer, and TemplateHTMLRenderer for testing.
- Removes unused imports from backend/core/tests/test_processes.py.
This commit addresses inconsistencies in the log directory configuration across different environments.

- Updates the `env.template` file to set `LOG_DIR` to `/tmp/logs`.
- Modifies `docker-compose-development.yml` to mount the logs directory to the `${LOG_DIR}` variable, ensuring it aligns with the environment variable.
- Updates the GitHub Actions test workflow to create the `/tmp/logs` directory instead of `/logs`.
- Removes the creation of the `/logs` directory in the `backend/Dockerfile` and updates permissions accordingly.

These changes ensure that the log directory is consistently configured across development, testing, and production environments, preventing potential issues related to log file access and storage.
This commit adds a step to the CI workflow to copy the `env.template` file to `.env`. This ensures that the environment variables are properly configured during testing.
…setup

This commit reverts the default log directory back to `/logs` in the production environment (`env.template`) and streamlines the test setup in the CI workflow.

The changes include:

- Reverting the `LOG_DIR` variable in `env.template` to `/logs` to align with the intended production configuration.
- Setting the default `LOG_DIR` in `backend/orchestration/settings.py` to `/tmp/logs` for development and testing.
- Removing the explicit copying of `env.template` to `.env` in the CI workflow, as environment variables should be set directly in the CI environment.
- Modifying the CI workflow to create the `/tmp/logs` directory, ensuring it aligns with the development and testing environment.
@crisingulani crisingulani merged commit 4dcebc8 into main May 29, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant