tofuutils / tofuenv Goto Github PK
View Code? Open in Web Editor NEWOpenTofu version manager
Home Page: https://tofuutils.github.io/tofuenv/
License: MIT License
OpenTofu version manager
Home Page: https://tofuutils.github.io/tofuenv/
License: MIT License
tenv
have the same functionalities as tofuenv
. If something is missing, add support of missing parts to tenv
tofuenv
, add information about tenv
to tofuenv help
tenv
to README.md; All new feature requests should be created in tenv repoPlease replicate this feature from tfswitch
. https://tfswitch.warrensbox.com/Quick-Start/#use-versiontf-file
Homebrew is presenting the following WARNING after upgrade or clean install.
brew tap tofuutils/tap
==> Tapping tofuutils/tap
Cloning into '/opt/homebrew/Library/Taps/tofuutils/homebrew-tap'...
remote: Enumerating objects: 107, done.
remote: Counting objects: 100% (107/107), done.
remote: Compressing objects: 100% (85/85), done.
remote: Total 107 (delta 44), reused 39 (delta 11), pack-reused 0
Receiving objects: 100% (107/107), 22.93 KiB | 1.91 MiB/s, done.
Resolving deltas: 100% (44/44), done.
Tapped 2 formulae (24 files, 42.9KB).
brew install tofuenv
==> Fetching tofuutils/tap/tofuenv
==> Downloading https://github.com/tofuutils/tofuenv/archive/refs/tags/v1.0.5.tar.gz
Already downloaded: /Users/xxxx/Library/Caches/Homebrew/downloads/308230ab939032d22db108b0065b9c195ad39b4a0233551e8933b86f966dcdfa--tofuenv-1.0.5.tar.gz
==> Installing tofuenv from tofuutils/tap
Warning: Tap migration for tofuutils/tap/tofuenv points to itself, stopping recursion.
🍺 /opt/homebrew/Cellar/tofuenv/1.0.5: 30 files, 737.1KB, built in 3 seconds
==> Running brew cleanup tofuenv
...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see man brew
).
Warning: Tap migration for tofuutils/tap/tofuenv points to itself, stopping recursion.
Warning: Tap migration for tofuutils/tap/tofuenv points to itself, stopping recursion.
Please replicate this feature from tfswitch
. https://tfswitch.warrensbox.com/Quick-Start/#use-terragrunthcl-file
As of now, tenv has completion support built in. tenv completion
can be used to generate completion scripts for various shells.
There is also a formula for tenv in Homebrew. See here.
Formulae can be used to set up completion. This is currently not done for tenv.
This is the idea: Add set up of tenv shell completion to Homebrew formula
How could it be done?
The install
method in the formula definition needs to be edited.
For the awscli I find for example this:
rm bin.glob("{aws.cmd,aws_bash_completer,aws_zsh_completer.sh}")
bash_completion.install "bin/aws_bash_completer"
zsh_completion.install "bin/aws_zsh_completer.sh"
(zsh_completion/"_aws").write <<~EOS
#compdef aws
_aws () {
local e
e=$(dirname ${funcsourcetrace[1]%:*})/aws_zsh_completer.sh
if [[ -f $e ]]; then source $e; fi
}
EOS
Is your feature request related to a problem? Please describe.
Windows (64bit) - only tested in git-bash - currently presumed failing due to symlink issues in git-bash
Describe the solution you'd like
In Windows I suggest to use mklink and you can use it when in Win env. The problem is that by default windows user does not have permissions to create links this is reserved to admin users.
You could ad prereq and check if user has rights to create symlink
Here some piece of python that checks that - may be useful : https://stackoverflow.com/questions/2094663/determine-if-windows-process-has-privilege-to-create-symbolic-link
Please replicate this feature from tfswitch
. https://tfswitch.warrensbox.com/Quick-Start/#set-a-default-tf-version-for-cicd-pipeline
Please replicate this feature from tfswitch
. https://tfswitch.warrensbox.com/Quick-Start/#install-latest-implicit-version-for-stable-releases
Describe the solution you'd like
A GitHub Actions workflow that builds binaries with goreleaser and publishes them every time there is a new release tag.
Describe alternatives you've considered
None, goreleaser is pretty standard
Perform the same actions when a .terraform-version
file is found, as when an .opentofu-version
file is found.
Is your feature request related to a problem? Please describe.
It would be awesome to add tab completion between the installed tofu versions for tofuenv use
, this would work without any internet connection. With the internet connection, a tab-completion for tofuenv install
Describe the solution you'd like
no internet: type tofuenv use
command -> press tab -> the list of currently installed versions is printed, so you could choose one of them
with internet: - the same, but with tofuenv install
command
Is your feature request related to a problem? Please describe.
Now only tofuenv --help
command returns valid output with the explanation of possible commands. tofuenv install --help
command returns: `No versions matching '--help' found in remote'.
Describe the solution you'd like
tofuenv install --help
and other tofuenv commands return valid explanation when --help
flag is passed.
Please replicate this feature from tfswitch
. https://tfswitch.warrensbox.com/Quick-Start/#use-tfswitchrc-file
Describe the bug
When trying to install Opentofu using tofuenv, the installation fails:
$ tofuenv install
Installing OpenTofu v1.6.1
Downloading release tarball from https://github.com/opentofu/opentofu/releases/download/v1.6.1/tofu_1.6.1_darwin_arm64.zip
######################################################################### 100.0%
Downloading SHA hash file from https://github.com/opentofu/opentofu/releases/download/v1.6.1/tofu_1.6.1_SHA256SUMS
Downloading SHA hash signature file from https://github.com/opentofu/opentofu/releases/download/v1.6.1/tofu_1.6.1_SHA256SUMS.sig
▶ ERROR openpgp: invalid data: tag byte does not have MSB set
SHA256SUMS signature does not match!
The same error occurs if I try to install an older version:
$ tofuenv install 1.6.0
Installing OpenTofu v1.6.0
Downloading release tarball from https://github.com/opentofu/opentofu/releases/download/v1.6.0/tofu_1.6.0_darwin_arm64.zip
######################################################################### 100.0%
Downloading SHA hash file from https://github.com/opentofu/opentofu/releases/download/v1.6.0/tofu_1.6.0_SHA256SUMS
Downloading SHA hash signature file from https://github.com/opentofu/opentofu/releases/download/v1.6.0/tofu_1.6.0_SHA256SUMS.sig
▶ ERROR openpgp: invalid data: tag byte does not have MSB set
SHA256SUMS signature does not match!
To Reproduce
Run tofuenv install
.
Expected behavior
Running tofuenv install
should install Opentofu successfully.
Environment (please complete the following information):
Additional context
I have jq, gnupg and grep installed. Adding 'yes' to use-gpgv did not help.
Please replicate this feature from tfswitch
. https://tfswitch.warrensbox.com/Quick-Start/#install-latest-implicit-version-for-beta-alpha-and-release-candidatesrc
Helps with testing Terraform code/modules against upcoming releases in a CI pipeline.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.