小编Sil*_*ind的帖子

如何从特定的ansible命令禁用json输出?

一些ansible命令产生的json输出对人类来说几乎无法读取.当人们需要检查剧本是否正确执行并导致混淆时,它会分散注意力.

示例命令是shellreplace-它们产生大量无用的噪声.我怎么能阻止这个?简单好吧 改变了 失败就足够了.我不需要整个JSON.

ansible

22
推荐指数
1
解决办法
2万
查看次数

Symfony钱场类型和学说

您使用Doctrine存储货币价值的策略是什么?Symfony的资金领域非常方便,但如何将其映射到Doctrine的专栏?是否有一个提供DBAL类型的包?

floatint列类型不足,因为当你处理钱时,你经常处理货币.我正在使用两个字段,但手动处理很尴尬.

symfony doctrine-orm

14
推荐指数
3
解决办法
1万
查看次数

用于测试客户端/服务器交互的邪恶代理

我正在编写一个通过HTTP与远程服务器通信的客户端.我想在客户端和服务器之间放置一个邪恶的代理,它会(随机地)影响线路上的流量.

我希望发生的一些事情:

  • 响应的任意延迟
  • 任意HTTP错误
  • 使用TCP很难想象这种情况但是到底是什么:截断的响应(即格式错误的数据)
  • 暂时不可用(虽然这似乎很难,因为这必须在较低的网络级别完成).
  • 预定义的自定义错误(例如:每个请求都返回一个服务错误)

基本上我想模拟这个软件的用户将在现实世界中体验的一系列网络条件,并确保客户端优雅地处理它们.

我怀疑(希望)类似的东西已经存在.请指出我正确的方向!

谢谢

testing macos networking client-server

9
推荐指数
1
解决办法
1061
查看次数

Nullsoft安装程序,如何使ProgramData子文件夹可写

ProgramData文件夹是存储所有用户共享的应用程序可写文件的最佳位置.但是当Nsis安装程序以管理员权限(需要写入Program Files)运行时,在ProgramData文件夹中创建的文件夹和文件只对除admin以外的所有用户都是只读的.如何更改它并为ProgramData文件夹中的所有用户提供可写文件?

nsis programdata windows-vista windows-7

8
推荐指数
1
解决办法
8064
查看次数

如何在Debian上为php5-fpm设置umask?

我正在php5-fpmnginx通过端口连接(未插座).这是Debian Jessie的库存,所有软件包都通过安装apt-get.

我试图更改为www数据的用户默认的umask php5-fpm是从使用00220002允许组写权限.我试过了:

  • 编辑/etc/init.d/php5-fpminit脚本并添加--umask 0002start-stop-daemon调用,但它被忽略;
  • 添加umask 0002/var/www/.profile作为/var/www对主目录www-data的用户,但它并没有帮助(我并不感到惊讶).
  • 我没有使用,upstart所以这个解决方案不适合我.

此外,无论我尝试过什么,命令sudo -u www-data bash -c umask总是返回0022.

php debian nginx

8
推荐指数
1
解决办法
2411
查看次数

拉动不同的分支时,请"git pull"询问确认

当同时与许多项目和分支机构合作时,我偶尔也会犯愚蠢的错误,比如进入错误的分支.例如,master我在分支机构上做了,git pull origin dangerous_code并且在相当长的一段时间内没有注意到.这个小错误引起了很多混乱.

当我尝试拉出当前已检出的分支以外的分支时,有没有办法让git请求确认?基本上我想要它确认分支名称是否匹配(签出和被拉出的名称).

linux git

7
推荐指数
1
解决办法
1283
查看次数

创建多个字节数组时出现OutOfMemoryException

我经常在一个OutOfMemoryException内部创建并处理一些字节数组的方法.代码如下所示:

  1. 创建MemoryStream以获取一些数据(大约60MB).
  2. 创建字节数组(与MemoryStream大小相同,大约60MB)
  3. 使用内存流中的字节填充数组
  4. 关闭MemoryStream
  5. 处理来自字节数组的数据
  6. 离开方法

当这个方法被调用20-30次时,我得到OutOfMemoryException了分配字节数组的位置.但我不认为这是系统内存问题.应用程序内存使用量约为500MB(专用工作集),测试机器为64位,内存为4GB.

字节数组使用的内存是否可能MemoryStream在方法完成后未释放?但是,由于私有工作集只有500MB左右,因此看起来这个内存不会分配给进程.

OutOfMemoryException在物理内存不足的情况下,什么时候可能导致创建大字节数组(60MB)?

[编辑添加代码示例] 源来自PdfSharp lib

排除异常byte[] imageBits = new byte[streamLength];它确实看起来像LOH碎片问题.

