我正在我的公司中设置一些服务器配置,我们有一些内部存储库,通过bzr运行我需要得到的.我想使用puppet-vcsrepo将它们拉进来,我发现它有一种方法可以使用密钥文件来获得我们想要的东西.最好的方法是什么?
我可能会为我们每个人创建一个用户帐户,但我是否必须将我的私钥作为文件放入puppet然后将其转移?如何管理puppet中的密钥,以便我可以在不使用用户名和密码的情况下检出存储库ssh?
以下是信息的链接:https://github.com/puppetlabs/puppetlabs-vcsrepo/blob/master/README.BZR.markdown
它说用木偶管理密钥,但我无法找到我需要知道的东西才能正确管理密钥.
我有一个iOS Enterprise帐户.我将我的配置文件作为链接附加,并使用itms-services协议附加我的plist.我正在使用Apache2服务器运行Ubuntu 10.04 LTS.我已经将Mime类型添加到/etc/mimes.types.当我按照日志时,我可以看到配置被拉下来,没有问题,并且plist本身可以,但当我使用我的iPad下拉应用程序点击items-services协议链接时,它似乎没有让我下载它.它一直告诉我它无法连接到iOS弹出框内的URL.
我正在使用此链接(域名被删除):
<a href="itms-services://?action=download-manifest&url=https://server.com/apps/StockCountApp.plist">
Install Stock Count Application</a>
Run Code Online (Sandbox Code Playgroud)
这是我的plist:
?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>https://server.com/apps/StockCountApp.ipa</string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>com.server.StockCountApp</string>
<key>bundle-version</key>
<string>0.0.1</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>StockCount</string>
</dict>
</dict>
</array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
我可以使用https来获取plist,我可以使用plist内部的IPA链接也可以毫无问题地获得IPA,但是由于一些奇怪的原因我似乎无法使用itms协议获得IPA的iDevice.
有谁知道如何解决这个问题?
试图绕过Spec和Autospec之间的差异.他们似乎差不多.具体来说,如果你看看mock.patch装饰器.
有人可以解释什么时候使用哪个?
我正在寻找一种方法来写这样的东西:
code_that_should_not_be_run_again()
with rerun_code_that_may_fail():
another_method(x)
run_me_again_if_i_fail(y)
code_that_should_only_be_run_if_above_succeeds()
Run Code Online (Sandbox Code Playgroud)
上面的代码将运行该代码并捕获异常,如果它被捕获,则再次尝试运行该代码。这将是我想要的更长版本:
code_that_should_not_be_run_again()
try:
another_method(x)
run_me_again_if_i_fail(y)
catch Exception:
try:
another_method(x)
run_me_again_if_i_fail(y)
catch Exception:
raise Exception("Couldn't run")
code_that_should_only_be_run_if_above_succeeds()
Run Code Online (Sandbox Code Playgroud)
我在想我可能可以使用生成器,也许可以将产生的内容捕获到 lambda 中,然后以某种方式运行两次,但现在确定我如何编写这样的代码。
这在 Python 中可能吗?或者也许可以做类似的事情?
这是我迄今为止尝试过的:
from contextlib import contextmanager
@contextmanager
def run_code():
print 'will run'
try:
yield
except SomeException:
try:
yield
except SomeException:
raise SomeException('couldn't run')
Run Code Online (Sandbox Code Playgroud)
编辑Python 不会让你做我想做的事,所以你只能在函数上使用装饰器:(
python-2.7 ×2
bazaar ×1
generator ×1
git ×1
iphone ×1
mocking ×1
private-key ×1
puppet ×1
python ×1
yield ×1