小编MDa*_*alt的帖子

使用 Kubernetes CronJob 基于时间的扩展:如何避免部署覆盖 minReplicas

我有一个 Horizo​​ntalPodAutoscalar 来根据 CPU 扩展我的 pod。这里的 minReplicas 设置为5

apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
  name: myapp-web
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: myapp-web
  minReplicas: 5 
  maxReplicas: 10
  metrics:
    - type: Resource
      resource:
        name: cpu
        target:
          type: Utilization
          averageUtilization: 50

Run Code Online (Sandbox Code Playgroud)

然后,我添加了 Cron 作业来根据一天中的时间放大/缩小我的水平 pod 自动缩放器:

kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  namespace: production
  name: cron-runner
rules:
- apiGroups: ["autoscaling"]
  resources: ["horizontalpodautoscalers"]
  verbs: ["patch", "get"]

---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: cron-runner
  namespace: production
subjects:
- kind: ServiceAccount
  name: sa-cron-runner …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubernetes-cronjob hpa

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

打字稿从函数中删除第一个参数

我有一个可能很奇怪的情况,我正在尝试使用打字稿进行建模。

我有一堆具有以下格式的函数

type State = { something: any }


type InitialFn = (state: State, ...args: string[]) => void

Run Code Online (Sandbox Code Playgroud)

我希望能够创建一个表示InitialFn删除第一个参数的类型。就像是

// this doesn't work, as F is unused, and args doesn't correspond to the previous arguments
type PostTransformationFn<F extends InitialFn> = (...args: string[]) => void

Run Code Online (Sandbox Code Playgroud)

这可能吗?

javascript generics typescript

11
推荐指数
2
解决办法
2205
查看次数

尝试循环遍历数组并将每个值传递到 gradle 任务中

我正在尝试做一系列本来应该很简单的事情,但却给我带来了很多痛苦。在较高的层次上,我想循环遍历一个数组并将每个值传递到一个 gradle 任务中,该任务应该返回一个自己的数组。然后我想使用这个数组来设置一些 Jenkins 配置。

我尝试了多种方法来实现这项工作,但这是我当前的设置:

project.ext.currentItemEvaluated = "microservice-1"

task getSnapshotDependencies {
    def item = currentItemEvaluated
    def snapshotDependencies = []

    //this does a load of stuff like looping through gradle dependencies,
    //which means this really needs to be a gradle task rather than a 
    //function etc. It eventually populates the snapshotDependencies array.

    return snapshotDependencies
}

