Maven构建步骤从私有存储库安装节点软件包



我有一个maven项目,该项目使用exec-maven-plugin构建:

,将节点依赖项作为构建的一部分。
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>exec-maven-plugin</artifactId>
    <configuration>
        <workingDirectory>src/main</workingDirectory>
    </configuration>
    <executions>
        <execution>
            <id>npm-install</id>
            <configuration>
                <executable>npm</executable>
                <arguments>
                    <argument>install</argument>
                </arguments>
            </configuration>
            <phase>initialize</phase>
            <goals>
                <goal>exec</goal>
            </goals>
        </execution>

节点依赖项之一托管在私人git存储库中。我不希望每次构建时输入密码,因此我在package.json中使用git ssh协议:

  "dependencies": {
    "sass-theme": "git+ssh://git@github.com/MyOrg/sass-theme.git#v1.0.2",
    "node-sass": "^4.5.0"
  }

这对我来说很好,因为我使用SSH定期连接到组织的私人GIT存储库,并且SSH键不受密码的保护。它还可以在我们的詹金斯服务器(Jenkins Server)上使用,该服务器具有自己的SSH密钥。

这种方法的第一个问题是我组织密码中的一些开发人员保护其SSH键,因此提示他们在构建过程中输入密码。

第二个问题是大多数开发人员使用HTTPS连接到存储库,因此他们必须创建一个SSH键并将其注册在GitHub中。然后,在构建过程中,提示它们允许SSH连接,但是它在构建中如此早,以至于在滚动缓冲区中丢失。

我该更改如何使此过程更加无缝?我们可以有一个共享的SSH键吗?或我需要更改节点依赖的URL以使用git https?

第二个问题是大多数开发人员使用https

连接到存储库

1/他们可以继续这样做,确保他们使用凭证助手来缓存其github.com用户名和密码(例如,使用Windows的Git,您将使用Microsoft Git corderential经理,链接到Windows中的凭据管理器)

2/为了不更改您的设置(使用SSH URL),开发人员可以使用以下全局配置,例如:

git config --global url."https://github.com".insteadOf git+ssh://git@github.com

这样,任何git@github.com SSH URL都会被解释/更改为https One。

相关内容

  • 没有找到相关文章

最新更新