小编Joa*_*him的帖子

使用 Poetry 从 Github 安装多个私有包并部署密钥

我想使用诗歌将多个私有 Github 存储库作为 python 包安装到我的存储库中。这在poetry install本地运行时效果很好,因为我将公共 SSH 密钥添加到 Github,这允许诗歌访问私有存储库。问题是我想在我的 CI/CD 管道中安装这些相同的私有包,为此我需要为每个 repo 添加一个部署密钥。正确的部署密钥需要用于正确的存储库,为了使其工作,我需要使用以下格式的一些别名设置一个配置(我实际上还没有知道这是否真的有效) ):

// /.ssh/config
Host repo-1.github.com
 IdentityFile ~/.ssh/repo-1-deploy-key
Host repo-2.github.com
 IdentityFile ~/.ssh/repo-2-deploy-key
Run Code Online (Sandbox Code Playgroud)

repo-1repo-2是私有仓库我需要安装的名称。在本地运行时,pyproject.toml需要按以下格式设置包:

// pyproject.toml
...
[tool.poetry.dependencies]
repo-1 = { git = "ssh://git@github.com/equinor/repo-1.git" }
repo-2 = { git = "ssh://git@github.com/equinor/repo-2.git" }
...
Run Code Online (Sandbox Code Playgroud)

因为这将允许开发人员在没有任何配置的情况下安装软件包(假设他们有权访问)。然而,对于 CI/CD 管道,URL 需要匹配 SSH 配置文件中的别名,因此它需要看起来像这样:

// pyproject.toml
...
[tool.poetry.dependencies]
repo-1 = { git = "ssh://git@repo-1.github.com/equinor/repo-1.git" }
repo-2 = { git = "ssh://git@repo-2.github.com/equinor/repo-2.git" }
...
Run Code Online (Sandbox Code Playgroud)

现在,我似乎陷入困境的是如何在同一个 pyproject …

python ssh github python-poetry deploy-keys

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

使用Typescript和类组件装饰器时如何将数组传递给Vue中的道具

我似乎无法找出使用 Typescript 和类组件库将数组作为道具传递给 Vue 组件的正确方法。按照官方模板,我尝试执行以下操作:

<script lang="ts">
import { Component, Vue} from 'vue-property-decorator';

const AppProps = Vue.extend({
    props: {
        propsMessage: String,
    },
});

@Component({})
export default class Table extends AppProps {
    mounted() {
        console.log(this.propsMessage);
    }
}
</script>
Run Code Online (Sandbox Code Playgroud)

将其包含在一些模板中:

<template>
  <Table :propsMessage="['This', 'is', 'Bob']" />
</template>
Run Code Online (Sandbox Code Playgroud)

确实有效,并提供以下输出:

[“这个”,“是”,“鲍勃”]

这是我想要的,但这肯定不是将数组作为道具传递的正确方法?我什至没有定义propsMessageas String[]。做了一些研究,我发现这篇文章提到有一个与此问题相关的错误。此问题已修复,最近才合并。所以,现在应该有一种方法可以做到这一点,但我找不到任何有关如何正确执行此操作的文档。

components class typescript vue.js

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