#!/bin/bash NGX_NAME="${NGX_NAME:-admin}" NGX_PASS="${NGX_PASS:-admin}" CRYPTPASS=`openssl passwd -apr1 ${NGX_PASS}` PORT="${PORT:-8080}" echo "USERNAME:" $NGX_NAME echo "PASSWORD:" $NGX_PASS echo "${NGX_NAME}:${CRYPTPASS}" > ngpasswd COMMIT=$(cat /app/openvscode-server/product.json | awk '/commit/{print $4;exit}' FS='[""]') sed -i "s/#COMMIT#/$COMMIT/" nginx.conf sed -i "s/#PORT#/$PORT/" nginx.conf set +e if [[ ! -z "$REPOS" ]]; then for REPO in $(echo $REPOS | tr ";" "\n") do dir=$(basename "$REPO" .git) echo start to clone initial repo $REPO into $dir git clone --progress $REPO $dir cd $dir [[ -z $(git config user.name) ]] && git config --global user.name "$(git log -1 --pretty=format:'%an')" [[ -z $(git config user.email) ]] && git config --global user.email "$(git log -1 --pretty=format:'%ae')" if [[ -e requirements.txt ]]; then pip install --no-cache-dir --upgrade -r requirements.txt fi if [[ -e package.json ]]; then npm i npm run build fi if [[ -e ecosystem.config.js ]]; then echo use pm2 start pm2 start ecosystem.config.js fi cd .. done fi [[ -z $(git config --global user.name) ]] && git config --global user.name "$SPACE_AUTHOR_NAME" [[ -z $(git config --global user.email) ]] && git config --global user.email "$SPACE_AUTHOR_NAME@hf.co" git config --global http.postBuffer 524288000 git config --global push.default current echo "Starting VSCode Server..." vscode=/app/openvscode-server/bin/openvscode-server vscode_cli=/app/openvscode-server/bin/remote-cli/openvscode-server $vscode --install-extension ms-toolsai.jupyter $vscode --install-extension ms-python.python ln -s $vscode_cli $(dirname $vscode_cli)/code tslab install --prefix /home/user/miniconda/ set -e pm2 start ./auto-commit.js nginx -c $PWD/nginx.conf exec $vscode --host 0.0.0.0 --port 5050 --without-connection-token \"${@}\" --