小编l0b*_*0b0的帖子

在Bash脚本中调用C函数

到相关的问题3451993,是有可能调用在bash脚本的功能而言是内部subst.c(在Bash源代码)?

c bash

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

如何在 Ansible 中使用命令 stdin?

我试过这个

- name: Log into Docker registry
  command: docker login --username "{{ docker_registry_username }}" --password-stdin
  stdin: "{{ docker_registry_password }}"
Run Code Online (Sandbox Code Playgroud)

这会导致警告和失败的命令:

[警告]:忽略无效属性:stdin

无法从非 TTY 设备执行交互式登录

我也试过这个

- name: Log into Docker registry
  command: docker login --username "{{ docker_registry_username }}" --password-stdin
    stdin: "{{ docker_registry_password }}"
Run Code Online (Sandbox Code Playgroud)

这会导致语法错误:

错误!加载 YAML 时出现语法错误。

是否command stdin实际上在Ansible 2.7工作?如果是这样,我应该如何使用它?

ansible

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

如何升级CDK引导?

我有一个已经引导的环境,再次引导(使用 CDK 1.106.1)似乎没有做任何事情:

\n
$ cdk bootstrap aws://unknown-account/ap-southeast-2\n\'@aws-cdk/core:newStyleStackSynthesis\' context set, using new-style bootstrapping\n[\xe2\x80\xa6]\n \xe2\x8f\xb3  Bootstrapping environment aws://unknown-account/ap-southeast-2...\nTrusted accounts:   (none)\nUsing default execution policy of \'arn:aws:iam::aws:policy/AdministratorAccess\'. Pass \'--cloudformation-execution-policies\' to customize.\n
Run Code Online (Sandbox Code Playgroud)\n

但是,下一个命令会警告引导堆栈太旧:

\n
$ cdk diff\n[\xe2\x80\xa6]\nOther Changes\n[+] Unknown Rules: {"CheckBootstrapVersion":{"Assertions":[{"Assert":{"Fn::Not":[{"Fn::Contains":[["1","2","3"],{"Ref":"BootstrapVersion"}]}]},"AssertDescription":"CDK bootstrap stack version 4 required. Please run \'cdk bootstrap\' with a recent version of the CDK CLI."}]}}\n
Run Code Online (Sandbox Code Playgroud)\n

是什么赋予了?我已经使用最新的 CDK 版本运行 bootstrap。如何升级引导程序版本?

\n
\n

我现在已经删除了“CDKToolkit”堆栈并成功重新引导,但我仍然收到相同的警告。是什么赋予了?我显然正在使用cdk bootstrap最新版本的 CDK。

\n

我现在已为此提交了CDK 问题。

\n
\n

相关项目问题建造

\n

amazon-web-services aws-cdk

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

如何在作业中获取 GitHub Actions 矩阵作业名称?

我正在尝试为矩阵中的每个失败作业单独上传日志。每组日志都需要有一个基于作业矩阵的名称,否则它们会互相破坏,我无法分辨生成的工件来自哪个作业。

我尝试打印所有上下文:

name: My workflow
on:
  pull_request:
    types: [opened, synchronize]
jobs:
  my-job:
    name: OS ${{ matrix.os }}
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os:
          - ubuntu-18.04
          - ubuntu-20.04
    steps:
      - run: echo "${{ toJSON(github) }}"
      - run: echo "${{ toJSON(env) }}"
      - run: echo "${{ toJSON(job) }}"
      - run: echo "${{ toJSON(steps) }}"
      - run: echo "${{ toJSON(runner) }}"
      - run: echo "${{ toJSON(secrets) }}"
      - run: echo "${{ toJSON(strategy) }}"
      - run: echo "${{ toJSON(matrix) }}"
      - run: echo …
Run Code Online (Sandbox Code Playgroud)

github-actions

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

不使用特定于打印的 CSS 进行打印

我想将http://www.delicious.com/tags/engmark打印为 PDF(如果可能的话,在 Linux 上使用 Firefox),但结果看起来很垃圾。如何在不考虑打印特定 CSS 的情况下进行打印(我认为该 CSS 是由网站上庞大的 JS 加载的)?我尝试在Web Developer 扩展中禁用打印 CSS ,但这并没有影响打印输出。

css printing pdf firefox

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

变量定义*和*undefined

我想这在某种程度上是有道理的,但我无法理解为什么:在下面的代码中,我得到两个警告(注意原始代码是缩进的标签):

