From 1973bdb0f4915994a66e9aee254bf27234d9e7a7 Mon Sep 17 00:00:00 2001
From: Daniel Bara
Date: Wed, 21 Feb 2024 19:38:10 +0000
Subject: [PATCH 1/3] Add devcontainer template
---
.devcontainer/devcontainer.metadata_template | 12 ------------
.devcontainer/devcontainer_template.json | 20 ++++++++++++++++++++
.devcontainer/post_create.sh | 6 ------
.gitignore | 2 +-
README.md | 3 +++
setup/setup.bat | 8 ++++++++
setup/setup.sh | 8 +++++++-
7 files changed, 39 insertions(+), 20 deletions(-)
delete mode 100644 .devcontainer/devcontainer.metadata_template
create mode 100644 .devcontainer/devcontainer_template.json
create mode 100644 setup/setup.bat
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
index 9f4546fa..99f8842f 100644
--- a/setup/setup.sh
+++ b/setup/setup.sh
@@ -1 +1,7 @@
-./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
+
From 96be3d61159fb61602628614d760da0ac5f1a1dd Mon Sep 17 00:00:00 2001
From: Daniel Bara
Date: Wed, 21 Feb 2024 19:43:54 +0000
Subject: [PATCH 2/3] Remove extra newline
---
setup/setup.sh | 1 -
1 file changed, 1 deletion(-)
diff --git a/setup/setup.sh b/setup/setup.sh
index 99f8842f..6439b8b6 100644
--- a/setup/setup.sh
+++ b/setup/setup.sh
@@ -4,4 +4,3 @@ if [ -f "$(dirname "$0")/../.devcontainer/devcontainer.json" ]; then
fi
cp "$(dirname "$0")/../.devcontainer/devcontainer_template.json" "$(dirname "$0")/../.devcontainer/devcontainer.json"
echo "devcontainer.json" created
-
From bb987b01894404e7af018863f8a40411461f9036 Mon Sep 17 00:00:00 2001
From: Daniel Bara <29439900+daniel-bara@users.noreply.github.com>
Date: Wed, 21 Feb 2024 19:48:20 +0000
Subject: [PATCH 3/3] chmod +x
---
setup/setup.sh | 0
1 file changed, 0 insertions(+), 0 deletions(-)
mode change 100644 => 100755 setup/setup.sh
diff --git a/setup/setup.sh b/setup/setup.sh
old mode 100644
new mode 100755