/// <summary>
/// Reads images that are returned from GDI+ without color palette.
/// </summary>
/// <param name="components">4 (32bpp RGB), 3 (24bpp RGB, 32bpp ARGB)</param>
/// <param name="bits">8</param>
/// <param name="hasAlpha">true (ARGB), false (RGB)</param>
private void ReadTrueColorMemoryBitmap(int components, int bits, bool hasAlpha)
{
  int pdfVersion = Owner.Version;
  MemoryStream memory = new MemoryStream(); …
Run Code Online (Sandbox Code Playgroud)

.net c# out-of-memory pdfsharp

6
推荐指数
1
解决办法
5854
查看次数

检测(很可能)不是照片的均匀图像

看看这两个示例图像: 一些背景图像 粘胶带

我希望能够在大型照片和类似图像中识别这些类型的图像.通过photograph我的意思是一张照片的人,风景,动物等.

我不介意是否有一些照片被错误地识别为这些照片,uniform images但我不会真的想通过将它们识别为照片来"遗漏"其中的一些照片.

我想到的最简单的事情是逐个像素地分析图像以找到最高和最低的R,G,B值(每个通道分别).如果最低值和最高值之间的差异很大,则存在大的颜色变化,并且这样的图像可能是照片.

其他想法是以类似的方式分析每个像素的Hue值.问题是在HSL模型中,橙色红色和粉红色在顺时针方向看时差异大约为350度,逆时针方向看时差异为10度.所以我不能比较每个像素的Hue组件,因为我会得到一些奇怪的结果.

此外,还存在噪音问题 - 一个白色或黑色像素会破坏这样的测试.因此,如果只有极少数像素具有这样的极值,我将需要以某种方式排除极值.但是在这一点上它变得越来越复杂,我觉得这不是最好的方法.

我也在考虑将对比度与最大值进行对比,然后像上面描述的RGB一样运行测试.它可能会使事情变得更容易,但仍然有一两个异常像素会破坏测试.如何处理此类案件?

我不介意运行几种不同的算法来覆盖不同的图像类型.但请注意,我正在处理来自数码相机的图像,所以6MP,12MP甚至16MP都很常见.因为运行计算密集型算法是不可取的.我处理数百甚至数千个图像,并且只有有限的CPU资源用于图像处理.让我们说每张大图片中的第二或第二张是我能接受的最大值.

我知道,例如蓝天的照片可能会引发误报,但那没关系.误报比错过更好.

algorithm image-processing computer-vision

6
推荐指数
1
解决办法
933
查看次数

控制台应用程序中的命令行当前工作目录

可能重复:
如何使用C#找出我的控制台应用程序运行的目录?

如何获取运行程序的控制台的当前工作目录,以便我可以解析作为程序args传递的相对路径?

让我说我把我的程序放在这里:c:\tools\program.exe 但是我从各个地方调用它.让我们说我在这里:C:\Users\Me\Documents\我运行这个命令program.exe --src=somefile.txt --dest=subdir\otherfile.txt

Environment.CurrentDirectory并且System.Reflection.Assembly.GetExecutingAssembly().Location将返回c:\tools,但我希望能够解决somefile.txtsubdir\oterfile.txt是相对于路径C:\Users\Me\Documents\.

======更新======

谢谢您的帮助.它似乎Environment.CurrentDirectory按预期工作.事实证明,在我的情况下,问题是由Xenocode的Postbuild工具(现在称为Spoon Virtual Application Studio)引起的,我偶尔会将所有程序的文件(包括dll,config等)"打包"到一个可执行文件中.它非常方便,但在这种情况下,"虚拟化"功能搞砸了程序的Environment变量.我设法解决了这个问题.

c# windows console

5
推荐指数
1
解决办法
1万
查看次数

自动加载ansible的主机特定变量

我需要设置很少的主机特定变量.到目前为止,我将它们添加到hosts文件中,但变量列表变得非常冗长.

我想做的是告诉ansible加载一个包含所有必要变量的主机特定文件.假设我的主持人是:

[webservers]
hydrogen
helium
lithium
Run Code Online (Sandbox Code Playgroud)

而它们的变量结构如下:

.
??? variables
?   ??? hydrogen.yml
?   ??? helium.yml
?   ??? lithium.yml
??? blahblah
Run Code Online (Sandbox Code Playgroud)

如何自动为每个主机加载这些变量?

ansible ansible-playbook

5
推荐指数
1
解决办法
2531
查看次数

PHP:使用自动加载器时如何获取所有类

我正在使用composer生成自动加载器:

"autoload": {
  "psr-4": {
    "SomeNamespace\\": "src/SomeDir"
  }
}
Run Code Online (Sandbox Code Playgroud)

我需要创建实现特定接口的所有类的实例。不使用自动加载器时,这很容易,但是get_declared_classes()不能与自动加载器一起使用。仅在使用自动加载器实例化后,它将列出一个类。

php autoloader composer-php

4
推荐指数
2
解决办法
4507
查看次数

为什么 ansible 默默地忽略一个角色?

我有一本剧本,需要先运行几个角色,但由于某种原因,ansible 始终忽略其中一个角色,而没有任何输出。

示例剧本:

---
- hosts: mirrors
  roles:
    - timezone
    - console
    - core
    - nginx-reverse-proxy
Run Code Online (Sandbox Code Playgroud)

角色nginx-reverse-proxy需要nginx角色,因此文件roles/nginx-reverse-proxy/meta/main.yml包含:

---
# Dependencies required for nginx-reverse-proxy role

dependencies:
  - nginx
Run Code Online (Sandbox Code Playgroud)

当我像这样运行剧本时:ansible-playbook -i mirrors/hosts.yml mirrors/playbook.yml,ansible 到达nginx-reverse-proxy角色,然后立即开始执行任务,roles/nginx-reverse-proxy/tasks/main.yml完全忽略nginx来自 的角色roles/nginx-reverse-proxy/meta/main.yml

我尝试过的:

  1. 在 ansible 之后和之前将nginx角色直接放入剧本中- ansible 忽略了角色并立即跳到。corenginx-reverse-proxynginxnginx-reverse-proxy
  2. 添加一些乱码来roles/nginx/tasks/main.yml看看会发生什么,但 ansible 甚至不尝试执行它。没有错误,就像它甚至没有尝试解析文件一样。
  3. ansible-playbook使用switch运行-vvvv,但它没有告诉我任何有用的信息。
  4. nginx角色本身在目录中只有很少的文件roles/nginx/tasks/。所有这些都是有条件包含的 yml 文件,roles/nginx/tasks/main.yml如下所示:

    --- …
    Run Code Online (Sandbox Code Playgroud)

ansible ansible-2.x

2
推荐指数
1
解决办法
2035
查看次数