Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
csst
Scalebox Apps
Commits
9aec4a79
Commit
9aec4a79
authored
Feb 12, 2026
by
Zhang Xiaoli
Browse files
add pipeline csst-msc-l1-ast-sso-element
parent
ebbcfe7c
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
140 additions
and
0 deletions
+140
-0
L1/dockerfiles/csst-msc-l1-ast-sso-element/Dockerfile
L1/dockerfiles/csst-msc-l1-ast-sso-element/Dockerfile
+29
-0
L1/dockerfiles/csst-msc-l1-ast-sso-element/Makefile
L1/dockerfiles/csst-msc-l1-ast-sso-element/Makefile
+35
-0
L1/dockerfiles/csst-msc-l1-ast-sso-element/config.env
L1/dockerfiles/csst-msc-l1-ast-sso-element/config.env
+6
-0
L1/dockerfiles/csst-msc-l1-ast-sso-element/run.sh
L1/dockerfiles/csst-msc-l1-ast-sso-element/run.sh
+70
-0
No files found.
L1/dockerfiles/csst-msc-l1-ast-sso-element/Dockerfile
0 → 100644
View file @
9aec4a79
ARG
HARBOR_PATH
ARG
MODULE_NAME
ARG
TAG
FROM
${HARBOR_PATH}/csst/${MODULE_NAME}:${TAG}
# FROM csu-harbor.csst.nao:10443/csst/csst-cpic-l1:latest
USER
root
# 安装jq
RUN
apt-get update
\
&&
apt-get
install
-y
--no-install-recommends
jq
\
&&
apt-get clean
\
&&
rm
-rf
/var/lib/apt/lists/
*
COPY
*.sh /app/bin/
RUN
chmod
+x /app/bin/
*
.sh
COPY
--from=hub.cstcloud.cn/scalebox/agent /usr/local /usr/local
RUN
mkdir
/work/
RUN
chown
-R
csst:csst /work
RUN
chown
-R
csst:csst /pipeline
WORKDIR
/work/
ENV
HARBOR_PATH=${HARBOR_PATH}
ENV
MODULE_NAME=${MODULE_NAME}
ENV
TAG=${TAG}
USER
csst
ENTRYPOINT
["goagent"]
L1/dockerfiles/csst-msc-l1-ast-sso-element/Makefile
0 → 100644
View file @
9aec4a79
-include
config.env
$(info
MODULE_NAME
=
$(MODULE_NAME)
)
$(info
HARBOR_PATH
=
$(HARBOR_PATH)
)
$(info
SINK_MODULE
=
$(SINK_MODULE)
)
# $(info TAG = $(TAG))
IMAGE_NAME
:=
$(HARBOR_PATH)
/cnic/
$(MODULE_NAME)
TAG
?=
latest
all
:
build push dist
build
:
docker pull
$(HARBOR_PATH)
/csst/
$(MODULE_NAME)
:
$(TAG)
docker build
--network
=
host
\
--build-arg
MODULE_NAME
=
$(MODULE_NAME)
\
--build-arg
HARBOR_PATH
=
$(HARBOR_PATH)
\
--build-arg
TAG
=
$(TAG)
\
-t
$(IMAGE_NAME)
.
push
:
docker push
$(IMAGE_NAME)
dist
:
ssh sc1 docker pull
$(IMAGE_NAME)
ssh sc2 docker pull
$(IMAGE_NAME)
ssh sc3 docker pull
$(IMAGE_NAME)
run
:
docker run
-it
\
-e
MODULE_NAME
=
${MODULE_NAME}
\
-e
HARBOR_PATH
=
${HARBOR_PATH}
\
-e
TAG
=
${TAG}
\
-e
SINK_MODULE
=
${SINK_MODULE}
\
--entrypoint
bash
\
${IMAGE_NAME}
down
:
docker stop
$(IMAGE_NAME)
\ No newline at end of file
L1/dockerfiles/csst-msc-l1-ast-sso-element/config.env
0 → 100644
View file @
9aec4a79
MODULE_NAME=csst-msc-l1-ast-sso-element
HARBOR_PATH=csu-harbor.csst.nao:10443
# SINK_MODULE=0: no sink module; SINK_MODULE=1 : has sink module
SINK_MODULE=0
L1/dockerfiles/csst-msc-l1-ast-sso-element/run.sh
0 → 100644
View file @
9aec4a79
#!/bin/bash
message
=
$1
echo
"message: "
$message
headers
=
$(
echo
"
$2
"
|
sed
's/\\//g'
)
echo
"
$headers
"
| jq
'.'
echo
"headers:
$headers
"
has_data_list
=
$(
echo
"
$headers
"
| jq
'has("data_list")'
)
if
[
"
$has_data_list
"
=
"true"
]
;
then
# 提取 data_list 字段的值
data_list
=
$(
echo
"
$headers
"
| jq
-r
'.data_list'
)
fixed_data_list
=
$(
echo
"
$data_list
"
|
sed
's/\([a-f0-9]\{24\}\)/"\1"/g'
)
# 将 data_list 重新插入回 message
message
=
$(
echo
"
$message
"
| jq
--argjson
dl
"
$fixed_data_list
"
'. + {data_list: $dl}'
)
message
=
$(
echo
"
$message
"
| jq
-c
'.'
)
fi
cd
/pipeline/output/
run
-p
$message
exit_code
=
$?
echo
"=====pipeline.log===="
>
/work/custom-out.txt
cat
/pipeline/output/pipeline.log
>>
/work/custom-out.txt
timefile
=
/pipeline/output/timestamp.txt
if
test
-f
"
$timefile
"
;
then
echo
"
$timefile
exist"
mv
/pipeline/output/timestamp.txt /work/timestamps.txt
fi
rm
-rf
/pipeline/input/
*
/pipeline/output/
*
headers
=
$2
pattern
=
'"dag_run_id":"([^"]+)"'
if
[[
$headers
=
~
$pattern
]]
;
then
dag_run_id
=
"
${
BASH_REMATCH
[1]
}
"
echo
"dag_run_id:
$dag_run_id
"
else
# no dag_run_id in json
dag_run_id
=
""
fi
echo
"dag_run_id:
$dag_run_id
"
>>
/work/extra-attributes.txt
if
[
$exit_code
-eq
0
]
;
then
# 判断是否有后续模块,有后续模块,则下发给后续模块任务
if
[
"
${
SINK_MODULE
:-
0
}
"
=
"1"
]
;
then
# if [ "$SINK_MODULE" = "1" ]; then
if
[
"
$has_data_list
"
=
"true"
]
;
then
# 提取 data_list 字段的值
strdatalist
=
$(
echo
"
$fixed_data_list
"
|
tr
-d
'[:space:]'
)
scalebox task add
--header
sorted_tag
=
${
sorted_tag
}
--header
dag_run_id
=
${
dag_run_id
}
--header
data_list
=
${
strdatalist
}
--header
repeatable
=
yes
--upsert
$1
else
scalebox task add
--header
sorted_tag
=
${
sorted_tag
}
--header
dag_run_id
=
${
dag_run_id
}
--header
repeatable
=
yes
--upsert
${
message
}
fi
echo
"finish
${
MODULE_NAME
}
, start sink-job."
else
#没有后续模块直接结束
echo
"finish
${
MODULE_NAME
}
."
exit
$exit_code
fi
else
echo
"finish
${
MODULE_NAME
}
, exit_code:
$exit_code
"
fi
exit
$exit_code
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment