小编yda*_*coR的帖子

如何透明地重定向Python导入?

我正在寻找一种方法来模拟Python导入的符号链接.我希望能够在不复制文件的情况下就地解压缩以下文件夹结构:

root
?? python_lib
?  ?? my_utils
?     ?? __init__.py
?     ?? etc.py
?? app1
?? app2
?? app3
   ?? lib
   ?  ?? __init__.py
   ?  ?? my_utils.py
   ?? run.py
Run Code Online (Sandbox Code Playgroud)

app3/run.py 包含这个:

from lib.my_utils import etc

etc.pancakes()
Run Code Online (Sandbox Code Playgroud)

我想要使​​用etc位于的代码python_lib/my_utils/.有什么我可以放入,app3/lib/my_utils.py以便Python> = 3.1将透明地导入python_lib/my_utils/文件夹(使用相对路径和..),子包也将工作?

python python-import

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

如何使用talend和sql server更快地加载数据

我使用Talend将数据加载到sql-server数据库中.

看来我工作中最薄弱的部分不是数据处理,而是数据库中的有效负载,不超过17行/秒.

有趣的一点是,我可以同时启动5个工作,并且它们都将以17个/秒的速度加载.

什么可以解释这种缓慢,我怎样才能提高速度?

谢谢

新信息:

我的桌面和服务器之间的传输速度大约是1MByte

我的工作每10 000工作一次

我使用sql server 2008 R2

我用于工作的模式是这样的:

在此输入图像描述

sql-server upsert database-performance talend

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

Ansible - 如何使用循环设置 var

我想创建一个复杂的变量(nginx_ssl_vhosts_list),并使用另一个简单变量(reverse_proxy_ssl)的循环,但我无法让它工作。是否可以有类似以下代码的内容,或者我应该使用自定义插件吗?

这是我认为它会如何工作的:

- hosts: localhost
  gather_facts: no
  connection: local
  vars:
    reverse_proxy_ssl:
      - name: foo.org
        frontport: 443
        fronturl : /
        backend: http://192.168.1.1:8080
      - name: bar.org
        frontport: 443
        fronturl : /
        backend: http://192.168.1.2:443
    nginx_ssl_vhosts_list:
      - listen: "{{ item.frontport }} ssl"
        server_name: "{{ item.name }}"
        access_log: "{{ item.name }}.access.log"
        error_log: "{{ item.name }}.error.log"
        extra_parameters: |
          location {{ item.fronturl }} {
            proxy_pass {{ item.backend }};
          }
          ssl_certificate     {{ item.name }}.crt;
          ssl_certificate_key {{ item.name }}.key;
      with_items: "{{ reverse_proxy_ssl }}"
  tasks:
    - debug: msg="{{ nginx_ssl_vhosts_list }}"
Run Code Online (Sandbox Code Playgroud)

ansible

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

如何创建支持多个AWS区域的提供模块?

我们正在尝试为AWS中的以下活动创建Terraform模块,以便我们可以在需要的地方使用它们.

  1. VPC创建
  2. 子网创建
  3. 实例创建等

但是在创建这些模块时,我们必须在上面列出的所有模块中定义提供者.所以我们决定为提供者创建一个模块,以便我们可以在其他模块(VPC,Subnet等)中调用该提供者模块.

上述方法的问题在于它没有采用提供者值,并要求用户输入区域.

Terraform配置如下:

$ HOME /模块/供应商/ main.tf

provider "aws" {
  region = "${var.region}"
}
Run Code Online (Sandbox Code Playgroud)

$ HOME /模块/供应商/ variables.tf

variable "region" {}
Run Code Online (Sandbox Code Playgroud)

$ HOME /模块/ VPC/main.tf

module "provider" {
  source = "../../modules/providers"
  region = "${var.region}"
}

resource "aws_vpc" "vpc" {
  cidr_block = "${var.vpc_cidr}"
  tags = {
    "name" = "${var.environment}_McD_VPC"
  }
}
Run Code Online (Sandbox Code Playgroud)

$ HOME /模块/ VPC/variables.tf

variable "vpc_cidr" {}
variable "environment" {}
variable "region" {}
Run Code Online (Sandbox Code Playgroud)

$ HOME/main.tf