jenkins {
    jobs {
        def items = getItems() //returns an array of projects to loop through
        items.each { item ->
           "${item}-build" {
                project.ext.currentItemEvaluated = item …
Run Code Online (Sandbox Code Playgroud)

groovy gradle jenkins-job-dsl

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

如何使用“使用 Apple 登录”测试注册流程

我们正在使用“通过 Apple 注册”构建注册流程。

这看起来相当简单,但我们找不到测试注册的好方法。您必须使用真实帐户,这意味着您只能注册一次。这对于 QA 来说是很糟糕的。

有没有人找到解决这个问题的好方法?例如,是否有任何黑客可以让我们创建新的 Apple 帐户?

authentication ios apple-sign-in

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

在 Big Sur 上安装密码时出现 Pip 错误

使用 pip 版本 20.2.4、Python 3.8.2 和 Big Sur 11.0.1。

当我运行时pip install cryptography,我收到此错误:

  Building wheels for collected packages: cffi
    Building wheel for cffi (setup.py): started
    Building wheel for cffi (setup.py): finished with status 'error'
    ERROR: Command errored out with exit status 1:
     command: /Users/xxx/projects/xxx/venv/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/g8/nj6ghjhgj11j84rsjmqqb00000gn/T/pip-install-aufpkz3c/cffi/setup.py'"'"'; __file__='"'"'/private/var/folders/g8/nj6ghjhgj11j84rsjmqqb00000gn/T/pip-install-aufpkz3c/cffi/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/g8/nj6ghjhgj11j84rsjmqqb00000gn/T/pip-wheel-asotxqfl
         cwd: /private/var/folders/g8/nj6ghjhgj11j84rsjmqqb00000gn/T/pip-install-aufpkz3c/cffi/
    Complete output (42 lines):
    running bdist_wheel
    running build
    running build_py
    creating build
    creating build/lib.macosx-10.14.6-x86_64-3.8
    creating …
Run Code Online (Sandbox Code Playgroud)

macos pip python-cffi python-cryptography

6
推荐指数
2
解决办法
5084
查看次数

有没有办法在AWS Elastic Beanstalk中隐藏环境变量?

我的弹性beanstalk应用程序有许多机密的环境变量(例如API密钥,哈希秘密等).我想设置AWS以便大多数开发人员可以查看和编辑配置等,但是看不到其中的一些环境变量.如果我们每次开发人员离开时都必须更改所有这些,那将是一个巨大的开销.

从玩权限开始,似乎(至少使用Elastic Beanstalk)你可以完全访问配置或者看不到任何配置 - 完全删除访问意味着开发人员甚至不能做基本的事情,比如看看部署失败的原因.

我想知道是否有另一种环境变量的方法可能允许我让devs访问这个配置,但是模糊了高度机密的东西.我可以将秘密env vars放在服务器上的文件中吗?

还有另一种方法吗?

environment-variables amazon-web-services amazon-elastic-beanstalk

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

Celery '错误:在时间限制内没有节点回复'错误 - 如何调试?

我遇到了一个以前多次出现的问题,但以前的答案似乎都没有帮助我。

我正在运行带有 Redis 后端的 Celery(通过 Docker/Kubernetes)。我正在使用这个命令:

celery worker --uid 33 -A finimize_django --loglevel=DEBUG -E

(我刚刚将它设置为现在调试)

我正在使用celery==4.3.0redis==3.2.1

每当我跑步时,celery -A app_name status我都会得到:

Error: No nodes replied within time constraint.

奇怪的是芹菜似乎工作正常。我可以看到正在处理的任务,即使我的monitorRedis 内容似乎正在成功运行。几个月来,这在生产中也一直运行良好,直到上周才开始发生这种情况。

它导致了一个问题,因为我的 liveness 探针因为此错误消息而杀死了 pod。

如何调试潜在问题?日志输出中没有任何错误。

谢谢!

python redis celery kubernetes

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

如何覆盖 Django admin/form 使用的外键查询集

我已经尝试了在互联网上可以找到的所有内容,但似乎没有任何效果,所以想知道以前的许多答案是否适用于旧版本。我使用的是 Django 2.2.9。

#models.py

class ParentModel(models.Model):
   title = models.CharField()

class ChildModel(models.Model):
   parent = models.ForeignKey(
        ParentModel,
        on_delete=models.CASCADE,
        related_name='parent'
    )

Run Code Online (Sandbox Code Playgroud)
# admin.py

@admin.register(ParentModel)
class ParentModelAdmin(admin.ModelAdmin):
    model = ParentModel

    def get_queryset(self, request):
        return ParentModel.objects.get_complete_queryset()


class ChildModelForm(forms.Form):
    def __init__(self, u, *args, **kwargs):
        super(ChildModelForm, self).__init__(*args, **kwargs)
        self.fields['parent'].queryset = ParentModel.objects.get_complete_queryset()

    class Meta:
        model = ChildModel
        fields = '__all__'


@admin.register(ChildModel)
class ChildModelAdmin(admin.ModelAdmin):
   model = ChildModel
   form = ChildModelForm

   def formfield_for_foreignkey(self, db_field, request, **kwargs):
        if db_field.name == "parent":
            kwargs["queryset"] = ParentModel.objects.get_complete_queryset()

        return super().formfield_for_foreignkey(db_field, request, **kwargs)
Run Code Online (Sandbox Code Playgroud)

get_complete_queryset我调用了一个经理查询,ParentModel …

django django-admin django-validation

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

triggerHandler导致错误:[$ rootScope:inprog] $ apply已在进行中错误 - AngularJS

我按下按键时尝试触发按钮的单击.我正在使用该triggerHandler函数执行此操作,但这会导致上述错误.我想我必须创建某种循环引用/循环,但我看不到哪里.

这是我的HTML:

<button id="demoBtn1" hot-key-button hot-key="hotKeys.primaryTest" class="po-btn primary-btn" type="submit" ng-click="btnFunction()"></button>
Run Code Online (Sandbox Code Playgroud)

这是我的控制器:

.controller('BtnCtrl', function ($scope) {
    $scope.checkKeyPress = function ($event, hotKeyObj) {
        for(var key in hotKeyObj) {
            if($event.keyCode == hotKeyObj[key].keyCode) {
                var id = hotKeyObj[key].btnId;
                hotKeyObj[key].funcTriggered(id);
            }
        }
    }
    $scope.clickFunction = function(id) {
        var currentButton = angular.element(document.getElementById(id));
        currentButton.triggerHandler("click");
    }
    $scope.btnFunction = function() {
        console.log("clickFunction1 has been triggered");
    }

    $scope.hotKeys = {
        'primaryTest': {
            keyCode: 49,
            keyShortcut: "1",
            label: "Button",
            btnId: 'demoBtn1',
            funcTriggered: $scope.clickFunction
        },
        // more objects here
        } …
Run Code Online (Sandbox Code Playgroud)

onclick angularjs jquery-triggerhandler

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

CSS/LESS:Calc()使用百分比减去未正确评估的像素

这个问题之前曾被问过几次,但我发现的答案似乎都不适合我的情况.我有3个按钮,我正在尝试评估它们的宽度,如下所示:

.num-buttons-3 {
    width: calc((100% - 40px)/3);
}
Run Code Online (Sandbox Code Playgroud)

这总是在我的浏览器(Chrome)中评估为20%,即(100% - 40%)/3.

我已经尝试了许多建议的替代方法来正确评估,例如:

.num-buttons-3 {
   width: calc((~'100% - 40px')/3);
}

.num-buttons-3 {
@marg: 40px;
width: calc((~'100% - @{marg}')/3);
}
Run Code Online (Sandbox Code Playgroud)

我可以尝试另一种CSS或LESS解决方案吗?

css dynamic less

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