泰拉雅自定义提供程序 GPG 问题

希望你做得很好。

我正在使用Go编写一个API,其工作方式类似于地形提供程序协议

因此,我已经有两个端点通过HTTPS在我的本地计算机上工作:

  • https://myapi:9000/v1/provider/:namespace/:type/versions

  • https://myapi:9000/v1/provider/:namespace/:type/:version/download/:os/:arch

例如,假设这些完整的端点:

  • https://myapi:9000/v1/provider/myprovider/custom/versions

  • https://myapi:9000/v1/provider/myprovider/custom/0.1.0/download/linux/amd64

所以我有下一个.tf.json文件:

{

    "module": {

        "linux": {

            "source": "myapi:9000/v1/module/mymodule/custom",

            "version": "0.1.2"

        }

    }

}

使用这两个文件


provider.tf.json

provider "mycustomprovider" {

    username = "abc"

    password = "def"

    host = "yjk"

}

versions.tf.json

terraform {

    required_providers {

        mycustomprovider = {

            source: "myapi:9000/v1/myprovider/custom",

            version: "0.1.0"

        }

    }

    required_version = ">=1.0.2"

}

然后我只需运行:获取我的资产。terraform init


因此,当我获得自定义模块时,工作正常。输出(模块下载):


Initializing modules...

Downloading myapi:9000/mymodule/custom/gnu 0.1.2 for linux...

- linux in .terraform/modules/linux


Initializing the backend...

但是当我得到我的证明时,我有这个错误:


Initializing provider plugins...

- Finding myapi:9000:9000/myprovider/custom versions matching "0.1.0"...

- Installing myapi:9000:9000/myprovider/custom v0.1.0...

│ Error: Failed to install provider

│ 

│ Error while installing myapi:9000/myprovider/custom v0.1.0: error checking signature:

│ openpgp: invalid data: tag byte does not have MSB set

因此,我的提供者终结点正在工作。这就是为什么terraform能够识别我的提供者的版本。versions

问题应该出在我的终结点上。download

在谈论这个终端节点之前,我想添加一些上下文,我正在使用本地堆栈运行S3客户端并通过ngrok公开它。这两件事有效,我能够毫无问题地上传或下载文件。

泰拉form自定义提供程序应该有三个文件(据我所知):

  1. zip 格式的提供程序(如其示例中所示)

  2. 一个包含每个提供者zip文件的阴影的文件(在这种情况下,我只有一个)provider_SHA256SUMS

  3. 用于识别文件的完整性。provider_SHA256SUMS.sigprovider_SHA256SUMS


九州编程
浏览 167回答 1
1回答

守着一只汪

x/crypto/openpgpterraform使用不支持读取装甲消息,请参阅问题,这是错误的来源。shasums_signature_url提交的文档提及:二进制、分离的 GPG 签名另请参阅手动准备发布文档这是有效的 GPG 二进制(非 ASCII 装甲)签名因此,您应该尝试在没有标志的情况下签名。--armor
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go