小编Mec*_*orm的帖子

如何在VagrantFile中包含变量?

任何人都可以指导我如何在VagrantFile中包含变量?我试图从外部文件将配置注入Vagrantfile,这样我就可以将配置分发给我的同事而无需直接在Vagrantfile上硬编码配置.

我曾经想过,因为它是基于Ruby的我可以只包含一个Ruby文件,但是我得到一个错误消息:unintialized constant MyVars

我的VagrantFile简化了

# -*- mode: ruby -*-
# vi: set ft=ruby :
require 'vagrant.rb'
include MyVars

Vagrant.configure("2") do |config|

  # Web
  config.vm.define :joe do |joe|
    joe.vm.box = "precise64_4.2.12"
    joe.vm.hostname = WEBVMNAME
    joe.vm.network :private_network, ip: "192.168.140.141"

    # Port Forwarding
    joe.vm.network :forwarded_port, guest: 22, host: 2201
    joe.vm.network :forwarded_port, guest: 80, host: 8080

    # Bootstrap Bash Script
    joe.vm.provision :shell, :path => "bootstrap.sh"
  end

end
Run Code Online (Sandbox Code Playgroud)

而vagrant.rb包含

module MyVars

    WEBVMNAME = "rex"

end
Run Code Online (Sandbox Code Playgroud)

请注意我也是Ruby的新手,所以我不确定它是否只是我错误的语法?

编辑:我正在使用的更新代码

ruby deployment vagrant

26
推荐指数
3
解决办法
2万
查看次数

用于Cors的Nginx配置 - 不允许使用add_header指令