module "dev_vpc" {
  source = "modules/vpc"
  vpc_cidr = "${var.vpc_cidr}"
  environment = …
Run Code Online (Sandbox Code Playgroud)

terraform

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

配置 CloudWatch Events 以使用 Terraform 将输入发送到 Lambda 函数

我想配置 CloudWatch Events 以使用 Terraform 将输入发送到 Lambda 函数。我使用以下脚本来执行此操作:

resource "aws_cloudwatch_event_rule" "aa-rule-event" {
  count               = "${var.count}"
  name                = "${var.application_name}-${element(var.names, count.index)}"
  description         = "${element(var.descriptions, count.index)}"
  schedule_expression = "${element(var.cron-expressions, count.index)}"
  is_enabled          = "${element(var.rule-status-states, count.index)}"
}

resource "aws_cloudwatch_event_target" "aa-rule-target" {
  count     = "${var.count}"
  rule      = "${var.application_name}-${element(var.names, count.index)}"
  target_id = "CloudWatchToLambda"
  arn       = "arn:aws:lambda:${var.aws_region}:${var.aws_account_number}:function:${var.application_name}-${element(var.target-lambda-function, count.index)}"
}
Run Code Online (Sandbox Code Playgroud)

我需要通过此 CloudWatch Event 向目标 Lambda 提供输入。我知道可以配置输入,但是如何在 Terraform 中配置它?

amazon-web-services amazon-cloudwatch terraform terraform-provider-aws

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

PyQt4 - 从QListWidget中删除Item Widget

我有一个QListWidget,我需要删除一些项目.

根据我的研究,这通常是一件令人不愉快的事情.

我已经阅读了大量的解决方案,但没有一个适用于我的具体情况.
目前,我只有实际的Item Widgets来处理; 不是他们的价值观或指数.

这是因为我通过获取项目(需要删除).selectedItems().

这是代码:

ItemSelect = list(self.ListDialog.ContentList.selectedItems())

for x in range (0, len(ItemSelect)):
    print self.ListDialog.ContentList.removeItemWidget(ItemSelect[x])
Run Code Online (Sandbox Code Playgroud)

但是,这根本不起作用.
它不会引发错误,但不会删除所选项目.
我看到的删除项目的方法需要索引或项目的名称,我都没有.我只有实际的小部件.

我该如何删除它们?

我错过了什么吗?

我正在使用:

Python 2.7.1
PyQt4 IDLE 1.8
Windows 7

python qlistwidget pyqt4

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

ansible lineinfile正则表达式多行

我正在尝试使用Ansible编辑apache.conf.这是我的conf的一部分:

# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual host.
<Directory />
        Options FollowSymLinks …
Run Code Online (Sandbox Code Playgroud)

regex apache ansible

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

指定操作系统 - Ansible

我在一个新手Ansible,所以我写了一个小程序ansible安装一些软件包的依赖关系为系统我写:

---

- hosts: all
  user: root
  tasks:
      - name: install requirements
        apt: name={{item}} state=latest update_cache=true
        with_items:
            - gcc
            - python-dev
            - python-setuptools
            - python-software-properties
Run Code Online (Sandbox Code Playgroud)

当前支持的环境是UbuntuRed HatMac OS X。该剧本的当前编写方式仅适用于Ubuntu (Debian). 我怎样才能根据操作系统执行那部分代码?为Ubuntuapt,为Red Hatyum,为Mac OS X brew

python macos ubuntu package ansible

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

使用Terraform启动AWS保留实例

我想长时间创建保留实例,例如一年运行时间.有人知道Terraform是否允许在AWS中创建此类保留实例吗?

我现在可以在Terraform文档中找到任何内容.

amazon-web-services terraform

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

如何在 Hashicorp Terraform 中配置环境变量

我对 Terraform 还是很陌生,尽管我已经浏览了 Hashicorp 网站上提供的所有教学模块。

目前,我正在努力理解如何设置环境变量。我知道如何在 main.tf config ( access_key = "${var.access_key}") 中引用变量,并且我知道如何将该访问密钥保存到一个单独的文件并引用它,但是我不明白(并且找不到任何文档/说明) 是如何设置环境变量,因此我不必将访问密钥保存到文件中。

有谁知道如何最好地做到这一点?

terraform terraform-provider-azure

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