mirror of
https://github.com/opentofu/opentofu.git
synced 2025-02-25 18:45:20 -06:00
Merge pull request #152 from opentffoundation/opentf-website-placeholder
Change terraform website mentions and links to be placeholder
This commit is contained in:
commit
816c801fb2
@ -4,5 +4,5 @@
|
||||
url_docker_registry_dockerhub = "https://hub.docker.com/r/hashicorp/terraform"
|
||||
url_docker_registry_ecr = "https://gallery.ecr.aws/hashicorp/terraform"
|
||||
url_license = "https://github.com/placeholderplaceholderplaceholder/opentf/blob/main/LICENSE"
|
||||
url_project_website = "https://www.terraform.io"
|
||||
url_project_website = "https://www.placeholderplaceholderplaceholder.io"
|
||||
url_source_repository = "https://github.com/hashicorp/terraform"
|
||||
|
@ -4,7 +4,7 @@ This directory contains some documentation about the OpenTF Core codebase,
|
||||
aimed at readers who are interested in making code contributions.
|
||||
|
||||
If you're looking for information on _using_ OpenTF, please instead refer
|
||||
to [the main OpenTF CLI documentation](https://www.terraform.io/docs/cli/index.html).
|
||||
to [the main OpenTF CLI documentation](https://www.placeholderplaceholderplaceholder.io/docs/cli/index.html).
|
||||
|
||||
## OpenTF Core Architecture Documents
|
||||
|
||||
@ -21,7 +21,7 @@ to [the main OpenTF CLI documentation](https://www.terraform.io/docs/cli/index.h
|
||||
SDK and so wish to conform to them.
|
||||
|
||||
(If you are planning to write a new provider using the _official_ SDK then
|
||||
please refer to [the Extend documentation](https://www.terraform.io/docs/extend/index.html)
|
||||
please refer to [the Extend documentation](https://www.placeholderplaceholderplaceholder.io/docs/extend/index.html)
|
||||
instead; it presents similar information from the perspective of the SDK
|
||||
API, rather than the plugin wire protocol.)
|
||||
|
||||
|
@ -41,7 +41,7 @@ object that describes an action to be taken.
|
||||
An _operation_ consists of:
|
||||
|
||||
* The action to be taken (e.g. "plan", "apply").
|
||||
* The name of the [workspace](https://www.terraform.io/docs/state/workspaces.html)
|
||||
* The name of the [workspace](https://www.placeholderplaceholderplaceholder.io/docs/state/workspaces.html)
|
||||
where the action will be taken.
|
||||
* Root module input variables to use for the action.
|
||||
* For the "plan" operation, a path to the directory containing the configuration's root module.
|
||||
@ -50,7 +50,7 @@ An _operation_ consists of:
|
||||
"force" flag, etc.
|
||||
|
||||
The operation is then passed to the currently-selected
|
||||
[backend](https://www.terraform.io/docs/backends/index.html). Each backend name
|
||||
[backend](https://www.placeholderplaceholderplaceholder.io/docs/backends/index.html). Each backend name
|
||||
corresponds to an implementation of
|
||||
[`backend.Backend`](https://pkg.go.dev/github.com/placeholderplaceholderplaceholder/opentf/internal/backend#Backend), using a
|
||||
mapping table in
|
||||
@ -129,7 +129,7 @@ allowing OpenTF to interpret them at a more appropriate time.
|
||||
## State Manager
|
||||
|
||||
A _state manager_ is responsible for storing and retrieving snapshots of the
|
||||
[OpenTF state](https://www.terraform.io/docs/language/state/index.html)
|
||||
[OpenTF state](https://www.placeholderplaceholderplaceholder.io/docs/language/state/index.html)
|
||||
for a particular workspace. Each manager is an implementation of
|
||||
some combination of interfaces in
|
||||
[the `statemgr` package](https://pkg.go.dev/github.com/placeholderplaceholderplaceholder/opentf/internal/states/statemgr),
|
||||
@ -145,7 +145,7 @@ The implementation
|
||||
[`statemgr.Filesystem`](https://pkg.go.dev/github.com/placeholderplaceholderplaceholder/opentf/internal/states/statemgr#Filesystem) is used
|
||||
by default (by the `local` backend) and is responsible for the familiar
|
||||
`terraform.tfstate` local file that most OpenTF users start with, before
|
||||
they switch to [remote state](https://www.terraform.io/docs/language/state/remote.html).
|
||||
they switch to [remote state](https://www.placeholderplaceholderplaceholder.io/docs/language/state/remote.html).
|
||||
Other implementations of `statemgr.Full` are used to implement remote state.
|
||||
Each of these saves and retrieves state via a remote network service
|
||||
appropriate to the backend that creates it.
|
||||
@ -206,7 +206,7 @@ important examples include:
|
||||
* [`ProviderTransformer`](https://pkg.go.dev/github.com/placeholderplaceholderplaceholder/opentf/internal/terraform#ProviderTransformer),
|
||||
which associates each resource or resource instance with exactly one
|
||||
provider configuration (implementing
|
||||
[the inheritance rules](https://www.terraform.io/docs/language/modules/develop/providers.html))
|
||||
[the inheritance rules](https://www.placeholderplaceholderplaceholder.io/docs/language/modules/develop/providers.html))
|
||||
and then creates "happens after" edges to ensure that the providers are
|
||||
initialized before taking any actions with the resources that belong to
|
||||
them.
|
||||
|
@ -20,7 +20,7 @@ their behaviors in a way comparable to the resource instance behaviors.
|
||||
|
||||
This is developer-oriented documentation rather than user-oriented
|
||||
documentation. See
|
||||
[the main OpenTF documentation](https://www.terraform.io/docs) for
|
||||
[the main OpenTF documentation](https://www.placeholderplaceholderplaceholder.io/docs) for
|
||||
information on existing planning behaviors and other behaviors as viewed from
|
||||
an end-user perspective.
|
||||
|
||||
|
@ -10,7 +10,7 @@ the SDK's API.
|
||||
----
|
||||
|
||||
**If you want to write a plugin for OpenTF, please refer to
|
||||
[Extending OpenTF](https://www.terraform.io/docs/extend/index.html) instead.**
|
||||
[Extending OpenTF](https://www.placeholderplaceholderplaceholder.io/docs/extend/index.html) instead.**
|
||||
|
||||
This documentation is for those who are developing _OpenTF SDKs_, rather
|
||||
than those implementing plugins.
|
||||
|
@ -63,7 +63,7 @@ The key-value pairs representing nested block types have values based on
|
||||
The MessagePack serialization of an attribute value depends on the value of the
|
||||
`type` field of the corresponding `Schema.Attribute` message. The `type` field is
|
||||
a compact JSON serialization of a
|
||||
[OpenTF type constraint](https://www.terraform.io/docs/configuration/types.html),
|
||||
[OpenTF type constraint](https://www.placeholderplaceholderplaceholder.io/docs/configuration/types.html),
|
||||
which consists either of a single
|
||||
string value (for primitive types) or a two-element array giving a type kind
|
||||
and a type argument.
|
||||
@ -212,7 +212,7 @@ The properties representing nested block types have property values based on
|
||||
The JSON serialization of an attribute value depends on the value of the `type`
|
||||
field of the corresponding `Schema.Attribute` message. The `type` field is
|
||||
a compact JSON serialization of a
|
||||
[OpenTF type constraint](https://www.terraform.io/docs/configuration/types.html),
|
||||
[OpenTF type constraint](https://www.placeholderplaceholderplaceholder.io/docs/configuration/types.html),
|
||||
which consists either of a single
|
||||
string value (for primitive types) or a two-element array giving a type kind
|
||||
and a type argument.
|
||||
|
@ -379,7 +379,7 @@ func (b *Backend) Configure(obj cty.Value) tfdiags.Diagnostics {
|
||||
AssumeRoleExternalID: stringAttr(obj, "external_id"),
|
||||
AssumeRolePolicy: stringAttr(obj, "assume_role_policy"),
|
||||
AssumeRoleSessionName: stringAttr(obj, "session_name"),
|
||||
CallerDocumentationURL: "https://www.terraform.io/docs/language/settings/backends/s3.html",
|
||||
CallerDocumentationURL: "https://www.placeholderplaceholderplaceholder.io/docs/language/settings/backends/s3.html",
|
||||
CallerName: "S3 Backend",
|
||||
CredsFilename: stringAttr(obj, "shared_credentials_file"),
|
||||
DebugLogging: logging.IsDebugOrHigher(),
|
||||
|
@ -16,7 +16,7 @@ import (
|
||||
|
||||
// The tests in this file run through different scenarios recommended in our
|
||||
// "Running Terraform in Automation" guide:
|
||||
// https://www.terraform.io/guides/running-terraform-in-automation.html
|
||||
// https://www.placeholderplaceholderplaceholder.io/guides/running-terraform-in-automation.html
|
||||
|
||||
// TestPlanApplyInAutomation runs through the "main case" of init, plan, apply
|
||||
// using the specific command line options suggested in the guide.
|
||||
|
@ -345,7 +345,7 @@ func (c *ImportCommand) Synopsis() string {
|
||||
}
|
||||
|
||||
const importCommandInvalidAddressReference = `For information on valid syntax, see:
|
||||
https://www.terraform.io/docs/cli/state/resource-addressing.html`
|
||||
https://www.placeholderplaceholderplaceholder.io/docs/cli/state/resource-addressing.html`
|
||||
|
||||
const importCommandMissingResourceFmt = `[reset][bold][red]Error:[reset][bold] resource address %q does not exist in the configuration.[reset]
|
||||
|
||||
|
@ -864,7 +864,7 @@ func (c *InitCommand) getProviders(ctx context.Context, config *configs.Config,
|
||||
if thirdPartySigned {
|
||||
c.Ui.Info(fmt.Sprintf("\nPartner and community providers are signed by their developers.\n" +
|
||||
"If you'd like to know more about provider signing, you can read about it here:\n" +
|
||||
"https://www.terraform.io/docs/cli/plugins/signing.html"))
|
||||
"https://www.placeholderplaceholderplaceholder.io/docs/cli/plugins/signing.html"))
|
||||
}
|
||||
},
|
||||
}
|
||||
|
@ -984,7 +984,7 @@ the error above and try again.
|
||||
const errTFCMigrateNotYetImplemented = `
|
||||
Migrating state from Terraform Cloud to another backend is not yet implemented.
|
||||
|
||||
Please use the API to do this: https://www.terraform.io/docs/cloud/api/state-versions.html
|
||||
Please use the API to do this: https://www.placeholderplaceholderplaceholder.io/docs/cloud/api/state-versions.html
|
||||
`
|
||||
|
||||
const errInteractiveInputDisabled = `
|
||||
@ -1007,7 +1007,7 @@ configuration (e.g. production, staging, development), Terraform Cloud workspace
|
||||
across all configurations used within an organization. A typical strategy to start with is
|
||||
<COMPONENT>-<ENVIRONMENT>-<REGION> (e.g. networking-prod-us-east, networking-staging-us-east).
|
||||
|
||||
For more information on workspace naming, see https://www.terraform.io/docs/cloud/workspaces/naming.html
|
||||
For more information on workspace naming, see https://www.placeholderplaceholderplaceholder.io/docs/cloud/workspaces/naming.html
|
||||
|
||||
When migrating existing workspaces from the backend %[1]q to Terraform Cloud, would you like to
|
||||
rename your workspaces? Enter 1 or 2.
|
||||
|
@ -30,15 +30,6 @@ type VersionOutput struct {
|
||||
ProviderSelections map[string]string `json:"provider_selections"`
|
||||
}
|
||||
|
||||
// VersionCheckInfo is the return value for the VersionCheckFunc callback
|
||||
// and tells the Version command information about the latest version
|
||||
// of Terraform.
|
||||
type VersionCheckInfo struct {
|
||||
Outdated bool
|
||||
Latest string
|
||||
Alerts []string
|
||||
}
|
||||
|
||||
func (c *VersionCommand) Help() string {
|
||||
helpText := `
|
||||
Usage: opentf [global options] version [options]
|
||||
@ -53,8 +44,6 @@ Options:
|
||||
}
|
||||
|
||||
func (c *VersionCommand) Run(args []string) int {
|
||||
var outdated bool
|
||||
var latest string
|
||||
var versionString bytes.Buffer
|
||||
args = c.Meta.process(args)
|
||||
var jsonOutput bool
|
||||
@ -136,13 +125,6 @@ func (c *VersionCommand) Run(args []string) int {
|
||||
c.Ui.Output(str)
|
||||
}
|
||||
}
|
||||
if outdated {
|
||||
c.Ui.Output(fmt.Sprintf(
|
||||
"\nYour version of OpenTF is out of date! The latest version\n"+
|
||||
"is %s. You can update by downloading from https://www.terraform.io/downloads.html",
|
||||
latest))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return 0
|
||||
|
@ -96,7 +96,7 @@ func (r *ResourceAddress) String() string {
|
||||
// HasResourceSpec returns true if the address has a resource spec, as
|
||||
// defined in the documentation:
|
||||
//
|
||||
// https://www.terraform.io/docs/cli/state/resource-addressing.html
|
||||
// https://www.placeholderplaceholderplaceholder.io/docs/cli/state/resource-addressing.html
|
||||
//
|
||||
// In particular, this returns false if the address contains only
|
||||
// a module path, thus addressing the entire module.
|
||||
|
@ -2018,7 +2018,7 @@ func TestEnsureProviderVersions(t *testing.T) {
|
||||
beepProvider: getproviders.MustParseVersionConstraints(">= 1.0.0"),
|
||||
},
|
||||
WantErr: `some providers could not be installed:
|
||||
- example.com/foo/beep: the local package for example.com/foo/beep 1.0.0 doesn't match any of the checksums previously recorded in the dependency lock file (this might be because the available checksums are for packages targeting different platforms); for more information: https://www.terraform.io/language/provider-checksum-verification`,
|
||||
- example.com/foo/beep: the local package for example.com/foo/beep 1.0.0 doesn't match any of the checksums previously recorded in the dependency lock file (this might be because the available checksums are for packages targeting different platforms); for more information: https://www.placeholderplaceholderplaceholder.io/language/provider-checksum-verification`,
|
||||
WantEvents: func(inst *Installer, dir *Dir) map[addrs.Provider][]*testInstallerEventLogItem {
|
||||
return map[addrs.Provider][]*testInstallerEventLogItem{
|
||||
noProvider: {
|
||||
@ -2064,7 +2064,7 @@ func TestEnsureProviderVersions(t *testing.T) {
|
||||
Error string
|
||||
}{
|
||||
"1.0.0",
|
||||
`the local package for example.com/foo/beep 1.0.0 doesn't match any of the checksums previously recorded in the dependency lock file (this might be because the available checksums are for packages targeting different platforms); for more information: https://www.terraform.io/language/provider-checksum-verification`,
|
||||
`the local package for example.com/foo/beep 1.0.0 doesn't match any of the checksums previously recorded in the dependency lock file (this might be because the available checksums are for packages targeting different platforms); for more information: https://www.placeholderplaceholderplaceholder.io/language/provider-checksum-verification`,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -120,7 +120,7 @@ func installFromLocalArchive(ctx context.Context, meta getproviders.PackageMeta,
|
||||
)
|
||||
} else if !matches {
|
||||
return authResult, fmt.Errorf(
|
||||
"the current package for %s %s doesn't match any of the checksums previously recorded in the dependency lock file; for more information: https://www.terraform.io/language/provider-checksum-verification",
|
||||
"the current package for %s %s doesn't match any of the checksums previously recorded in the dependency lock file; for more information: https://www.placeholderplaceholderplaceholder.io/language/provider-checksum-verification",
|
||||
meta.Provider, meta.Version,
|
||||
)
|
||||
}
|
||||
@ -210,7 +210,7 @@ func installFromLocalDir(ctx context.Context, meta getproviders.PackageMeta, tar
|
||||
)
|
||||
} else if !matches {
|
||||
return authResult, fmt.Errorf(
|
||||
"the local package for %s %s doesn't match any of the checksums previously recorded in the dependency lock file (this might be because the available checksums are for packages targeting different platforms); for more information: https://www.terraform.io/language/provider-checksum-verification",
|
||||
"the local package for %s %s doesn't match any of the checksums previously recorded in the dependency lock file (this might be because the available checksums are for packages targeting different platforms); for more information: https://www.placeholderplaceholderplaceholder.io/language/provider-checksum-verification",
|
||||
meta.Provider, meta.Version,
|
||||
)
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Terraform Documentation
|
||||
|
||||
This directory contains the portions of [the Terraform website](https://www.terraform.io/) that pertain to the core functionality, excluding providers and the overall configuration.
|
||||
This directory contains the portions of [the Terraform website](https://www.placeholderplaceholderplaceholder.io/) that pertain to the core functionality, excluding providers and the overall configuration.
|
||||
|
||||
The website uses the files in this directory in conjunction with
|
||||
[the `terraform-website` repository](https://github.com/hashicorp/terraform-website). The `terraform-website` repository brings all of the documentation together and contains the scripts for testing and building the entire site.
|
||||
|
@ -22,13 +22,13 @@ The following example loads the Terraform website and validates that it returns
|
||||
|
||||
```hcl
|
||||
check "health_check" {
|
||||
data "http" "terraform_io" {
|
||||
url = "https://www.terraform.io"
|
||||
data "http" "placeholderplaceholderplaceholder_io" {
|
||||
url = "https://www.placeholderplaceholderplaceholder.io"
|
||||
}
|
||||
|
||||
assert {
|
||||
condition = data.http.terraform_io.status_code == 200
|
||||
error_message = "${data.http.terraform_io.url} returned an unhealthy status code"
|
||||
condition = data.http.placeholderplaceholderplaceholder_io.status_code == 200
|
||||
error_message = "${data.http.placeholderplaceholderplaceholder_io.url} returned an unhealthy status code"
|
||||
}
|
||||
}
|
||||
```
|
||||
@ -39,7 +39,7 @@ You can use any data source from any provider as a scoped data source within a `
|
||||
|
||||
A `check` block can optionally contain a nested (a.k.a. scoped) data source. This `data` block behaves like an external [data source](/terraform/language/data-sources), except you can not reference it outside its enclosing `check` block. Additionally, if a scoped data source's provider raises any errors, they are masked as warnings and do not prevent Terraform from continuing operation execution.
|
||||
|
||||
You can use a scoped data source to validate the status of a piece of infrastructure outside of the usual Terraform resource lifecycle. [In the above example](#checks-syntax), if the `terraform_io` data source fails to load, you receive a warning instead of a blocking error, which would occur if you declared this data source outside of a `check` block.
|
||||
You can use a scoped data source to validate the status of a piece of infrastructure outside of the usual Terraform resource lifecycle. [In the above example](#checks-syntax), if the `placeholderplaceholderplaceholder_io` data source fails to load, you receive a warning instead of a blocking error, which would occur if you declared this data source outside of a `check` block.
|
||||
|
||||
#### Meta-Arguments
|
||||
|
||||
@ -100,8 +100,8 @@ You can often use postconditions interchangeably with check blocks to validate r
|
||||
For example, you can [rewrite the above `check` block example](#checks-syntax) to use a postcondition instead. The below code uses a `postcondition` block to validate that the Terraform website returns the expected status code of `200`.
|
||||
|
||||
```hcl
|
||||
data "http" "terraform_io" {
|
||||
url = "https://www.terraform.io"
|
||||
data "http" "placeholderplaceholderplaceholder_io" {
|
||||
url = "https://www.placeholderplaceholderplaceholder.io"
|
||||
|
||||
lifecycle {
|
||||
postcondition {
|
||||
|
@ -221,13 +221,13 @@ The following example uses a check block with an assertion to verify the Terrafo
|
||||
|
||||
```hcl
|
||||
check "health_check" {
|
||||
data "http" "terraform_io" {
|
||||
url = "https://www.terraform.io"
|
||||
data "http" "placeholderplaceholderplaceholder_io" {
|
||||
url = "https://www.placeholderplaceholderplaceholder.io"
|
||||
}
|
||||
|
||||
assert {
|
||||
condition = data.http.terraform_io.status_code == 200
|
||||
error_message = "${data.http.terraform_io.url} returned an unhealthy status code"
|
||||
condition = data.http.placeholderplaceholderplaceholder_io.status_code == 200
|
||||
error_message = "${data.http.placeholderplaceholderplaceholder_io.url} returned an unhealthy status code"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
@ -36,13 +36,13 @@ The `plantimestamp` function is not available within the Terraform console.
|
||||
```
|
||||
|
||||
```terraform
|
||||
check "terraform_io_certificate" {
|
||||
data "tls_certificate" "terraform_io" {
|
||||
url = "https://www.terraform.io/"
|
||||
check "placeholderplaceholderplaceholder_io_certificate" {
|
||||
data "tls_certificate" "placeholderplaceholderplaceholder_io" {
|
||||
url = "https://www.placeholderplaceholderplaceholder.io/"
|
||||
}
|
||||
|
||||
assert {
|
||||
condition = timecmp(plantimestamp(), data.tls_certificate.terraform_io.certificates[0].not_after) < 0
|
||||
condition = timecmp(plantimestamp(), data.tls_certificate.placeholderplaceholderplaceholder_io.certificates[0].not_after) < 0
|
||||
error_message = "terraform.io certificate has expired"
|
||||
}
|
||||
}
|
||||
|
@ -40,10 +40,10 @@ Use the namespace keywords where possible, to make the intent more obvious to
|
||||
a future reader:
|
||||
|
||||
```
|
||||
> uuidv5("dns", "www.terraform.io")
|
||||
> uuidv5("dns", "www.placeholderplaceholderplaceholder.io")
|
||||
a5008fae-b28c-5ba5-96cd-82b4c53552d6
|
||||
|
||||
> uuidv5("url", "https://www.terraform.io/")
|
||||
> uuidv5("url", "https://www.placeholderplaceholderplaceholder.io/")
|
||||
9db6f67c-dd95-5ea0-aa5b-e70e5c5f7cf5
|
||||
|
||||
> uuidv5("oid", "1.3.6.1.4")
|
||||
@ -58,7 +58,7 @@ UUIDs, and in some special cases it may be more appropriate to use the
|
||||
UUID form:
|
||||
|
||||
```
|
||||
> uuidv5("6ba7b810-9dad-11d1-80b4-00c04fd430c8", "www.terraform.io")
|
||||
> uuidv5("6ba7b810-9dad-11d1-80b4-00c04fd430c8", "www.placeholderplaceholderplaceholder.io")
|
||||
a5008fae-b28c-5ba5-96cd-82b4c53552d6
|
||||
```
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user