diff --git a/.devcontainer/devcontainer.metadata_template b/.devcontainer/devcontainer.metadata_template deleted file mode 100644 index 41b5aac2..00000000 --- a/.devcontainer/devcontainer.metadata_template +++ /dev/null @@ -1,12 +0,0 @@ -[{ - "customizations": { - "vscode": { - "settings": { - "remote.autoForwardPorts": false - }, - "extensions": [ - "ms-python.python" - ] - } - } -}] \ No newline at end of file diff --git a/.devcontainer/devcontainer_template.json b/.devcontainer/devcontainer_template.json new file mode 100644 index 00000000..5e93c8eb --- /dev/null +++ b/.devcontainer/devcontainer_template.json @@ -0,0 +1,20 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the +// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu +{ + "name": "Gryphon Dev Container", + "dockerComposeFile": "docker-compose.yml", + "service": "dev", + "workspaceFolder": "/root/gra", + "postCreateCommand": "/bin/bash -c '/root/gra/.devcontainer/post_create.sh'", + "postStartCommand": "/bin/bash -c '/root/gra/.devcontainer/post_start.sh'", + "customizations": { + "vscode": { + "settings": { + "remote.autoForwardPorts": false + }, + "extensions": [ + "ms-python.python" + ] + } + } +} diff --git a/.devcontainer/post_create.sh b/.devcontainer/post_create.sh index 39e1a470..4ab9f647 100755 --- a/.devcontainer/post_create.sh +++ b/.devcontainer/post_create.sh @@ -10,12 +10,6 @@ fi # echo -e "\e[36mSSH keys generated.\e[0m" # fi -# Create devcontainer.metadata from template if it doesn't exist -if [ ! -f ~/gra/.devcontainer/devcontainer.metadata ]; then - echo -e "\e[36mCreating devcontainer.metadata ...\e[0m" - cp ~/gra/.devcontainer/devcontainer.metadata_template ~/gra/.devcontainer/devcontainer.metadata -fi - source ~/convenience.sh -i setdevmaster cb diff --git a/.gitignore b/.gitignore index fb8cd3bd..49d733cc 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ .devcontainer/.ssh/known_hosts -.devcontainer/devcontainer.metadata +.devcontainer/devcontainer.json ros/gra_manager/scripts/states/__pycache__ *.pyc diff --git a/README.md b/README.md index ebb1cb2a..61d9ae27 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,8 @@ # Development +## Dev container setup +Run `./setup/setup.sh` on Linux or `./setup/setup.bat` on Windows to create a `devcontainer.json`. After this, you will be able to open the folder with the Dev containers extension. + ## MacOS On Mac, you may need to run `sudo chown -R $(whoami) ~/.docker` to allow docker to run without sudo. diff --git a/setup/setup.bat b/setup/setup.bat new file mode 100644 index 00000000..9dd3bc58 --- /dev/null +++ b/setup/setup.bat @@ -0,0 +1,8 @@ +@echo off +if exist "%~dp0\..\.devcontainer/devcontainer.json" ( + echo "devcontainer.json already exists" + exit 0 +) +copy "%~dp0..\.devcontainer\devcontainer_template.json" "%~dp0..\.devcontainer\devcontainer.json" +echo "devcontainer.json created" + diff --git a/setup/setup.sh b/setup/setup.sh old mode 100644 new mode 100755 index 9f4546fa..6439b8b6 --- a/setup/setup.sh +++ b/setup/setup.sh @@ -1 +1,6 @@ -./orbbec/orbbec_setup.sh \ No newline at end of file +if [ -f "$(dirname "$0")/../.devcontainer/devcontainer.json" ]; then + echo "devcontainer.json already exists" + exit 0 +fi +cp "$(dirname "$0")/../.devcontainer/devcontainer_template.json" "$(dirname "$0")/../.devcontainer/devcontainer.json" +echo "devcontainer.json" created