define variable-definition
    ifndef $1
        $(warning $1 is undefined)
    else
        $(warning $1 is defined)
    endif
endef
Run Code Online (Sandbox Code Playgroud)

PS:我想检查名称传递的变量是否$1存在,而不是是否$1传递.

PPS:Dedenting整个事情没有帮助.

makefile

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

如果未定义,如何提示特定于目标的Makefile变量?

这类似于另一个问题,但我只想make提示一个值,如果我正在运行一个特定的目标并且尚未指定一个必需的变量.

目前的代码:

install-crontab: PASSWORD ?= "$(shell read -p "Password: "; echo "$$REPLY")"
install-crontab: $(SCRIPT_PATH)
    @echo "@midnight \"$(SCRIPT_PATH)\" [...] \"$(PASSWORD)\""
Run Code Online (Sandbox Code Playgroud)

这只会导致以下输出而没有提示:

Password: read: 1: arg count
@midnight [...] ""
Run Code Online (Sandbox Code Playgroud)

这里重要的一点是,我必须在运行此目标时询问,并且在未定义变量时才询问.我不能使用configure脚本,因为显然我不应该在配置脚本中存储密码,因为这个目标不是标准安装过程的一部分.

variables makefile

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

Bash:将stdout从多个并发命令拆分为列

我使用单个&符号在bash脚本中运行多个命令,如下所示:

commandA & commandB & commandC
Run Code Online (Sandbox Code Playgroud)

他们每个人都有自己的stdout输出,但他们都混合在一起,并在一个不连贯的混乱中淹没控制台.

我想知道是否有一种简单的方法将输出管道输入到他们自己的列中...使用column命令或类似的东西.即.就像是:

commandA | column -1 & commandB | column -2 & commandC | column -3
Run Code Online (Sandbox Code Playgroud)

这种事情的新手,但从最初的挖掘看起来似乎pr可能是票?还是column命令......?

linux bash shell

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

如何使用超类调用键入 Python mixin?

我正在尝试在我的项目中使用FieldMixin来自这个答案的答案,但我无法让它通过mypy检查。当前代码:

class DynamicFieldsMixin(Serializer):
    context: Dict[str, Any]

    def get_field_names(
        self, declared_fields: OrderedDict, info: FieldInfo
    ) -> Set[str]:
        field_names: Set[str] = self.context.get(
            "fields",
            super().get_field_names(declared_fields, info)
        )
        return field_names
Run Code Online (Sandbox Code Playgroud)

继承自rest_framework.serializers.Serializer似乎很奇怪,我想知道是否有办法避免这种情况,因为它意味着要混合到实际的Serializer类中。仅删除超类会导致此错误:

错误:“get_field_names”在超类中未定义

mypy 配置:

[mypy]
check_untyped_defs = true
disallow_untyped_defs = true
ignore_missing_imports = true
no_implicit_optional = true
warn_redundant_casts = true
warn_return_any = true
warn_unused_ignores = true
Run Code Online (Sandbox Code Playgroud)

python python-3.x mypy

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

如何修复“扩展没有安装脚本或更新路径”错误?

我正在维护旧的PostgreSQL 扩展,并尝试发布新版本。测试脚本运行时失败CREATE EXTENSION IF NOT EXISTS table_version version '1.10.3';

错误:扩展“table_version”没有版本“1.10.3”的安装脚本或更新路径

不是这个问题,因为(在测试脚本的前面步骤中安装成功)确实包含相关/usr/share/postgresql/10/extension/table_version--1.10.3.sql文件。我很困惑还有什么可能是问题。

重现:

  1. 在linz-software-repositorynix-shell --pure --run 'docker build --tag=docker-builder .'的“master”分支上运行以创建 Debian 软件包构建器映像 ( log )
  2. 在postgresql-tableversiondocker run --env=DRY_RUN=1 --env=GITHUB_REPOSITORY=linz/postgresql-tableversion --env=RUNNER_WORKSPACE="$(dirname "$PWD")" --volume=/var/run/docker.sock:/var/run/docker.sock docker-builder focal jq "$PWD" “release-1.10” 分支上运行以创建 Debian 包 ( log )
  3. 运行docker build --build-arg=RELEASE=focal --tag=tester .以创建测试运行器 Docker 映像(日志
  4. 运行docker run --rm --volume="${PWD}/build-area:/packages" tester ./test/ci/package-upgrade.bash 10查看错误(日志 …

postgresql

6
推荐指数
0
解决办法
705
查看次数