小编Chr*_*ley的帖子

如何使用 API 密钥将包发布到 npm?

NPM 能够创建具有将包发布到 NPM 注册表的权限的访问令牌,假设您已将包设置设置为“发布访问”中的“需要双因素身份验证或自动化令牌”(因此隐含地要求我认为 2FA 已启用)。

如何使用该令牌进行发布?我检查了npm publish-- 它要求输入 OTP 代码(作为提示或标志)的输出,在我启用 2FA 之前,它再次要求我输入密码。使用固定令牌比启动我的身份验证器应用程序更容易。我可以禁用 2FA,但让令牌正常工作更好。

npm npm-publish

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

如何向记录的主构造函数添加属性?

我有一个带有附加便利构造函数的记录:

public record PublishedTestMethod(Guid Id, string Name, int Version, string Status, Guid? Publisher,
    DateTimeOffset? DatePublished)
{
    public PublishedTestMethod(TestMethod tm) : this(tm.Id, tm.Name, tm.Version, tm.Status, tm.Publisher,
        tm.DatePublished)
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

我想从 JSON 对象反序列化它:

JsonConvert.DeserializeObject<PublishedTestMethod>(json);
Run Code Online (Sandbox Code Playgroud)

我收到错误:

无法找到用于类型 Namespace.PublishedTestMethod 的构造函数。类应该具有默认构造函数、带参数的构造函数或标有 JsonConstructor 属性的构造函数。

理想情况下,我想将[JsonConstructor]属性分配给长构造函数,因为我认为这可以让它很好地从 JSON 映射。将其添加到记录本身不起作用,并且我看不到构造函数的属性目标。有没有办法做到这一点?

c# record

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

如何将Ansible with_items循环应用于所包含的任务?

提及的文档import_tasks

任何循环,条件语句和大多数其他关键字都将应用于所包含的任务,而不是此语句本身。

这正是我想要的。不幸的是,当我尝试import_tasks循环工作时

- import_tasks: msg.yml
  with_items:
    - 1
    - 2
    - 3
Run Code Online (Sandbox Code Playgroud)

我收到消息

错误!您不能在“ import_tasks”语句上使用循环。您应该改用“ include_tasks”。

我不希望这种include_tasks行为,因为这会将循环应用于包含的文件,并重复执行任务。我特别想为每个循环变量运行第一个任务(作为具有标准with_items输出的一个任务),然后运行第二个,依此类推。我如何获得这种行为?


具体来说,请考虑以下几点:

假设我有以下文件:

playbook.yml

---                       

- hosts: 192.168.33.100
  gather_facts: no
  tasks:
  - include_tasks: msg.yml
    with_items:
      - 1
      - 2
Run Code Online (Sandbox Code Playgroud)

msg.yml

---

- name: Message 1
  debug:
    msg: "Message 1: {{ item }}"

- name: Message 2
  debug:
    msg: "Message 2: {{ item }}"
Run Code Online (Sandbox Code Playgroud)

我希望打印出来的消息是

消息1:1
消息1:2
消息2:1
消息2:2

但是,随着import_tasks我得到一个错误,随着include_tasks我得到

消息1:1
消息2:1 …

ansible

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

查找列表是否包含特定的 numpy 数组

import numpy as np

a = np.eye(2)
b = np.array([1,1],[0,1])

my_list = [a, b]
Run Code Online (Sandbox Code Playgroud)

a in my_list返回true,但b in my_list返回“ValueError:具有多个元素的数组的真值不明确。使用 a.any() 或 a.all()”。我可以通过首先将数组转换为字符串或列表来解决这个问题,但是有没有更好的(更 Pythonic)的方法来做到这一点?

python numpy

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

引发未捕获的异常时,如何还原PowerShell脚本中的目录更改?

在bash中,如果我想为单个命令更改当前目录do_thing,我将生成一个新的子shell,在其中更改目录,运行

(cd folderName; do_thing)
Run Code Online (Sandbox Code Playgroud)

问题的内容表明,在PowerShell中执行此操作的方法是使用Push-Location存储位置以及Pop-Location命令完成运行后的位置。这行得通,但并不理想:我必须记住Pop-Location在脚本的每个返回点处进行写入(例如,在每个异常之前,如果在按下某个位置时发生异常),则未捕获的异常将照原样保留当前目录。

有没有一种方法可以将当前目录重置为脚本开始时的状态,即使抛出未捕获的异常也是如此?

powershell

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

标签 统计

ansible ×1

c# ×1

npm ×1

npm-publish ×1

numpy ×1

powershell ×1

python ×1

record ×1