blob: 4751b6a18f8adfec0e37ef26440c96bf97a491d0 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
version: "3"
tasks:
user:
silent: true
desc: get user
cmds:
- wsk property get | awk '/whisk namespace/{print $3}'
apihost:
silent: true
desc: get apihost
cmds:
- wsk property get | awk '/whisk API host/{print $4}'
detect:
silent: true
desc: detect project in directory
env:
PACKAGES_PATH:
sh: |
P=$($OPS -opspath ./packages)
if [ ! -z {{._path_}} ]; then
P=$($OPS -opspath {{._path_}}/packages)
fi
echo $P
WEB_PATH:
sh: |
P=$($OPS -opspath ./web)
if [ ! -z {{._path_}} ]; then
P=$(opspath {{._path_}}/web)
fi
echo $P
cmds:
- |
if [ -d "$PACKAGES_PATH" ] && [ -d "$WEB_PATH" ]; then
echo "Packages directory: [OK]"
echo "Web directory : [OK]"
exit 0
fi
if [ ! -d "$WEB_PATH" ]; then
echo "Packages directory: [MISSING]"
exit 1
fi
if [ ! -d "$PACKAGES_PATH" ]; then
echo "Packages directory: [MISSING]"
exit 1
fi
die "No project detected (missing packages and web directory)."
#scan:
# silent: true
# desc: scan directory and generate nuvolaris manifest files
# cmds:
# - task: detect
# - |
# if [ -f "$SCAN_PATH/packages/manifest.yaml" ]; then
# if {{.__force}}
# then
# rm $SCAN_PATH/packages/manifest.yaml
# bun scanner.js $SCAN_PATH
# bun $OPS_TMP/manifest.yaml $SCAN_PATH/packages/manifest.yaml
# echo "Manifest file overwritten in $SCAN_PATH/packages/manifest.yaml"
# else
# echo "Scan skipped: manifest file present (packages/manifest.yaml). Use --force to overwrite it.";
# fi
# else
# bun scanner.js $SCAN_PATH
# fi
# env:
# SCAN_PATH:
# sh: |
# P=$(realpath ./)
# if [ ! -z {{._path_}} ]; then
# P=$(realpath {{._path_}})
# fi
# echo $P
#
#deploy:
# silent: true
# desc: deploy nuvolaris projects
# dir: $DEPLOY_PATH
# cmds:
# - |
# if [[ "{{._repo_or_path_}}" == https://* ]]; then
# echo "Detected 'https://' prefix, cloning repository..."
# git clone {{._repo_or_path_}} $DEPLOY_PATH
# fi
# - echo "Scanning project..."
# - nuv devel scan $DEPLOY_PATH
# - echo "Deploying project..."
# - nuv project deploy $DEPLOY_PATH
# env:
# DEPLOY_PATH:
# sh: |
# P=$(realpath ./)
# if [[ "{{._repo_or_path_}}" == https://* ]]; then
# # Extract repository name from URL and remove .git suffix
# REPO_NAME=$(basename "{{._repo_or_path_}}")
# REPO_NAME=$(echo "$REPO_NAME" | awk -F\. '{print $1}')
# P=$(realpath $REPO_NAME)
# else
# if [ ! -z {{._repo_or_path_}} ]; then
# P=$(realpath {{._repo_or_path_}})
# fi
# fi
# echo $P