假设我有一个名为"apache"的角色
现在我想从Ansible主机的命令行在主机192.168.0.10上执行该角色
ansible-playbook -i "192.168.0.10" --role "path to role"
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?
我在makefile中喜欢这个
target1:
export var1=test
$(MAKE) target2
target2:
echo $(var1)
Run Code Online (Sandbox Code Playgroud)
这是空的
我有其他依赖项,所以我想在第一个目标中设置变量,然后所有子项依赖项应该能够访问它
编辑:
.ONESHELL:
target1:
export var1=test
echo $(var1)
Run Code Online (Sandbox Code Playgroud)
产量
make target1
export var1=test
echo
Run Code Online (Sandbox Code Playgroud) 我有API代码,它将任务添加到队列中,然后芹菜工作者消耗这些任务.
目前我的代码库都相同.但是我希望芹菜工人只是拥有简单的普通Python任务而没有django代码,因为工人只会处理任务而且不需要django.可能吗.
为了启动芹菜工人我需要使用这条线
celery -A django_project worker --queue high
Run Code Online (Sandbox Code Playgroud)
我该怎么写而不是django_project呢
我在vars中有这个:
var1: "test1"
var2: "test2"
var3: "{{var1}}"
Run Code Online (Sandbox Code Playgroud)
现在我想动态改变var3: "{{var2}}".
我可以分配var3: "test2".但我怎么分配var3: "{{var2}}"?
我正在使用带有redis的芹菜.
当前的redis用作代理和结果后端.
BROKER_TRANSPORT = 'redis'
BROKER_URL = 'redis://domain:8888/0'
CELERY_RESULT_BACKEND = 'redis://domain:8888/0'
Run Code Online (Sandbox Code Playgroud)
我想澄清一些事情
我有一个ansible列表值:
hosts = ["site1", "site2", "site3"]
Run Code Online (Sandbox Code Playgroud)
如果我试试这个:
hosts | join(", ")
Run Code Online (Sandbox Code Playgroud)
我明白了:
site1, site2, site3
Run Code Online (Sandbox Code Playgroud)
但我想得到:
"site1", "site2", "site3"
Run Code Online (Sandbox Code Playgroud) 我的 ansible 变量中加载了一个 json 文件内容。
json 内容(以及我从中写入的结果文件)具有不必要的文件空间和空行。我想通过删除所有不必要的东西来缩小 json 文件。
是否可以做类似的事情{{ myjson_content| to_json_minify }}?
也许这可以通过正则表达式来完成?
我已经制定了这样的目标
test.%
export var1=$(basename $*) && export var2=$(subst .,,$(suffix $*))
Run Code Online (Sandbox Code Playgroud)
我喜欢用 test.var1.var2
现在我想再做一个级别,比如 test.var1.var2.var3我怎么能在makefile中得到它
编辑:
我想这样做的原因是因为我使用Make文件来部署多个应用程序,我想要很多变量.以便用户可以部署
make install.{app1}.{test}.{build_number}
Run Code Online (Sandbox Code Playgroud) 这对我来说很好
- ec2_remote_facts:
region: "{{region}}"
filters:
"tag:Name": "server1"
Run Code Online (Sandbox Code Playgroud)
但是我想要像这样的正则表达式
- ec2_remote_facts:
region: "{{region}}"
filters:
"tag:Name": "server1*"
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点
Currenty我有一个Ec2实例来处理API请求
问题是API和芹菜工作者的代码库是相同的.因为e,g
我用 cutsomer.process_order(order_id)
然后工人完成其余的工作.
有没有办法将API与工作代码分开.我想在单独的代码库中创建API,并在单独的代码库中创建工作者