Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
喜羊羊3508
Dak
提交
be16c54b
D
Dak
项目概览
喜羊羊3508
/
Dak
10 个月 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Dak
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
be16c54b
编写于
7月 14, 2002
作者:
J
James Troup
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add parse_args and join_with_commas_and
上级
2d653829
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
75 addition
and
3 deletion
+75
-3
utils.py
utils.py
+75
-3
未找到文件。
utils.py
浏览文件 @
be16c54b
# Utility functions
# Copyright (C) 2000, 2001, 2002 James Troup <james@nocrew.org>
# $Id: utils.py,v 1.
49 2002-07-12 15:09:57
troup Exp $
# $Id: utils.py,v 1.
50 2002-07-14 15:01:04
troup Exp $
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
...
...
@@ -16,8 +16,13 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
import
commands
,
os
,
pwd
,
re
,
socket
,
shutil
,
string
,
sys
,
tempfile
import
apt_pkg
################################################################################
import
commands
,
os
,
pwd
,
re
,
socket
,
shutil
,
string
,
sys
,
tempfile
;
import
apt_pkg
;
import
db_access
;
################################################################################
re_comments
=
re
.
compile
(
r
"\#.*"
)
re_no_epoch
=
re
.
compile
(
r
"^\d*\:"
)
...
...
@@ -538,11 +543,78 @@ def real_arch(arch):
################################################################################
def
join_with_commas_and
(
list
):
if
len
(
list
)
==
0
:
return
"nothing"
;
if
len
(
list
)
==
1
:
return
list
[
0
];
return
string
.
join
(
list
[:
-
1
],
", "
)
+
" and "
+
list
[
-
1
];
################################################################################
def
get_conf
():
return
Cnf
;
################################################################################
# Handle -a, -c and -s arguments; returns them as SQL constraints
def
parse_args
(
Options
):
# Process suite
if
Options
[
"Suite"
]:
suite_ids_list
=
[];
for
suite
in
string
.
split
(
Options
[
"Suite"
]):
suite_id
=
db_access
.
get_suite_id
(
suite
);
if
suite_id
==
-
1
:
utils
.
warn
(
"suite '%s' not recognised."
%
(
suite
));
else
:
suite_ids_list
.
append
(
suite_id
);
if
suite_ids_list
:
con_suites
=
"AND su.id IN (%s)"
%
string
.
join
(
map
(
str
,
suite_ids_list
),
", "
);
else
:
fubar
(
"No valid suite given."
);
else
:
con_suites
=
""
;
# Process component
if
Options
[
"Component"
]:
component_ids_list
=
[];
for
component
in
string
.
split
(
Options
[
"Component"
]):
component_id
=
db_access
.
get_component_id
(
component
);
if
component_id
==
-
1
:
warn
(
"component '%s' not recognised."
%
(
component
));
else
:
component_ids_list
.
append
(
component_id
);
if
component_ids_list
:
con_components
=
"AND c.id IN (%s)"
%
string
.
join
(
map
(
str
,
component_ids_list
),
", "
);
else
:
fubar
(
"No valid component given."
);
else
:
con_components
=
""
;
# Process architecture
con_architectures
=
""
;
if
Options
[
"Architecture"
]:
arch_ids_list
=
[];
check_source
=
0
;
for
architecture
in
string
.
split
(
Options
[
"Architecture"
]):
if
architecture
==
"source"
:
check_source
=
1
;
else
:
architecture_id
=
db_access
.
get_architecture_id
(
architecture
);
if
architecture_id
==
-
1
:
warn
(
"architecture '%s' not recognised."
%
(
architecture
));
else
:
arch_ids_list
.
append
(
architecture_id
);
if
arch_ids_list
:
con_architectures
=
"AND a.id IN (%s)"
%
string
.
join
(
map
(
str
,
arch_ids_list
),
", "
);
else
:
if
not
check_source
:
fubar
(
"No valid architecture given."
);
else
:
check_source
=
1
;
return
(
con_suites
,
con_architectures
,
con_components
,
check_source
);
################################################################################
apt_pkg
.
init
()
Cnf
=
apt_pkg
.
newConfiguration
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录