Check the Terraform version from .terraform-version
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 25/100
Research direction
Start in src/devready/checks/runtimes.py, where the RUNTIMES table and the _first_version pin extractor live, then check open pull request #74 before writing anything. Also look at the explain.py entries, docs/checks.md and the existing unit tests for the other runtime pins. Done means .terraform-version with 1.7.5 gives one warn when Terraform 1.5 is installed, latest gives no pin result, and pytest, ruff check and ruff format --check all pass.
Written by the indexing model from the issue text.
Description
Problem: Terraform repos pin the CLI with .terraform-version (tfenv/tenv) or .tool-versions (terraform 1.7.5). A wrong Terraform version can rewrite state in a newer format, so it is worth catching early. DevReady does not check it.
Do:
- Add a
terraformrow toRUNTIMESinsrc/devready/checks/runtimes.py(exeterraform, argsversion,.tool-versionsnameterraform). - Pin file:
.terraform-versionwith_first_version. Values such aslatestormin-requiredmust give no result (the extractor returnsNone). Idproject.terraform.pin, miss =warn. - Add the
explain.pyentry, adocs/checks.mdrow, a CHANGELOG line, the README check list mention and unit tests (plain version,latest, missing terraform, too old).
Done when:
.terraform-version=1.7.5with Terraform 1.5 installed gives onewarn..terraform-version=latestgives no pin result.
Out of scope: required_version inside *.tf files (needs a file glob; can be a follow-up issue).
Done when: see the list above, plus pytest, ruff check and ruff format --check pass.
Notes:
- Read-only: never execute project files, never echo file contents; only a validated version or spec reaches the report.
- No network, no new runtime dependencies (Python >= 3.10 stdlib only).
- Comment below to claim it and I will assign you.
- Dominant language
- Python
- Stars
- 2
- Forks
- 3
- Avg merge
- 10h 51m
- Merged PRs (30d)
- 40
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Evalogical-Inc/devReady
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Evalogical-Inc/devReady#71 ·
Maintainers usually reply within 1 day
-
enhancement good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Evalogical-Inc/devReady#66 ·
Maintainers usually reply within 1 day
-
enhancement good first issue
Difficulty 2/5 3-5 days Newbie friendliness 72/100
Evalogical-Inc/devReady#61 ·
Maintainers usually reply within 1 day
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
Evalogical-Inc/devReady#72 ·
Maintainers usually reply within 1 day
-
Read the Java pin from .sdkmanrcPossibly taken @Utkarsh3725 claimed this today. Openenhancement good first issue help wanted
Difficulty 3/5 Half a day Newbie friendliness 74/100
Evalogical-Inc/devReady#70 ·
Maintainers usually reply within 1 day
All issues in Evalogical-Inc/devReady
Similar issues
-
Email validation accepts a trailing newlinePossibly taken @marcello-pichini claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
dbt-labs/spark-utils#51 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
bug frontend
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
vendrabuck/HERD#1419 ·
Maintainers usually reply within 1 day