SecBSD's official ports repository
This commit is contained in:
commit
2c0afcbbf3
64331 changed files with 5339189 additions and 0 deletions
25
sysutils/terraform/pkg/DESCR
Normal file
25
sysutils/terraform/pkg/DESCR
Normal file
|
@ -0,0 +1,25 @@
|
|||
Terraform is a tool for building, changing, and versioning infrastructure safely
|
||||
and efficiently. Terraform can manage existing and popular service providers as
|
||||
well as custom in-house solutions.
|
||||
|
||||
The key features of Terraform are:
|
||||
|
||||
- Infrastructure as Code: Infrastructure is described using a high-level
|
||||
configuration syntax. This allows a blueprint of your datacenter to be versioned
|
||||
and treated as you would any other code. Additionally, infrastructure can be
|
||||
shared and re-used.
|
||||
|
||||
- Execution Plans: Terraform has a "planning" step where it generates an
|
||||
execution plan. The execution plan shows what Terraform will do when you call
|
||||
apply. This lets you avoid any surprises when Terraform manipulates
|
||||
infrastructure.
|
||||
|
||||
- Resource Graph: Terraform builds a graph of all your resources, and
|
||||
parallelizes the creation and modification of any non-dependent resources.
|
||||
Because of this, Terraform builds infrastructure as efficiently as possible, and
|
||||
operators get insight into dependencies in their infrastructure.
|
||||
|
||||
- Change Automation: Complex changesets can be applied to your infrastructure
|
||||
with minimal human interaction. With the previously mentioned execution plan and
|
||||
resource graph, you know exactly what Terraform will change and in what order,
|
||||
avoiding many possible human errors.
|
3
sysutils/terraform/pkg/PLIST
Normal file
3
sysutils/terraform/pkg/PLIST
Normal file
|
@ -0,0 +1,3 @@
|
|||
@pkgpath sysutils/terraform/terraform
|
||||
@bin bin/terraform
|
||||
share/doc/pkg-readmes/${PKGSTEM}
|
62
sysutils/terraform/pkg/README
Normal file
62
sysutils/terraform/pkg/README
Normal file
|
@ -0,0 +1,62 @@
|
|||
+-------------------------------------------------------------------------------
|
||||
| Running ${PKGSTEM} on OpenBSD
|
||||
+-------------------------------------------------------------------------------
|
||||
|
||||
Hashicorp does not build terraform-providers for OpenBSD (yet?).
|
||||
Our MODGO framework doesn't play well with how the providers repositories are
|
||||
populated, meaning it's hard to automate ports creation and package building.
|
||||
|
||||
For now, the recommended way is to manually build the required providers.
|
||||
|
||||
Example: Terraform AWS provider; version 3.56.0
|
||||
===============================================
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
The lang/go package is required for building:
|
||||
# pkg_add go
|
||||
|
||||
Go eats a lot of memory and you may need to bump your limits (`ulimit -d`).
|
||||
|
||||
$ git clone https://github.com/hashicorp/terraform-provider-aws
|
||||
$ cd terraform-provider-aws
|
||||
$ git fetch --all --tags && git checkout tags/v3.56.0 -b 3.56.0
|
||||
$ gmake build
|
||||
|
||||
The provider will be available at ${GOPATH}/bin/terraform-provider-aws.
|
||||
GOPATH defaults to ${HOME}/go/bin.
|
||||
|
||||
Installing
|
||||
----------
|
||||
|
||||
Providers can be installed under any of these directories:
|
||||
${PWD}/terraform.d/plugins
|
||||
~/.terraform.d/plugins
|
||||
~/.local/share/terraform/plugins
|
||||
/usr/local/share/terraform/plugins
|
||||
|
||||
They must follow the sub-hierarchy according to the plugin configuration.
|
||||
|
||||
Using this code in the Terraform configuration...
|
||||
|
||||
---8<-------------------------
|
||||
terraform {
|
||||
required_providers {
|
||||
aws = {
|
||||
source = "hashicorp/aws"
|
||||
version = "3.56.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
provider "aws" {
|
||||
# Configuration options
|
||||
}
|
||||
---8<-------------------------
|
||||
|
||||
... means that the Terraform AWS provider must be installed as:
|
||||
${PLUGINSDIR}/registry.terraform.io/hashicorp/aws/3.56.0/openbsd_amd64/terraform-provider-aws_v3.56.0
|
||||
(see the official documentation about "in-house providers").
|
||||
|
||||
`terraform init` should now be able to detect this provider plugin.
|
Loading…
Add table
Add a link
Reference in a new issue