Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
喜羊羊3508
Dak
提交
e9bf858b
D
Dak
项目概览
喜羊羊3508
/
Dak
12 个月 前同步成功
通知
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,发现更多精彩内容 >>
提交
e9bf858b
编写于
1月 08, 2011
作者:
T
Torsten Werner
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
copy_installer.py: implement main()
Signed-off-by:
N
Torsten Werner
<
twerner@debian.org
>
上级
c435e434
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
67 addition
and
1 deletion
+67
-1
dak/copy_installer.py
dak/copy_installer.py
+67
-1
未找到文件。
dak/copy_installer.py
100644 → 100755
浏览文件 @
e9bf858b
#!/usr/bin/env python
""" Copies the installer from one suite to another """
# Copyright (C) 2011 Torsten Werner <twerner@debian.org>
# 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
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
################################################################################
from
daklib.config
import
Config
import
glob
,
os
.
path
,
re
,
shutil
import
apt_pkg
,
glob
,
os
.
path
,
re
,
shutil
,
sys
def
usage
(
exit_code
=
0
):
print
"""Usage: dak copy-installer [OPTION]... VERSION
-h, --help show this help and exit
-s, --source source suite (defaults to unstable)
-d, --destination destination suite (defaults to testing)
-n, --no-action don't change anything
Exactly 1 version must be specified."""
sys
.
exit
(
exit_code
)
def
main
():
cnf
=
Config
()
Arguments
=
[
(
'h'
,
"help"
,
"Copy-Installer::Options::Help"
),
(
's'
,
"source"
,
"Copy-Installer::Options::Source"
,
"HasArg"
),
(
'd'
,
"destination"
,
"Copy-Installer::Options::Destination"
,
"HasArg"
),
(
'n'
,
"no-action"
,
"Copy-Installer::Options::No-Action"
),
]
for
option
in
[
"help"
,
"source"
,
"destination"
,
"no-action"
]:
if
not
cnf
.
has_key
(
"Copy-Installer::Options::%s"
%
(
option
)):
cnf
[
"Copy-Installer::Options::%s"
%
(
option
)]
=
""
extra_arguments
=
apt_pkg
.
ParseCommandLine
(
cnf
.
Cnf
,
Arguments
,
sys
.
argv
)
Options
=
cnf
.
SubTree
(
"Copy-Installer::Options"
)
if
Options
[
"Help"
]:
usage
()
if
len
(
extra_arguments
)
!=
1
:
usage
(
1
)
initializer
=
{
"version"
:
extra_arguments
[
0
]
}
if
Options
[
"Source"
]
!=
""
:
initializer
[
"source"
]
=
Options
[
"Source"
]
if
Options
[
"Destination"
]
!=
""
:
initializer
[
"dest"
]
=
Options
[
"Destination"
]
copier
=
InstallerCopier
(
**
initializer
)
print
copier
.
get_message
()
if
Options
[
"No-Action"
]:
print
'Do nothing because --no-action has been set.'
else
:
copier
.
do_copy
()
print
'Installer has been copied successfully.'
root_dir
=
Config
()[
'Dir::Root'
]
...
...
@@ -64,3 +126,7 @@ Architectures to skip: %(skip_arch_list)s""" % {
if
os
.
path
.
lexists
(
dest
):
os
.
unlink
(
dest
)
os
.
symlink
(
source
,
dest
)
if
__name__
==
'__main__'
:
main
()
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录