我在我的 Mac 上安装了 tflint,当我尝试执行 --init 时,它抛出 401 错误。 你能告诉我是否需要导出任何环境变量来获取 git 存储库。
tflint --init
Installing `azurerm` plugin...
Failed to install a plugin. An error occurred:
Error: Failed to fetch GitHub releases: GET https://api.github.com/repos/terraform-
linters/tflint-ruleset-azurerm/releases/tags/v0.14.0: 401 Bad credentials []
.tflint.hcl 文件
plugin "azurerm" {
enabled = true
version = "0.14.0"
source = "github.com/terraform-linters/tflint-ruleset-azurerm"
}
我搜索了 tflint 文档但找不到任何内容。
谢谢, 桑托什
tflint 需要安装 azurem 插件。为此,请在此处下载 azurem 正确的插件二进制文件:https://github.com/terraform-linters/tflint-ruleset-azurerm/releases/tag/v0.16.0(检查您需要的版本),解压缩,然后将其移动到您用户的
.tflint.d/plugins
目录(如果不存在则创建它)
mv ~/Downloads/tflint-ruleset-azurerm ~/.tflint.d/plugins/
我最近尝试在公司防火墙后面使用
tflint
,但遇到了校验和错误。我能够通过以下方式解决它:
.zshrc
文件中。尝试 open ~/.zshrc
从 Mac 终端打开文件。setup_local_tflint_plugin() {
for PLUGIN in ${PLUGINS[@]}; do
TFLINT_PLUGIN_NAME=${PLUGIN%|*}
TFLINT_PLUGIN_VERSION=${PLUGIN#*|}
TFLINT_PLUGIN_DIR=~/.tflint.d/plugins/terraform-linters/tflint-ruleset-${TFLINT_PLUGIN_NAME}/${TFLINT_PLUGIN_VERSION}
mkdir -p $TFLINT_PLUGIN_DIR
FILE=$TFLINT_PLUGIN_DIR/tflint-ruleset-${TFLINT_PLUGIN_NAME}
if [ ! -f "$FILE" ]; then
echo "Downloading version ${TFLINT_PLUGIN_VERSION} of the ${TFLINT_PLUGIN_NAME} plugin."
curl -L "https://github.com/terraform-linters/tflint-ruleset-${TFLINT_PLUGIN_NAME}/releases/download/v${TFLINT_PLUGIN_VERSION}/tflint-ruleset-${TFLINT_PLUGIN_NAME}_${PLATFORM_ARCHITECTURE}.zip" > ${TFLINT_PLUGIN_DIR}/provider.zip
yes yes | unzip "${TFLINT_PLUGIN_DIR}/provider.zip" -d ${TFLINT_PLUGIN_DIR} | rm ${TFLINT_PLUGIN_DIR}/provider.zip
fi
done
chmod -R +x ~/.tflint.d/plugins
}
# Valid values for PLATFORM_ARCHITECTURE are:
# 'darwin_amd64', 'darwin_arm64', 'linux_386', 'linux_amd64',
# 'linux_arm', 'linux_arm64', 'windows_386', 'windows_amd64'
PLATFORM_ARCHITECTURE="darwin_amd64"
PLUGINS=("azurerm|0.16.0" "aws|0.16.0")
setup_local_tflint_plugin
.tflint.hcl
配置文件(如下所示)。config {
module = true
force = false
disabled_by_default = false
plugin_dir = "~/.tflint.d/plugins/terraform-linters/tflint-ruleset-azurerm/0.16.0"
}
plugin "azurerm" {
enabled = true
}
tflint . --config ./.tflint.hcl
。注意:这一次仅适用于一个插件(例如 azurerm、aws 等)。
要安装新插件或插件版本,只需向
PLUGINS
文件中的 .zshrc
属性添加更多内容即可。要选择插件,请更新 .tflint.hcl
文件 plugin_dir
属性以指向正确的插件和版本。