Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
csst-pipeline
csst_common
Commits
2066f68d
Commit
2066f68d
authored
Aug 05, 2025
by
BO ZHANG
🏀
Browse files
automatically set image and build
parent
3d31541c
Pipeline
#10185
passed with stage
Changes
1
Pipelines
2
Hide whitespace changes
Inline
Side-by-side
csst_common/io.py
View file @
2066f68d
...
@@ -39,8 +39,6 @@ REQUIRED_KEYS_IN_META = dict(
...
@@ -39,8 +39,6 @@ REQUIRED_KEYS_IN_META = dict(
qc_status
=-
1024
,
qc_status
=-
1024
,
dag
=
"__dag__"
,
dag
=
"__dag__"
,
dag_run
=
"__dag_run__"
,
dag_run
=
"__dag_run__"
,
image
=
"__image__"
,
build
=
"__build__"
,
pmapname
=
"__pmapname__"
,
pmapname
=
"__pmapname__"
,
ref_cat
=
"__ref_cat__"
,
ref_cat
=
"__ref_cat__"
,
# 额外的观测筛选参数
# 额外的观测筛选参数
...
@@ -49,6 +47,9 @@ REQUIRED_KEYS_IN_META = dict(
...
@@ -49,6 +47,9 @@ REQUIRED_KEYS_IN_META = dict(
filter
=
"__filter__"
,
filter
=
"__filter__"
,
ra
=-
3.141592653589793
,
ra
=-
3.141592653589793
,
dec
=-
3.141592653589793
,
dec
=-
3.141592653589793
,
# Docker镜像名称和版本
docker_image
=
"__docker_image__"
,
# 自动设置
build
=
"__build__"
,
# 自动设置
)
)
...
@@ -66,7 +67,9 @@ def generate_meta(**kwargs) -> fits.Header:
...
@@ -66,7 +67,9 @@ def generate_meta(**kwargs) -> fits.Header:
fits.Header
fits.Header
Meta data header.
Meta data header.
"""
"""
# copy REQUIRED_KEYS_IN_META
meta
=
deepcopy
(
REQUIRED_KEYS_IN_META
)
meta
=
deepcopy
(
REQUIRED_KEYS_IN_META
)
# update meta with kwargs
for
k
in
kwargs
.
keys
():
for
k
in
kwargs
.
keys
():
if
k
in
meta
.
keys
():
if
k
in
meta
.
keys
():
# 类型必须兼容
# 类型必须兼容
...
@@ -77,6 +80,10 @@ def generate_meta(**kwargs) -> fits.Header:
...
@@ -77,6 +80,10 @@ def generate_meta(**kwargs) -> fits.Header:
meta
[
k
]
=
kwargs
[
k
]
meta
[
k
]
=
kwargs
[
k
]
else
:
else
:
raise
KeyError
(
f
"未知的meta参数:
{
k
}
"
)
raise
KeyError
(
f
"未知的meta参数:
{
k
}
"
)
# automatically set docker_image and build
meta
[
"docker_image"
]
=
os
.
getenv
(
"PIPELINE_ID"
,
default
=
"__docker_image__"
)
meta
[
"build"
]
=
os
.
getenv
(
"BUILD"
,
default
=
"__build__"
)
# convert meta to fits header
meta_card
=
fits
.
Card
(
meta_card
=
fits
.
Card
(
keyword
=
"META"
,
keyword
=
"META"
,
value
=
json
.
dumps
(
meta
,
separators
=
(
","
,
":"
),
ensure_ascii
=
False
),
value
=
json
.
dumps
(
meta
,
separators
=
(
","
,
":"
),
ensure_ascii
=
False
),
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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