我使用ansible编写API的部署脚本.我希望这可以顺序通过我的库存文件中的每个主机,以便我可以一次完全部署到一台机器.
使用out框行为,我的playbook中的每个任务都会在清单文件中为每个主机执行,然后再继续执行下一个任务.
在下一个主机上启动之前,如何更改此行为以执行主机的所有任务?理想情况下,我想只有一本剧本.
谢谢
是否可以在Sublime Text中获得Dockerfile的语法高亮?
我们有一个使用Angular的项目,但仅限于UI绑定/ AJAX方面,而不是任何类型的路由或SPA功能.
我们希望能够#section-2在我们选择的CMS中编写的文章中使用锚点链接(),以及使用其他页面的锚点链接(/my-page#section-C),但是Angular #/section-2会将这些链接重写为,这会破坏CMS设置的锚点链接.
无法扩充CMS以修改锚链接的处理方式.
有可能:
hashchange从Angular中删除事件绑定?我看到这个事件附加在源文件中src/ng/browser.js,它处理一些路由和链接重写,但是它在一个闭包内部,所以不能直接访问它(我们从CDN链接到Angular所以不可能修改Angular源代码,加上我们不想维护自己的"自定义"Angular源代码.
设置一个选项或调用一个配置方法,最终禁用Angular的整个路由方面,并防止它重写任何类型的链接?(或者,有没有办法不包括Angular的这部分,但仍保留控制器/ UI绑定/ AJAX功能?)
请注意,我已经尝试过这个:
$locationProvider.html5Mode(true)
Run Code Online (Sandbox Code Playgroud)
但是,它会使网站上的所有其他链接无法运行,因为所有链接都通过Angular进行处理.因此,如果我链接到主页(<a href="/">Home</a>)并单击带有html5modeon的链接,则链接不执行任何操作.
我正在使用带通配符的模式订阅Kafka,如下所示.通配符表示动态客户ID.
consumer.subscribe(pattern='customer.*.validations')
Run Code Online (Sandbox Code Playgroud)
这很有效,因为我可以从主题字符串中提取客户ID.但是现在我需要扩展功能以听取类似主题的目的略有不同.我们称之为customer.*.additional-validations.代码需要存在于同一个项目中,因为共享了很多功能,但我需要能够根据队列类型采用不同的路径.
在Kafka文档中,我可以看到可以订阅一系列主题.然而,这些是硬编码的字符串.不是允许灵活性的模式.
>>> # Deserialize msgpack-encoded values
>>> consumer = KafkaConsumer(value_deserializer=msgpack.loads)
>>> consumer.subscribe(['msgpackfoo'])
>>> for msg in consumer:
... assert isinstance(msg.value, dict)
Run Code Online (Sandbox Code Playgroud)
所以我想知道是否有可能以某种方式做两者的组合?有点像这样(不工作):
consumer.subscribe(pattern=['customer.*.validations', 'customer.*.additional-validations'])
Run Code Online (Sandbox Code Playgroud) 我关注此railscast https://www.youtube.com/watch?v=ltoPZEzmtJA但我不使用coffeescript.我试图将coffeescript转换为javascript,但我遇到了问题.
CoffeeScript的
jQuery ->
new AvatarCropper()
class AvatarCropper
constructor: ->
$('#cropbox').Jcrop
aspectRatio: 1
setSelect: [0, 0, 600, 600]
onSelect: @update
onChange: @update
update: (coords) =>
$("#crop_x").val coords.x
$("#crop_y").val coords.y
$("#crop_w").val coords.w
$("#crop_h").val coords.h
Run Code Online (Sandbox Code Playgroud)
js.erb文件
$(document).ready(function() {
$('.crop-image').on('click', function () {
$('#cropbox').Jcrop({
aspectRatio: 1,
setSelect: [0, 0, 100, 100],
onSelect: update,
onChange: update
})
});
update: (function(_this) {
return function(coords) {
$('.user').val(coords.x);
$('.user').val(coords.y);
$('.user').val(coords.w);
return $('.user').val(coords.h);
};
})(this)
});
Run Code Online (Sandbox Code Playgroud)
我不明白为什么他决定上课,并认为改变整个事情会更复杂.我遇到的麻烦是更新功能.我只是将用于更新功能的咖啡脚本插入转换器并使用输出.这导致错误,表示未定义更新.我哪里错了?
另外还有一个问题:他在这里上课的重点是什么?
谢谢!
Gunicorn允许为请求配置超时,如下面的文档中所示.这似乎是整个应用程序的全局配置.
是否可以为不同的端点配置不同的超时?也许覆盖已知需要很长时间的url端点上的默认超时?
http://docs.gunicorn.org/en/stable/settings.html#timeout
超时
-t INT, - timeout INT
三十
沉默超过这么多秒钟的工人被杀死并重新开始.
一般设定为30秒.如果您确定同步工作人员的影响,请将其设置得明显更高.对于非同步工作者,它只意味着工作进程仍在进行通信,并且与处理单个请求所需的时间长度无关.
我正在探索使用SQLite作为数据库来存储资源(主要是键值对)的选项,这些资源只在开发过程中是必需的.永远不会在生产环境或任何其他环境中直接访问此数据库.自定义应用程序将用于根据此数据库中的内容生成多个静态资源.我想保留这个数据库的更改历史记录,因此存储在版本控制中似乎是一个好主意,因为我会免费获得它.
我的问题是使用SQLite会有意义吗?还是有更合适的选择?
我在Windows 8下使用Cygwin(CYGWIN_NT-6.3-WOW64).我还运行Vagrant(1.7.2)和Ansible(1.8.4).要完成,我的Virtualbox是4.3.22.
已经从各自的Windows安装包安装了Cygwin和Vagrant.我在Cygwin下运行Python 2.7.8并使用'pip install ansible'来安装Ansible.
所有这些应用程序本身都可以正常工作.Cygwin工作得很好; 我整天用它作为我的贝壳,每天都没有问题.
当我在Cygwin下运行Vagrant时,Vagrant和Virtualbox也没有问题.当我在网络上的服务器上运行播放或模块时,Ansible在Cygwin下运行正常.
我遇到的问题是当我尝试使用Ansible配置本地运行的Vagrant VM时.
例如,我vagrant up是一个VM,然后起草一个简单的剧本来配置它.以下是Vagrantfile:
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.define :drupal1 do |config|
config.vm.box = "centos65-x86_64-updated"
config.vm.hostname = "drupal1"
config.vm.network "forwarded_port", guest: 80, host: 10080
config.vm.network :private_network, ip: "192.168.56.101"
config.vm.provider "virtualbox" do |v|
v.name = "Drupal Server 1"
v.memory = 1024
end
config.vm.provision :ansible do |ansible|
ansible.playbook = "provisioning/gather_facts.yml"
end
end
Run Code Online (Sandbox Code Playgroud)
和剧本:
---
- hosts: all
gather_facts: yes
Run Code Online (Sandbox Code Playgroud)
但是,当我运行'vagrant provision drupal1'时,我收到以下错误:
vagrant provision drupal1 ==> drupal1:正在运行的供应商:ansible ... PYTHONUNBUFFERED …
我正在写一本主要的Ansible剧本,其中包括剧本.现在,我想设置其中指定的所有剧本使用的变量.如何在此剧本中指定变量?我知道其中一个选项是包含vars_files并将其与每个playbook一起使用.示例: - include:abc.yml vars_files:vars.yml
我正在使用Ansible 1.9.3.
我需要测试是否选中了 BootStrap 单选按钮。这是我的方法,但它不起作用。如何验证单选按钮是否已选中?
<script>
function optChange() {
if (document.getElementById("optEventType").val() == 'yes'){
/// Do something.....
}
}
</script>
<form>
<div id ="optType" onchange="optChange()" class="radio">
<label><input type="radio" name="opt1" id = "opt1">Tex21 </label>
<label><input type="radio" name="opt1" id = "opt2">Text2</label>
</div>
</form>
Run Code Online (Sandbox Code Playgroud) ansible ×3
javascript ×3
jquery ×2
python ×2
anchor ×1
angularjs ×1
apache-kafka ×1
coffeescript ×1
cygwin ×1
docker ×1
dockerfile ×1
gunicorn ×1
kafka-python ×1
rest ×1
sqlite ×1
sublimetext ×1
vagrant ×1