我正在做一个简单的游戏,并且有一个充满敌人的矢量,以便从我的“激光”对象(它是一个空间混搭)对他们进行命中检查。每个激光循环通过矢量,并检查它是否遮挡了命中的圆。问题在于,当一个激光摧毁一个敌人时,其余的激光也试图检查相同的矢量,结果却超出了边界,因为敌人已经被拼接出来了,它改变了矢量的大小。
for each (var enemy:Enemy in enemies){
var distanceX = this.x - enemy.x;
var distanceY = this.y - enemy.y;
我正在使用带有模块google_project_iam_binding的Terraform来声明Terraform文件中已经存在的资源,该文件包含之前已经声明并导入的资源(但没有使用该模块)。 在声明之后,执行terraform plan -out my-terraform-project.plan,没有发现任何问题(声明将创建资源)。但是,如果我尝试使用terraform import google_project_iam_binding.log-writer my-terraform-project导入资源,我会得到:Error: Wrong number of parts to Bin
我正在尝试使用terraform的一种方式,这是在Terraform启动和运行的书的末尾描述的。描述的模式说,您可以通过对每个环境(例如prod、dev、ad开发人员环境等)使用*.tfvars文件来定义您的活动环境。这些*.tfvars文件引用另一个回购中的模块,如下所示:
source = "git::https://github.com/github-user/my-module.git?ref=v0.0.1"
# required variables for `my-module` defined here
foo="bar"
这种模式对我来说很有意义
我正在运行Travis-CI的Ansible 2.2.0.0,以便安装我们在项目中使用的Terraform的公共共享版本。
我可以在本地运行它而不存在任何问题,但是当我在Travis中运行它时,它似乎在某个来自变量的字符串编码上失败了:
[WARNING]: Host file not found: /etc/ansible/hosts
[WARNING]: provided hosts list is empty, only localhost is available
PLAY [localhost] ******************************************
我不知道如何解决这个错误,尝试了各种版本的组合,但无法做到这一点;
在我的模块中:
terraform {
required_version = "~> 1.0"
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "~> 2.98.0". #or 2.62.1 ,1.6.0 depending on the what resource the module is for
}
}
}
你好,我是terraform的新手,我开始使用terraform官方文档,但是我在terraform init中遇到了一个问题
会犯这样的错误。
Initializing the backend...
Initializing provider plugins...
- Checking for available provider plugins...
Provider {"aws"} v1.60.0 is not compatible with Terraform 0.12.15.
Provider version 2.7.0 is the earliest comp
我最近开始在Terraform上工作,有一个关于terraform state mv和terraform import的问题。根据文档,当资源名称更改时,可以使用terraform状态mv,并且必须将更新后的名称添加到状态文件中。terraform import可用于将在Terraform外部创建的资源导入到状态文件中。我的问题是,即使当资源名称更改或代码结构更改(使用模块)时,我们仍然可以使用terraform import来更新状态文件,对吗?谁能告诉我,使用terraform state mv命令的真正好处是什么?
我遵循的优秀指南到地形。我目前在第三篇文章中探索了这个州。特别是在中,演示了地形工作空间。所以,我有下面的main.tf
provider "aws" {
region = "us-east-2"
}
resource "aws_s3_bucket" "terraform_state" {
bucket = "mark-kharitonov-terraform-up-and-running-state"
# Enable versioning so we can see the full revis
如果terraform脚本使用具有输出的模块,则可以使用terraform output命令的-module选项在中访问这些模块输出:
$ terraform output --help
Usage: terraform output [options] [NAME]
Reads an output variable from a Terraform state file and prints
the value. If NAME is not specified, all outputs are printed.
Options:
-state=path Pat
Terraform在运行-target时是否支持terraform plan...标志
在Terraform中,似乎没有打开或关闭此功能的选项。我想知道这是否意味着Terraform作为一个整体不支持模块目标,或者在我的Terraform实例中有一个关闭此功能的选项。
预期结果: Terraform成功创建了该计划。
实际结果: Terraform报告以下错误:
Error: Resource targeting is currently not supported
The "remote" backend does not support resource targetin