我正在尝试将CORS指令添加到我的nginx文件中,作为简单的静态HTML站点.(摘自http://enable-cors.org/server_nginx.html)

是否有理由抱怨第一个add_header指令说'add_header'指令不允许在这里'

我的配置文件示例

server {
    if ($http_origin ~* (https?://[^/]*\.domain\.com(:[0-9]+)?)$) {
        set $cors "true";
    }

    if ($request_method = 'OPTIONS') {
        set $cors "${cors}options";
    }

    if ($request_method = 'GET') {
        set $cors "${cors}get";
    }
    if ($request_method = 'POST') {
        set $cors "${cors}post";
    }

    if ($cors = "trueget") {
        add_header 'Access-Control-Allow-Origin' "$http_origin";
        add_header 'Access-Control-Allow-Credentials' 'true';
    }

    if ($cors = "truepost") {
        add_header 'Access-Control-Allow-Origin' "$http_origin";
        add_header 'Access-Control-Allow-Credentials' 'true';
    }

    if ($cors = "trueoptions") {
        add_header 'Access-Control-Allow-Origin' "$http_origin";
        add_header 'Access-Control-Allow-Credentials' 'true';
        add_header 'Access-Control-Allow-Methods' …
Run Code Online (Sandbox Code Playgroud)

nginx

20
推荐指数
3
解决办法
2万
查看次数

StatsD如何存储其数据?

我一直在浏览https://github.com/etsy/statsd上的README,但我无法弄清楚StatsD如何存储它获得的数据?

它是否可以永久存储,还是一次性存储?我试图找出它使用的数据库(如果有的话),或者它只是使用基于文件的存储.

statsd

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

如何自动创建具有公共IP的Ec2实例**而不在**中声明弹性IP?

在AWS Cloudformation中,有没有办法在VPC中使用公共IP声明EC2实例,无需声明弹性IP并附加到它?

在AWS :: AutoScaling :: LaunchConfiguration中,您可以添加属性"AssociatePublicIpAddress"以表示实例将自动接受公共IP.我正在寻找AWS :: EC2 :: Instance的等价物

下面是我用于创建EC2实例的cloudformation代码段.我不能提及任何提及如何添加公共IP而无需预先声明弹性IP的文档.

"MyEc2Instance": {
    "Type": "AWS::EC2::Instance",
    "Properties": {
        "IamInstanceProfile": {
            "Ref": "MyEc2InstanceProfile"
        },
        "ImageId": {
            "Fn::FindInMap": [
                "MyEc2Box",
                {
                    "Ref": "Region"
                },
                "ImageId"
            ]
        },
        "InstanceType": {
            "Fn::FindInMap": [
                "MyEc2Box",
                {
                    "Ref": "Region"
                },
                "InstanceType"
            ]
        },
        "KeyName": {
            "Ref": "DefaultKeyPair"
        },
        "Monitoring": "true",
        "SecurityGroupIds": [
            {
                "Ref": "MyEc2SecurityGroup"
            }
        ],
        "SubnetId": {
            "Ref": "MyBoxSubnet"
        },
        "Tags": [
            {
                "Key": "Name",
                "Value": "MyBox"
            },
        ]
    }
},
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-cloudformation

8
推荐指数
2
解决办法
9248
查看次数

正则表达式模式匹配带有前缀的目录

我是一个正则表达式新手,我不知道如何为我正在尝试做的这个模式设置正则表达式。

该表达式应位于 Python 预提交脚本中,如果提交的文件与其匹配,它将运行预提交挂钩。

我的示例文件列表

vars/prod-region1/mysql.yml
vars/prod-region1/keys.yml
vars/prod-region1/test.yml
vars/stage-region2/mysql.yml
vars/stage-region2/keys.yml
vars/stage-region2/test.yml
vars/local/mysql.yml
vars/local/test.yml
Run Code Online (Sandbox Code Playgroud)

我需要一个正则表达式模式来匹配属于以下目录模式的文件

  • 变量/prod*/mysql.yml
  • 变量/prod*/keys.yml
  • 变量/阶段*/mysql.yml
  • 变量/阶段*/keys.yml

我现在的努力是

vars/(prod*|stage*)/(mysql|keys).yml
Run Code Online (Sandbox Code Playgroud)

这是严重错误的。任何帮助都会很棒。

regex git pre-commit-hook

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

CakePHP - 从插件加载路径文件

有人能指出我这是怎么做到的吗?我想在插件的文件夹本身的配置文件中定义插件特定的路由.

目前我只是在我的主routes.php文件中定义插件的路由.这显然可以很长.所以我想将它重构为一个单独的配置文件并将其放在插件的文件夹中.

但是我看到有一个代码实际上会自动加载特定于插件的路由,但我找不到任何关于此的文档.在"config/routes.php"中,有一行说

/**
 * Load all plugin routes.  See the CakePlugin documentation on 
 * how to customize the loading of plugin routes.
 */
CakePlugin::routes();
Run Code Online (Sandbox Code Playgroud)

在这里搜索插件路由是一个完全不同的主题.而插件的文件没有提及这一点.

php plugins routing routes cakephp

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

PHP的托管持续集成?

我只是想检查是否有人知道使用PHP为基于Web的项目提供的任何托管连续集成服务?

我一直在寻找,但大多数是针对Java,Ruby和一些iOS/Android.我正在恢复与Jenkin建立自己的CI服务器.我猜在PHP方面对CI的需求不足以证明托管服务能够支持现成的服务.

php continuous-integration jenkins

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

如何使这个代码Php 5.2向后兼容 - 使用变量引用该类

有谁知道如何将此代码转换为PHP 5.2兼容?

$myClass = 'ValidClassName';
$instance = $myClass::factory(array('arg' => 'value));
Run Code Online (Sandbox Code Playgroud)

我知道在PHP 5.3中

从PHP 5.3.0开始,可以使用变量引用该类.变量的值不能是关键字(例如self,parent和static).

没有意识到,我正在使用它.然后在Php 5.2环境中,我得到了错误

解析错误:语法错误,意外T_PAAMAYIM_NEKUDOTAYIM

所以我试图找出如何将该代码转换为至少5.2向后兼容的代码.

php oop

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

从Python中的"if ... in"语句中分配布尔值

我刚从PHP背景开始使用Python.我想知道是否有一种更优雅的方式来为变量分配"if ... in"语句的结果?

我现在这样做

is_holiday = False
if now_date in holidays:
    is_holiday = True
Run Code Online (Sandbox Code Playgroud)

对我来说,它看起来像是一个不必要的代码行,或者这是绝对最小的并符合python样式指南?

python python-2.7

0
推荐指数
1
解决办法
318
查看次数