小编pjo*_*hin的帖子

如何过滤掉Python中全为0的列?

我有一些需要过滤的结构.有没有办法在Python中很好地完成这项工作?

我有一个丑陋的方式,但我想清理它:

original_header = ['a','b','c']
original_rows = [[1,0,1], [0,0,0], [1,0,0]]

processed_header, processed_rows = some_cool_utility(original_header, original_rows)

assert_equals(['a', 'c'], processed_header)
assert_equals([[1,1], [0,0], [1,0]], processed_rows)
Run Code Online (Sandbox Code Playgroud)

python

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

AWS ECS领导者命令(django migrate)

我们目前正在AWS Elastic Beanstalk上部署我们的Django APP.我们使用容器命令执行django db迁移,我们确保只使用"leader_only"限制在一个实例上运行迁移.

我们正在考虑将部署移至AWS EC2 Container Service.但是,我们无法找到一种方法来强制迁移到仅在部署新映像时在一个容器上运行.

是否可以在AWS EC2 Container Service中配置leader_only命令?

django amazon-ec2 amazon-web-services docker

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

我可以在另一个插件中覆盖一个插件中的固定装置吗?

假设我有:

  • pytest-3rd-party-plugin,提供固定装置cool_fixture
  • pytest-own-plugin 提供固定装置cool_fixture,但具有比cool_fixture“更好”的功能

我希望我自己的cool_fixture 插件被选中。我知道以下几点:

  • 如果我将该固定装置放入 conftest.py 中,就不会有任何问题,它会被 pytest 运行程序选择。但我不想这样做,因为我在许多项目中重复使用这个装置。
  • 我知道我可以将灯具命名为 better_cool_fixture,一切都会好起来的:)但是灯具名称非常漂亮,所以我想保持这种方式。

据我了解 pytest,没有定义的结构,将使用什么夹具。除了模块中的固定装置、conftest.py 等......

所以无论如何,我不需要更改这个漂亮装置的名称?

python pytest

7
推荐指数
0
解决办法
415
查看次数

在维护期间强制 Ingress 返回 503

我们有一些 API 服务运行在 Google Kubernetes Engine 上,并且不时需要进行一些维护,因此我们希望 API 服务返回 503 以及一些有关停机时间的可配置消息。

使 API 服务从服务链接到的 Kubernetes 部署返回 503 不是一种可靠的方法,因为 API pod 可能需要关闭/重新启动。

我的一个想法是有一个特定的部署/pod,我们将配置要使用的服务,并且该服务仅返回 503 以及有关服务维护的一些信息。但是,如果我们要进行集群升级,这种方法将不适用,因为可能有一段时间部署/pod 也不可用。

那么有什么方法可以做到这一点而不必依赖部署/pod?意味着超出特定 Kubernetes 集群范围的配置?

kubernetes google-kubernetes-engine kubernetes-ingress

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

堆栈服务容器动态主机名

我正在从Docker Cloud迁移到纯粹的Docker Swarm设置.我遗漏的一件事是容器如何将主机名设置为$ SERVICE_NAME- $ SLOT_NUMBER的好方法.

是否可以在群组堆栈服务中动态设置主机名/容器名称?

docker docker-swarm docker-stack

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

如何使用 dart:js 将选项传递给 javascript 函数?

我有以下功能性 JavaScript 代码来演示我想要实现的目标。它应该输出传递给方法的对象,然后输出属性“a”的值。

<!DOCTYPE html>
<html>
<head>
</head>
<body>
  <script>
    window.theObjectCall = function(x) {
      console.log(x);
      console.log(x.a);
    }
  </script>
  <script src="main.dart.js" type="application/javascript"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我有以下 dart 代码,它可以工作,但是“a”无法按我的预期访问。

@JS('window')
library whatever;

import 'dart:js';

import 'package:js/js.dart';

@JS('theObjectCall') // Accessing method getCurrentPosition from Geolocation API
external void theJsObjectCall(JsObject theObject);

void someJsCallWithObject() {
  var object = JsObject(context['Object']);
  object['a'] = 'xxx';
  theJsObjectCall(object);
}

Run Code Online (Sandbox Code Playgroud)

在控制台中执行以下日志“未定义”。

在此输入图像描述

dart dart-js-interop flutter flutter-web

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

如何扩展颤振小部件并为其内部值设置默认值?

我是扑扑和飞镖的新手,与继承有点关系。创建了一些表单后,事情变得多余了,因为我们在所有文本字段上使用轮廓边框,如下所示:

TextFormField(
    decoration: InputDecoration(
        labelText: 'Email',
        hintText: 'Your corporate email address',
        border: OutlineInputBorder()
    ),
)
Run Code Online (Sandbox Code Playgroud)

我想要创建的是一个 OutlinedTextFormField ,我可以简单地将其用作:

OutlinedTextFormField(
    labelText: 'Email',
    hintText: 'Your corporate email address',
)
Run Code Online (Sandbox Code Playgroud)

