Skip to content

Devcontainer #136

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 30 commits into from
Nov 26, 2024
Merged

Devcontainer #136

merged 30 commits into from
Nov 26, 2024

Conversation

antoinebou12
Copy link
Contributor

@antoinebou12 antoinebou12 commented Nov 12, 2024

Description

We are currently moving desks a lot in my research office and I want to develop in a dev container, so I can develop on the web.

image
image

This pull request introduces a comprehensive development environment setup for the IPCToolkit project. The changes include creating a Docker-based development container, configuring pre-commit hooks, and setting up CMake presets for various build configurations.

Development Environment Setup:

  • .devcontainer/Dockerfile: Added a Dockerfile to set up a development environment based on Ubuntu 22.04, including installing necessary dependencies, setting up a user with sudo privileges, and configuring tools like CMake, LLVM/Clang, and Python.
  • .devcontainer/devcontainer.json: Configured the development container with settings for C++, CMake, Python, and other tools, along with a list of recommended VSCode extensions and post-create commands.

Pre-commit Hooks:

Build Configuration:

  • CMakePresets.json: Introduced CMake presets for different build configurations, including release, debug, CUDA, SIMD, testing, Python bindings, and code coverage.

https://code.visualstudio.com/docs/devcontainers/containers

Fixes # (issue)

Type of change

Please delete options that are not relevant.

  • Enhancement (non-breaking change which improves existing functionality)

How Has This Been Tested?

  • Test in a GitHub codespace

Test Configuration:

  • OS and version: Github codespace
  • Compiler and version: Clang-18

Checklist:

  • I have followed the project style guide
  • My code follows the clang-format style guidelines of this project
  • I have performed a self-review of my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules

@antoinebou12 antoinebou12 changed the title Create Dockerfile devcontainer Devcontainer Nov 12, 2024
@antoinebou12 antoinebou12 marked this pull request as draft November 12, 2024 14:59
@zfergus
Copy link
Member

zfergus commented Nov 12, 2024

Looking good! Thanks for the PR. Mark it as "Ready for review" when you are done and I will take a more thorough look at the changes.

@antoinebou12 antoinebou12 marked this pull request as ready for review November 19, 2024 02:49
@zfergus zfergus enabled auto-merge (squash) November 23, 2024 06:15
@zfergus zfergus added the enhancement New feature or request label Nov 23, 2024
auto-merge was automatically disabled November 26, 2024 21:59

Head branch was pushed to by a user without write access

@zfergus zfergus merged commit e0b947c into ipc-sim:main Nov 26, 2024
antoinebou12 added a commit to ETSim/ipc-toolkit that referenced this pull request Dec 10, 2024
* Create Dockerfile devcontainer

* Create devcontainer.json

* Add files via upload

* Update pre-commit-config.yaml

* Update pre-commit-config.yaml

* Update devcontainer.json

* Update Dockerfile

* Update devcontainer.json

* Update Dockerfile

* Create CMakePresets.json

* Update CMakePresets.json

* Update Dockerfile

* Rename pre-commit-config.yaml to .pre-commit-config.yaml

* Update devcontainer.json

* Update devcontainer.json

* Update Dockerfile

* Update devcontainer.json

* Update Dockerfile

* Update Dockerfile

* Update Dockerfile

* Update Dockerfile

* Update Dockerfile

* Update Dockerfile

* Update devcontainer.json

* Update Dockerfile

* Update Dockerfile

* Update devcontainer.json

* Update .pre-commit-config.yaml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants