Skip to content

Commit

Permalink
Merge branch 'KusionStack:main' into feat_codespace
Browse files Browse the repository at this point in the history
  • Loading branch information
niconical committed Jun 7, 2023
2 parents 83e3b4a + fad89c4 commit 916c5e7
Show file tree
Hide file tree
Showing 15 changed files with 100 additions and 68 deletions.
15 changes: 4 additions & 11 deletions internal/scripts/cli/kcl
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,10 @@
set -e

# kclvm_cli path
kclvm_cli_bin=`which kclvm_cli`
kclvm_install_dir=$(cd `dirname $0`/..; pwd)

# check kclvm_cli
if [ -z "$kclvm_cli_bin" ]; then
echo "kclvm cli not found!"
exit 1
fi

export PYTHONPATH=$kclvm_install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$kclvm_install_dir/bin
install_dir=$(cd `dirname $0`/..; pwd)
export PYTHONPATH=$install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$install_dir/bin
kclvm_cli_bin=$install_dir/bin/kclvm_cli
# Only for v0.4.x, all CLIs will be unified after v0.5.x
case $1 in
"version" | "--version" | "-v" | "-V")
Expand Down
15 changes: 4 additions & 11 deletions internal/scripts/cli/kcl-fmt
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,8 @@
set -e

# kclvm_cli path
kclvm_cli_bin=`which kclvm_cli`
kclvm_install_dir=$(cd `dirname $0`/..; pwd)

# check kclvm_cli
if [ -z "$kclvm_cli_bin" ]; then
echo "kclvm cli not found!"
exit 1
fi

export PYTHONPATH=$kclvm_install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$kclvm_install_dir/bin
install_dir=$(cd `dirname $0`/..; pwd)
export PYTHONPATH=$install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$install_dir/bin
kclvm_cli_bin=$install_dir/bin/kclvm_cli
$kclvm_cli_bin fmt "$@"
15 changes: 4 additions & 11 deletions internal/scripts/cli/kcl-lint
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,8 @@
set -e

# kclvm_cli path
kclvm_cli_bin=`which kclvm_cli`
kclvm_install_dir=$(cd `dirname $0`/..; pwd)

# check kclvm_cli
if [ -z "$kclvm_cli_bin" ]; then
echo "kclvm cli not found!"
exit 1
fi

export PYTHONPATH=$kclvm_install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$kclvm_install_dir/bin
install_dir=$(cd `dirname $0`/..; pwd)
export PYTHONPATH=$install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$install_dir/bin
kclvm_cli_bin=$install_dir/bin/kclvm_cli
$kclvm_cli_bin lint "$@"
15 changes: 4 additions & 11 deletions internal/scripts/cli/kcl-vet
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,8 @@
set -e

# kclvm_cli path
kclvm_cli_bin=`which kclvm_cli`
kclvm_install_dir=$(cd `dirname $0`/..; pwd)

# check kclvm_cli
if [ -z "$kclvm_cli_bin" ]; then
echo "kclvm cli not found!"
exit 1
fi

export PYTHONPATH=$kclvm_install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$kclvm_install_dir/bin
install_dir=$(cd `dirname $0`/..; pwd)
export PYTHONPATH=$install_dir/lib/site-packages
export KCLVM_CLI_BIN_PATH=$install_dir/bin
kclvm_cli_bin=$install_dir/bin/kclvm_cli
$kclvm_cli_bin vet "$@"
9 changes: 9 additions & 0 deletions internal/scripts/python-plugin/release.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
#!/usr/bin/env bash

topdir=$PWD
# Environment
if [ -f "/etc/os-release" ]; then
source /etc/os-release
os=$ID
else
os=$(uname)
fi

release_file="kclvm-$os-latest.tar.gz"
release_path="$topdir/_build"
package_dir="$topdir/_build/python_dist/$os"
Expand Down
9 changes: 9 additions & 0 deletions internal/spec/gpyrpc/gpyrpc.proto
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,12 @@ import "google/protobuf/descriptor.proto";

// ----------------------------------------------------------------------------

// kcl main.k -E pkg_name=pkg_path
message CmdExternalPkgSpec {
string pkg_name = 1;
string pkg_path = 2;
}

// kcl main.k -D name=value
message CmdArgSpec {
string name = 1;
Expand Down Expand Up @@ -140,6 +146,9 @@ message ExecProgram_Args {
bool sort_keys = 12;
// include schema type path in JSON/YAML result
bool include_schema_type_path = 13;

// -E --external : external packages path
repeated CmdExternalPkgSpec external_pkgs = 14;
}
message ExecProgram_Result {
string json_result = 1;
Expand Down
10 changes: 10 additions & 0 deletions kclvm/api/src/capi_test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,16 @@ fn test_c_api_call_exec_program() {
);
}

#[test]
fn test_c_api_call_exec_program_with_external_pkg() {
test_c_api::<ExecProgramArgs, ExecProgramResult, _>(
"KclvmService.ExecProgram",
"exec-program-with-external-pkg.json",
"exec-program-with-external-pkg.response.json",
|res| res.escaped_time = "0".to_owned(),
);
}

#[test]
fn test_c_api_call_override_file() {
test_c_api_without_wrapper::<OverrideFileArgs, OverrideFileResult>(
Expand Down
12 changes: 12 additions & 0 deletions kclvm/api/src/testdata/exec-program-with-external-pkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"work_dir" : "./src/testdata",
"k_filename_list":[
"hello_import.k"
],
"external_pkgs": [
{
"pkg_name": "external",
"pkg_path": "./src/testdata/external"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"json_result": "[{\"a\": \"Hello External World!\"}]",
"yaml_result": "a: Hello External World!",
"escaped_time": "0.002061128616333008"
}
6 changes: 6 additions & 0 deletions kclvm/api/src/testdata/external/kcl.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[package]
name = "external"
edition = "0.0.1"
version = "0.0.1"

[dependencies]
1 change: 1 addition & 0 deletions kclvm/api/src/testdata/external/main.k
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
a = 'Hello External World!'
2 changes: 2 additions & 0 deletions kclvm/api/src/testdata/hello_import.k
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
import external as ext
a = ext.a
30 changes: 18 additions & 12 deletions scripts/docker/kclvm-builder-centos8/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -41,25 +41,31 @@ RUN yum -y install llvm-devel
RUN yum -y install libffi-devel
RUN ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so

# Go 1.6
RUN yum -y install golang
RUN go version
# golang 1.19+
RUN mkdir -p /root/download && cd /root/download \
&& wget https://dl.google.com/go/go1.20.5.linux-amd64.tar.gz \
&& tar -zxvf go1.20.5.linux-amd64.tar.gz \
&& mv ./go /usr/local/go1.20.5
RUN ln -sf /usr/local/go1.20.5/bin/go /usr/bin/go
RUN rm -rf /root/download

# /usr/lib64/python3.9
RUN yum -y install python39-devel
RUN python3 -m pip install pytest
ENV GOPATH=/go
ENV GOLANG_VERSION=1.20.5

# golang apps
RUN go get golang.org/x/lint/golint
RUN go get golang.org/x/tools/cmd/goimports
#RUN go get honnef.co/go/tools/cmd/...
RUN go install golang.org/x/lint/golint@latest
RUN go install golang.org/x/tools/cmd/goimports@latest
# RUN go install honnef.co/go/tools/cmd/...@latest

RUN go get github.com/t-yuki/gocover-cobertura
RUN go get github.com/jstemmer/go-junit-report
RUN go install github.com/t-yuki/gocover-cobertura@latest
RUN go install github.com/jstemmer/go-junit-report@latest

RUN rm -rf /go/pkg/mod
RUN rm -rf /go/pkg/sumdb

# /usr/lib64/python3.9
RUN yum -y install python39-devel
RUN python3 -m pip install pytest

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone

Expand Down
2 changes: 1 addition & 1 deletion scripts/docker/kclvm-builder-centos8/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,6 @@ publish-builder:
@echo "push ${BUILDER_IMAGE} ok"

sh-in-builder:
${RUN_IN_DOCKER} -v ${PWD}/../..:/root/kclvm -w /root ${BUILDER_IMAGE} bash
${RUN_IN_DOCKER} -v ${PWD}/../../..:/root/kclvm -w /root ${BUILDER_IMAGE} bash

clean:
22 changes: 11 additions & 11 deletions scripts/docker/kclvm-builder/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -43,23 +43,23 @@ RUN apt-get install -y clang-12 lld-12
RUN ln -sf /usr/bin/clang-12 /usr/bin/clang
RUN ln -sf /usr/bin/wasm-ld-12 /usr/bin/wasm-ld

# golang 1.17+
# golang 1.19+
RUN mkdir -p /root/download && cd /root/download \
&& wget https://dl.google.com/go/go1.17.3.linux-amd64.tar.gz \
&& tar -zxvf go1.17.3.linux-amd64.tar.gz \
&& mv ./go /usr/local/go1.17.3
RUN ln -sf /usr/local/go1.17.3/bin/go /usr/bin/go
&& wget https://dl.google.com/go/go1.20.5.linux-amd64.tar.gz \
&& tar -zxvf go1.20.5.linux-amd64.tar.gz \
&& mv ./go /usr/local/go1.20.5
RUN ln -sf /usr/local/go1.20.5/bin/go /usr/bin/go
RUN rm -rf /root/download

ENV GOPATH=/go
ENV GOLANG_VERSION=1.17.3
ENV GOLANG_VERSION=1.20.5

RUN go get golang.org/x/lint/golint
RUN go get golang.org/x/tools/cmd/goimports
RUN go get honnef.co/go/tools/cmd/...
RUN go install golang.org/x/lint/golint@latest
RUN go install golang.org/x/tools/cmd/goimports@latest
RUN go install honnef.co/go/tools/cmd/...@latest

RUN go get github.com/t-yuki/gocover-cobertura
RUN go get github.com/jstemmer/go-junit-report
RUN go install github.com/t-yuki/gocover-cobertura@latest
RUN go install github.com/jstemmer/go-junit-report@latest

RUN rm -rf /go/pkg/mod
RUN rm -rf /go/pkg/sumdb
Expand Down

0 comments on commit 916c5e7

Please sign in to comment.