我正在尝试使用Ansible来运行以下两个命令:
sudo apt-get update && sudo apt-get upgrade -y
我知道你可以使用ansible:
ansible all -m shell -u user -K -a "uptime"
会运行以下命令吗?或者我必须使用某种raw
命令
ansible all -m shell -u user -K -a "sudo apt-get update && sudo apt-get upgrade -y"
我正在使用Django Rest Framework,需要在结果集中添加额外的数据.具体来说,你通常会在哪里:
{
"count": 45,
"next": "http://localhost:8000/foo/bar?page=2",
"previous": null,
"results": [
{...}
]
}
Run Code Online (Sandbox Code Playgroud)
我想添加额外的计数如下:
{
"count": 45,
"10_mi_count": 10,
"20_mi_count": 30,
"30_mi_count": 45,
"next": "http://localhost:8000/foo/bar?page=2",
"previous": null,
"results": [
{...}
]
}
Run Code Online (Sandbox Code Playgroud)
此示例中的额外计数只是有多少对象的字段距离,其值小于键中描述的英里数.
我的问题是我不知道扩展和插入此行为的最佳位置在哪里.
理想情况下,无论结果是否分页,我都希望这样做,不作任何假设.
我真正追求的是向正确的方向点头(为什么这是正确的地方).
我已经检查了文档,找不到任何描述如何添加这样的东西的东西,但我很高兴在这个分数上被证明是错误的.
我开始使用Django Rest Framework,它的表现非常好.我得到了所有的东西,因为我想要它.我遇到了一个我无法回答的问题.
我正在使用反向关系.
class Province(models.Model):
name = models.CharField(max_length=50)
intro = models.CharField(max_length=1000, null=True, blank=True)
description = models.TextField(max_length=10000, null=True, blank=True)
class Picture(models.Model):
name = models.TextField("Title", max_length=10000, null=True, blank=True)
pro = models.ForeignKey(Province, verbose_name="Province")
Run Code Online (Sandbox Code Playgroud)
当我编写省的反向关系序列化器时,例如单个省.
ProToPicturesSerial(node, many=False).data
Run Code Online (Sandbox Code Playgroud)
我得到了pictures
这个省的所有人.我想获得一些图片,可能是最后3张,或者最近添加的5张图片.
如何限制图片实例的数量?因为随着图片记录中的数字增长,应用程序将变得更慢.
class ProToPicturesSerial(serializers.ModelSerializer):
pro_pictures = PictureSerializer(many=True)
class Meta:
model = Province
fields = ('id', 'name', 'intro', 'description', 'pro_pictures')
Run Code Online (Sandbox Code Playgroud)
如果我错过了一些明显的东西,请告诉我.
我有一个带有单个 PointField 的地理模型,我希望为每个模型与给定点的距离添加注释,稍后我可以对其进行过滤并进行额外的 jiggery pokery。
有一个明显的queryset.distance(to_point)
功能,但这实际上并没有注释查询集,它只是向查询集中的每个模型添加一个距离属性,这意味着我.filter(distance__lte=some_distance)
以后不能应用它。
我也知道按场和距离本身进行过滤,如下所示:
queryset.filter(point__distance_lte=(to_point, D(mi=radius)))
Run Code Online (Sandbox Code Playgroud)
但由于我想做多个过滤器(以获得不同距离范围内的模型计数),我真的不想让 DB 每次都计算与给定点的距离,因为这可能很昂贵。
有任何想法吗?具体来说,有没有办法将其添加为常规注释而不是每个模型的插入属性?
我有詹金斯的管道工作; 它被配置为构建在BitBucket webhook调用的远程触发器上.这有效并且正在触发构建.
我还需要访问BitBucket发送的有效负载数据(此处描述)以获取有关推送的详细信息,例如特定分支.
该到位桶插件通常会分析这个有效载荷,并将其提交给工作作为一个环境变量,但我不能设置流水线作业为连接到该插件特定的回购,所以它并不能帮助.
我尝试测试以查看数据是否以几种不同的方式可用:
node {
stage 'Desperation'
echo "${params.push}"
echo "${env.BITBUCKET_PAYLOAD}"
echo "${env.push}"
}
Run Code Online (Sandbox Code Playgroud)
这些不起作用(我也没想到它们).
有没有办法得到这个有效载荷数据?我唯一能想到的就是拥有一个自由式工作并建立与BitBucket的连接,然后在重新格式化数据后调用此工作.但这看起来非常笨重.
oc create
如果已经存在,则尝试基于文件创建一组资源失败.
解析配置文件并创建一个或多个OpenShift Enterprise对象... 将忽略任何现有资源.
(强调我的).
我看不到这个命令或全局的任何配置选项会改变这种行为,在我看来它与文档相反.
我跑的命令是 oc create -f some.file
输出是:
Error from server: services 'my-app' already exists
Error from server: buildconfigs 'my-app' already exists
Error from server: imagestreams 'my-app' already exists
Error from server: deploymentconfigs 'my-app' already exists
Error from server: routes 'my-app' already exists
Error from server: secrets 'my-app' already exists
Run Code Online (Sandbox Code Playgroud)
它也以非零退出代码退出,因此它不仅仅是一个警告.我错过了一些明显的东西或误解了文档的内容吗?
我只是希望能够应用此文件并确保之后的OpenShift项目的状态.
所以,我有一个球员身体 + 固定装置等,它本质上是一个弹跳的球。
我想检测它何时“几乎”完成移动。
目前我这样做:
public Boolean isStopped() {
return body.getLinearVelocity().x <= 0.3f && body.getLinearVelocity().y <= 0.3f;
}
Run Code Online (Sandbox Code Playgroud)
这主要是有效的,问题是当玩家击中某物时,有一瞬间其速度为 0,因此返回 true。我真正想要的是在基本完成时返回 true 。最好在我调整游戏世界物理时可以设置为任何我喜欢的范围内。
我不能检查它是否在睡觉,因为这来得太晚了,直到它停止对它施加力量之后它才会睡觉,我需要之前。
我可以只存储停止的时间/停止的步骤数,但我希望有一个很好的预先存在的方法,但我错过了。
有任何想法吗?
如何在只能有数字和字母的Django模型上创建CharField?
models.CharField(_('name'), max_length=50, null=False, blank=False)
Run Code Online (Sandbox Code Playgroud) 所以我试图monkeypatch shutil模块,以便使用最新的make_archive函数修复,允许创建大型zip文件.
我是一个概念性的证据,所以想到一个快速的黑客来解决这个问题会让我继续我想做的事情.
我的代码:
import shutil
import os
def _make_zipfile(base_name, base_dir, verbose=0, dry_run=0, logger=None):
zip_filename = base_name + ".zip"
archive_dir = os.path.dirname(base_name)
if not os.path.exists(archive_dir):
if logger is not None:
logger.info("creating %s", archive_dir)
if not dry_run:
os.makedirs(archive_dir)
# If zipfile module is not available, try spawning an external 'zip'
# command.
try:
import zipfile
except ImportError:
zipfile = None
if zipfile is None:
shutil._call_external_zip(base_dir, zip_filename, verbose, dry_run)
else:
if logger is not None:
logger.info("creating '%s' and adding '%s' to it", …
Run Code Online (Sandbox Code Playgroud)