我想要的是一个元素是在 TextFormField + labelText 和hintText 中拥有所有可用的构造函数。在构造函数或其他地方,我将根据我们的内部标准构建 InputDecoration 等。

dart flutter

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

AWS S3 签名对象无法获取

我们正在尝试使用签名对象在私人网站上显示内容的可能性。因此,使用私有 S3 存储桶然后生成签名 URL 似乎是一个不错的方法。然而,当使用 aws-cli 时,我无法让它工作,使用 wget、curl 和我尝试过的任何浏览器请求都会失败。我在这里遗漏了一些东西吗?签名的网址不应该能够用作任何其他正常的网址吗?例子:

# aws s3 presign s3://bucket-name/2018/01/17/small.mp4
https://bucket-name.s3.amazonaws.com/2018/01/17/small.mp4?AWSAccessKeyId=KEYID&Signature=oeU2mpPRhOYFW0MdLcxqrgriaB8%3D&Expires=1516204869

# curl "https://bucket-name.s3.amazonaws.com/2018/01/17/small.mp4?AWSAccessKeyId=KEYID&Signature=doUHXL3RPQGh%2FTuevT3%2FGkjantI%3D&Expires=1516204809"
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>InvalidRequest</Code><Message>The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.</Message><RequestId>31A6192716C4A86D</RequestId><HostId>urrlQ/hz2exkKJ19BuZ7o5kZVQwJexQUb3UvZV7t65erm/inZfDqIt2vpPHxmZ69J1JFnQcfTPc=</HostId></Error>%
Run Code Online (Sandbox Code Playgroud)

它返回错误请求 (400)。

amazon-s3

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

具有共享环境变量的K8S部署

我们有一组部署(一组Pod)都使用相同的docker映像。例子:

  • 网络API
  • 网络管理员
  • Web任务工作程序节点
  • 数据任务工作者节点
  • ...

它们都需要一组通用的环境变量,例如数据库主机的位置,外部服务的秘密密钥等。它们还具有一组不通用的环境变量。

无论如何,有人可以:

  1. 重用定义了环境变量的模板
  2. 从文件加载环境变量并将其设置在Pod上

最佳解决方案是一种了解名称空间的解决方案,因为我们使用kubernetes名称空间来分隔测试,阶段和产品环境。

类似于dockers env_file的东西会很好。但我找不到与此相关的任何示例或参考。我唯一能找到的是通过机密设置env,但这并不干净,因为我仍然需要为每个部署编写所有环境变量。

kubernetes kubernetes-deployment

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

AWS Load Balancer可以配置为过滤掉请求吗?

我在AWS Elastic Beanstalk上部署了一个Django应用程序.Django配置为仅为特定主机名(ALLOWED_HOSTS)提供请求.如果请求中的主机信息不匹配,它将引发返回500响应代码,这很好.

但是,我注意到我得到了很多这些,无论是发送IP地址请求,还是通过其他域名发送请求.因此,我想配置设置,以便负载均衡器拒绝请求,如果它在头信息中没有正确的主机名.

这可能吗?我一直试图在AWS控制台中查看设置,但找不到任何有关如何执行此操作的信息.我可以修补EC2实例以拒绝这些请求,因此它根本不会到达Django,但我想尽早停止它.

流程现在:

Client -> Load Balancer -> EC2 instance -> Nginx -> Django
                                       <-500 error- Django
Run Code Online (Sandbox Code Playgroud)

我想要的是:

Client -> Load Balancer
<-reject- Load Balancer 
Run Code Online (Sandbox Code Playgroud)

http amazon-web-services amazon-elastic-beanstalk

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

为什么在AWS EB Python部署中不使用django进行whitenoise工作?

我正在AWS Elastic Beanstalk上部署一个python应用程序,并使用DjangoWhiteNoise包装器包装wsgi应用程序.但是,我对静态文件的请求得到了404.

# wsgi.py
...
from whitenoise.django import DjangoWhiteNoise
application = DjangoWhiteNoise(application)

# settings.py
...
STATIC_URL = '/static/'
STATICFILES_STORAGE = 'whitenoise.django.GzipManifestStaticFilesStorage'
STATIC_ROOT = os.path.abspath(os.path.join(BASE_DIR, '..', '.staticfiles'))

# .ebextensions/01_django.config
option_settings:
  "aws:elasticbeanstalk:application:environment":
    DJANGO_SETTINGS_MODULE: "myproject.settings.aws_ebs"
    PYTHONPATH: "/opt/python/current/app:$PYTHONPATH"
  "aws:elasticbeanstalk:container:python":
    WSGIPath: "myproject/wsgi.py"
container_commands:
  01_migrate:
    command: "django-admin.py migrate --noinput"
    leader_only: true
  02_collectstatic:
    command: "django-admin.py collectstatic --noinput"
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么吗?

django amazon-web-services amazon-elastic-beanstalk

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