github.com/terramate-io/tf@v0.0.0-20230830114523-fce866b4dfcd/experiments.go (about)

     1  // Copyright (c) HashiCorp, Inc.
     2  // SPDX-License-Identifier: MPL-2.0
     3  
     4  package main
     5  
     6  // experimentsAllowed can be set to any non-empty string using Go linker
     7  // arguments in order to enable the use of experimental features for a
     8  // particular Terraform build:
     9  //
    10  //	go install -ldflags="-X 'main.experimentsAllowed=yes'"
    11  //
    12  // By default this variable is initialized as empty, in which case
    13  // experimental features are not available.
    14  //
    15  // The Terraform release process should arrange for this variable to be
    16  // set for alpha releases and development snapshots, but _not_ for
    17  // betas, release candidates, or final releases.
    18  //
    19  // (NOTE: Some experimental features predate the rule that experiments
    20  // are available only for alpha/dev builds, and so intentionally do not
    21  // make use of this setting to avoid retracting a previously-documented
    22  // open experiment.)
    23  var experimentsAllowed string
    24  
    25  func ExperimentsAllowed() bool {
    26  	return experimentsAllowed != ""
    27  }