Move packages to proejct/pkg to follow go project folder structure convention (#1190)

This commit is contained in:
Ta-Ching Chen
2019-05-31 16:28:55 +08:00
committed by GitHub
parent 1c5fd92ad6
commit a0e9a39511
196 changed files with 1672 additions and 1716 deletions
+7 -10
View File
@@ -8,10 +8,7 @@
set -euo pipefail
ROOT_RELPATH=$(dirname $0)/..
pushd $ROOT_RELPATH
ROOT=$(pwd)
popd
ROOT=`realpath $(dirname $0)/..`
travis_fold_start() {
echo -e "travis_fold:start:$1\r\033[33;1m$2\033[0m"
@@ -60,7 +57,7 @@ build_and_push_pre_upgrade_check_image() {
image_tag=$1
travis_fold_start build_and_push_pre_upgrade_check_image $image_tag
docker build -t $image_tag -f $ROOT/preupgradechecks/Dockerfile.fission-preupgradechecks --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
docker build -t $image_tag -f $ROOT/cmd/preupgradechecks/Dockerfile.fission-preupgradechecks --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
gcloud_login
@@ -72,7 +69,7 @@ build_and_push_fission_bundle() {
image_tag=$1
travis_fold_start build_and_push_fission_bundle $image_tag
docker build -q -t $image_tag -f $ROOT/fission-bundle/Dockerfile.fission-bundle --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
docker build -q -t $image_tag -f $ROOT/cmd/fission-bundle/Dockerfile.fission-bundle --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
gcloud_login
@@ -84,7 +81,7 @@ build_and_push_fetcher() {
image_tag=$1
travis_fold_start build_and_push_fetcher $image_tag
docker build -q -t $image_tag -f $ROOT/environments/fetcher/cmd/Dockerfile.fission-fetcher --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
docker build -q -t $image_tag -f $ROOT/cmd/fetcher/Dockerfile.fission-fetcher --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
gcloud_login
@@ -97,7 +94,7 @@ build_and_push_builder() {
image_tag=$1
travis_fold_start build_and_push_builder $image_tag
docker build -q -t $image_tag -f $ROOT/builder/cmd/Dockerfile.fission-builder --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
docker build -q -t $image_tag -f $ROOT/cmd/builder/Dockerfile.fission-builder --build-arg GITCOMMIT=$(getGitCommit) --build-arg BUILDDATE=$(getDate) --build-arg BUILDVERSION=$(getVersion) .
gcloud_login
@@ -139,7 +136,7 @@ build_and_push_env_builder() {
build_fission_cli() {
travis_fold_start build_fission_cli "fission cli"
pushd $ROOT/fission
pushd $ROOT/cmd/fission-cli
go build .
popd
travis_fold_end build_fission_cli
@@ -158,7 +155,7 @@ set_environment() {
export FISSION_NATS_STREAMING_URL="http://defaultFissionAuthToken@$(kubectl -n $ns get svc nats-streaming -o jsonpath='{...ip}:{.spec.ports[0].port}')"
# set path to include cli
export PATH=$ROOT/fission:$PATH
export PATH=$ROOT/cmd/fission-cli:$PATH
}
generate_test_id() {
-16
View File
@@ -58,22 +58,6 @@ test_fnmessage() {
}
export -f test_fnmessage
waitBuild() {
log "Waiting for builder manager to finish the build"
set +e
while true; do
kubectl --namespace default get packages $1 -o jsonpath='{.status.buildstatus}'|grep succeeded
if [[ $? -eq 0 ]]; then
break
fi
log "Waiting for build to finish"
sleep 1
done
set -e
}
export -f waitBuild
cleanup() {
log "Cleaning up..."
clean_resource_by_id $TEST_ID
+1 -31
View File
@@ -29,36 +29,6 @@ checkFunctionResponse() {
echo $response | grep -i "a: 1 b: {c: 3, d: 4}"
}
waitBuild() {
log "Waiting for builder manager to finish the build"
while true; do
kubectl --namespace default get packages $1 -o jsonpath='{.status.buildstatus}'|grep succeeded
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
}
export -f waitBuild
waitEnvBuilder() {
env=$1
envRV=$(kubectl -n default get environments ${env} -o jsonpath='{.metadata.resourceVersion}')
log "Waiting for env builder to catch up"
while true; do
kubectl -n fission-builder get pod -l envName=${env},envResourceVersion=${envRV} \
-o jsonpath='{range .items[*]}{@.metadata.name}:{range @.status.conditions[*]}{@.type}={@.status};{end}{end}' | grep "Ready=True" | grep -i "$1"
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
}
export -f waitEnvBuilder
cleanup() {
log "Cleaning up..."
clean_resource_by_id $TEST_ID
@@ -74,7 +44,7 @@ fi
log "Creating python env"
fission env create --name $env --image $PYTHON_RUNTIME_IMAGE --builder $PYTHON_BUILDER_IMAGE
timeout 180s bash -c "waitEnvBuilder $env"
timeout 180s bash -c "wait_for_builder $env"
log "Creating source pacakage"
zip -jr $tmp_dir/demo-src-pkg.zip $ROOT/examples/python/sourcepkg/
@@ -26,39 +26,6 @@ env=go-$TEST_ID
fn_poolmgr=hello-go-poolmgr-$TEST_ID
fn_nd=hello-go-nd-$TEST_ID
wait_for_builder() {
env=$1
JSONPATH='{range .items[*]}{@.metadata.name}:{range @.status.conditions[*]}{@.type}={@.status};{end}{end}'
# wait for tiller ready
set +e
while true; do
kubectl --namespace fission-builder get pod -l envName=$env -o jsonpath="$JSONPATH" | grep "Ready=True"
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
set -e
}
waitBuild() {
log "Waiting for builder manager to finish the build"
set +e
while true; do
kubectl --namespace default get packages $1 -o jsonpath='{.status.buildstatus}'|grep succeeded
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
set -e
}
export -f wait_for_builder
export -f waitBuild
cd $ROOT/examples/go
log "Creating environment for Golang"
@@ -26,23 +26,6 @@ else
log "TEST_NOCLEANUP is set; not cleaning up test artifacts afterwards."
fi
test_pkg() {
echo "Checking package for valid response"
set +e
while true; do
response0=$(kubectl get -ndefault package $1 -o=jsonpath='{.status.buildstatus}')
echo $response0 | grep -i $2
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
set -e
}
export -f test_pkg
cd $ROOT/examples/jvm/java
log "Creating zip from source code"
@@ -51,12 +34,14 @@ zip -r $tmp_dir/java-src-pkg.zip *
log "Creating Java environment with Java Builder"
fission env create --name $env --image $JVM_RUNTIME_IMAGE --version 2 --keeparchive --builder $JVM_BUILDER_IMAGE
timeout 90 bash -c "wait_for_builder $env"
log "Creating package from the source archive"
pkg_name=`fission package create --sourcearchive $tmp_dir/java-src-pkg.zip --env $env|cut -d' ' -f 2|cut -d"'" -f 2`
log "Created package $pkg_name"
log "Checking the status of package"
timeout 400 bash -c "test_pkg $pkg_name 'succeeded'"
timeout 400 bash -c "waitBuild $pkg_name"
log "Creating pool manager & new deployment function for Java"
fission fn create --name $fn_n --pkg $pkg_name --env $env --entrypoint io.fission.HelloWorld --executortype newdeploy --minscale 1 --maxscale 1
+1 -33
View File
@@ -31,21 +31,6 @@ fn2=python-srcbuild2-$TEST_ID
fn4=python-deploy4-$TEST_ID
fn5=python-deploy5-$TEST_ID
waitBuild() {
log "Waiting for builder manager to finish the build"
while true; do
status=$(kubectl --namespace default get packages $1 -o jsonpath='{.status.buildstatus}')
if (echo $status | grep succeeded); then
break
else
log "status=$status Waiting for build to finish"
fi
sleep 1
done
}
export -f waitBuild
checkFunctionResponse() {
log "Doing an HTTP GET on the function's route"
response=$(curl --retry 5 http://$FISSION_ROUTER/$1)
@@ -55,23 +40,6 @@ checkFunctionResponse() {
echo $response | grep -i "$2"
}
waitEnvBuilder() {
env=$1
envRV=$(kubectl -n default get environments ${env} -o jsonpath='{.metadata.resourceVersion}')
log "Waiting for env builder to catch up"
while true; do
kubectl -n fission-builder get pod -l envName=${env},envResourceVersion=${envRV} \
-o jsonpath='{range .items[*]}{@.metadata.name}:{range @.status.conditions[*]}{@.type}={@.status};{end}{end}' | grep "Ready=True" | grep -i "$env"
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
}
export -f waitEnvBuilder
cleanup() {
log "Cleaning up..."
clean_resource_by_id $TEST_ID
@@ -87,7 +55,7 @@ fi
log "Creating python env"
fission env create --name $env --image $PYTHON_RUNTIME_IMAGE --builder $PYTHON_BUILDER_IMAGE
timeout 180s bash -c "waitEnvBuilder $env"
timeout 180s bash -c "wait_for_builder $env"
# 1) Multiple source files (multiple inputs, Using * expression, from a directory)
# Currently only * expression implemented as a test
pushd $ROOT/examples/python/
@@ -69,4 +69,4 @@ spec:
- path: "labels"
fieldRef:
fieldPath: metadata.labels
version: 1
version: 3
+41 -6
View File
@@ -18,14 +18,9 @@ clean_resource_by_id() {
KUBECTL="kubectl --namespace default"
set +e
crds=$($KUBECTL get crd | grep "fission.io" | awk '{print $1}')
crds="$crds configmaps secrets"
for crd in $crds; do
$KUBECTL get $crd -o name | grep $test_id | xargs --no-run-if-empty $KUBECTL delete
done
pkg_list=$(fission package list | grep $test_id | awk '{print $1}')
for pkg in $pkg_list; do
fission pkg info --name $pkg
fission package delete --name $pkg
done
@@ -33,6 +28,13 @@ clean_resource_by_id() {
for route in $route_list; do
fission route delete --name $route
done
crds=$($KUBECTL get crd | grep "fission.io" | awk '{print $1}')
crds="$crds configmaps secrets"
for crd in $crds; do
$KUBECTL get $crd -o name | grep $test_id | xargs --no-run-if-empty $KUBECTL delete
done
set -e
}
@@ -64,6 +66,39 @@ test_fn() {
}
export -f test_fn
wait_for_builder() {
env=$1
JSONPATH='{range .items[*]}{@.metadata.name}:{range @.status.conditions[*]}{@.type}={@.status};{end}{end}'
# wait for tiller ready
set +e
while true; do
kubectl --namespace fission-builder get pod -l envName=$env -o jsonpath="$JSONPATH" | grep "Ready=True"
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
set -e
}
export -f wait_for_builder
waitBuild() {
log "Waiting for builder manager to finish the build"
set +e
while true; do
kubectl --namespace default get packages $1 -o jsonpath='{.status.buildstatus}'|grep succeeded
if [[ $? -eq 0 ]]; then
break
fi
sleep 1
done
set -e
}
export -f waitBuild
## Common env parameters
export FISSION_NAMESPACE=${FISSION_NAMESPACE:-fission}
export FUNCTION_NAMESPACE=${FUNCTION_NAMESPACE:-fission-function}