This is an automated email from the ASF dual-hosted git repository.

sciabarracom pushed a commit to branch 0.9.0
in repository 
https://gitbox.apache.org/repos/asf/openserverless-devcontainer.git

commit dbab8aab00182c57f79bf8fa7beee150cfef3c98
Author: Michele Sciabarra <[email protected]>
AuthorDate: Sat Sep 12 09:14:06 2026 +0200

    cleanup devcontainer
---
 Dockerfile   | 21 ++++++++++-----------
 Taskfile.yml | 13 ++++++++++++-
 start.sh     | 19 ++++---------------
 3 files changed, 26 insertions(+), 27 deletions(-)

diff --git a/Dockerfile b/Dockerfile
index 8f7d7a5..9b19f7d 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -15,7 +15,11 @@
 # specific language governing permissions and limitations
 # under the License.
 
+FROM golang:1.27 AS builder
+RUN go install github.com/apache/openserverless-cli/cmd/[email protected]
+
 FROM node:22
+COPY --from=builder /go/bin/ops /usr/local/bin/ops
 
 ARG DEVCONTAINER_IMAGE_DEFAULT=docker.io/apache/openserverless-devcontainer
 ARG DEVCONTAINER_TAG_DEFAULT=latest
@@ -25,7 +29,8 @@ RUN \
     curl -sSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add 
- && \
     apt update && \
     apt install -y less sudo jq nano python-is-python3 python3-virtualenv \
-    locales postgresql-client-16 openssh-server tini supervisor
+    locales postgresql-client-16 openssh-server tini supervisor && \
+    rm  -rf /var/lib/apt/lists/*
 
 # setup env
 RUN \
@@ -34,21 +39,15 @@ RUN \
     locale-gen en_US.UTF-8 && \
     update-locale ANG=en_US.UTF-8 LANGUAGE=en_US.UTF-8 LC_ALL=en_US.UTF-8
 
-RUN userdel node ; rm -Rvf /home/node
-ENV HOME=/home
-ENV OPS_HOME=/home
-ENV OPS_BRANCH=main
+ENV HOME=/home/openserverless
 ENV PATH=/home/.local/bin:/usr/local/bin:/usr/bin:/bin
-RUN printf "OPS_HOME=$OPS_HOME\nOPS_BRANCH=$OPS_BRANCH\nPATH=$PATH\n" 
>/etc/environment
-RUN \
-    curl -sL 
https://raw.githubusercontent.com/apache/openserverless-cli/refs/heads/main/install.sh
 | bash ;\
-    ops -t
+RUN /usr/local/bin/ops -t
 
 ADD supervisord.ini /etc/supervisord.ini
 ADD start.sh /usr/local/bin/start.sh
 
-RUN mkdir /home/workspace
-WORKDIR /home/workspace
+RUN mkdir -p /home/openserverless
+WORKDIR /home/openserverless
 # Apache release metadata (see DISCLAIMER, LICENSE, NOTICE, WARN)
 COPY DISCLAIMER LICENSE NOTICE /
 
diff --git a/Taskfile.yml b/Taskfile.yml
index 9822499..44ba1a8 100644
--- a/Taskfile.yml
+++ b/Taskfile.yml
@@ -165,4 +165,15 @@ tasks:
   license:
     desc: check license
     cmds:
-    - license-eye header check
\ No newline at end of file
+    - license-eye header check
+
+  test:
+    desc: testing locally
+    vars:
+      KEY:
+        sh: echo $HOME/.ssh/id_rsa.pub
+    cmds:
+      - test -e {{.KEY}} || { echo 'missing {{.KEY}}' ; exit 1; }
+      - docker rm -f devcontainer
+      - docker run -d --name devcontainer -p 2222:2222 -e SSHKEY="$(cat 
{{.KEY}})" {{.DEVCONTAINER_IMAGE}}:{{.TAG}}
+      - echo "access devcontainer with ssh -p 2222 openserverless@localhost, 
terminate with docker rm devcontainer"
\ No newline at end of file
diff --git a/start.sh b/start.sh
index 16b6eae..a8d94ed 100755
--- a/start.sh
+++ b/start.sh
@@ -16,21 +16,17 @@
 # specific language governing permissions and limitations
 # under the License.
 
+export HOME=/home/openserverless
 
 #setup sshd
 mkdir -p /run/sshd
 ssh-keygen -A
 
-# update ops
-export HOME=/home
-export OPS_HOME=/home
-ops -update
-
 # setup user workspace
 if test -z "$USERID"
 then USERID=1000
 fi
-/usr/sbin/useradd -u "$USERID" -d $HOME -o -U -s /bin/bash devel
+/usr/sbin/useradd -u "$USERID" -d $HOME -o -U -s /bin/bash openserverless
 
 # add ssh key
 if test -n "$SSHKEY"
@@ -44,20 +40,13 @@ then
     chmod 700 $HOME/.ssh
 fi
 
-touch ~/.bashrc
+touch $HOME/.bashrc
 echo ARCH="$(dpkg --print-architecture)" >>~/.bashrc
 echo 'export PATH="$HOME/.local/bin:$HOME:$HOME/.ops/linux-$ARCH/bin:$PATH"' 
>>~/.bashrc
 
-if [ -n "$OPS_PASSWORD" ] && [ -n "$OPS_USER" ] && [ -n "$OPS_APIHOST" ]
-then
-    cd $HOME
-    echo -e 
"OPS_USER=$OPS_USER\nOPS_PASSWORD=$OPS_PASSWORD\nOPS_APIHOST=$OPS_APIHOST\n" 
>.env
-    ops ide login
-fi
-
 # fix permissions
 chmod 0755 $HOME
-chown -Rf "$USERID" /home
+chown -Rf "$USERID" $HOME
 
 # start supervisor
 supervisord -c /etc/supervisord.ini

Reply via email to