Workshop wiki · English

Provider Requirements (EN)

This detail document describes example 03-providers-requirements. Focus: Provider-Source, Version Constraint und Konfiguration.

Workshop examples as ZIP files
Learning progress in the web app

Mark chapters as read, view reading progress and check off practice modules after enabling the optional web app. Workshop progress is calculated from chapters across all document pages. Your choices stay on this device; there is no account or server sync. Installation is not required. Withdrawing your choice in Privacy settings deletes the progress.

Reading progress0%
0%
0 / 7 chapters read
Other language versionGerman ↗Greek ↗

Provider Requirements (EN)

This detail document describes example 03-providers-requirements. Focus: Provider-Source, Version Constraint und Konfiguration.

Learning Goals

  • Name OpenTofu states before changing anything.
  • Separate root module, provider, backend and state impact.
  • Distinguish local validation from real cloud execution.
  • Store evidence in a traceable way.
  • Document drift, rollback and security boundaries.
01 / 07

Flow

  1. Open the files in the example directory.
  2. Read commands.sh before executing commands blindly.
  3. Run ./run.sh and inspect work/evidence/.
  4. Compare log-graph.txt, variable-diff.txt, status.txt and static validation results.
  5. Explain what a real remote backend or TACOS would additionally verify.
02 / 07

Expected Observations

  • Observation 01: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 02: Check Root module and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 03: Check Provider and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 04: Check State and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 05: Check Backend and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 06: Check Plan and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 07: Check Secret boundary and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 08: Check Recovery and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 09: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 10: Check Root module and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 11: Check Provider and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 12: Check State and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 13: Check Backend and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 14: Check Plan and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 15: Check Secret boundary and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 16: Check Recovery and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 17: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 18: Check Root module and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 19: Check Provider and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 20: Check State and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 21: Check Backend and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 22: Check Plan and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 23: Check Secret boundary and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 24: Check Recovery and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 25: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 26: Check Root module and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 27: Check Provider and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 28: Check State and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 29: Check Backend and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 30: Check Plan and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 31: Check Secret boundary and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 32: Check Recovery and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 33: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 34: Check Root module and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 35: Check Provider and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 36: Check State and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 37: Check Backend and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 38: Check Plan and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 39: Check Secret boundary and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 40: Check Recovery and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 41: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 42: Check Root module and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 43: Check Provider and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 44: Check State and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 45: Check Backend and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 46: Check Plan and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 47: Check Secret boundary and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 48: Check Recovery and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 49: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 50: Check Root module and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 51: Check Provider and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 52: Check State and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 53: Check Backend and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 54: Check Plan and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 55: Check Secret boundary and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 56: Check Recovery and record which OpenTofu-adjacent evidence makes the observation reliable.
  • Observation 57: Check Provider-Source, Version Constraint und Konfiguration and record which OpenTofu-adjacent evidence makes the observation reliable.
03 / 07

Review Checklist for Example Provider Requirements

  • 01. document configuration and desired state: record which module, provider, resource, state and backend path are affected.
  • 02. check provider requirement: record which module, provider, resource, state and backend path are affected.
  • 03. explain state impact: record which module, provider, resource, state and backend path are affected.
  • 04. assess plan diff: record which module, provider, resource, state and backend path are affected.
  • 05. describe backend and locking model: record which module, provider, resource, state and backend path are affected.
  • 06. check module boundary: record which module, provider, resource, state and backend path are affected.
  • 07. assess variable and output: record which module, provider, resource, state and backend path are affected.
  • 08. prove drift: record which module, provider, resource, state and backend path are affected.
  • 09. mark secret risk: record which module, provider, resource, state and backend path are affected.
  • 10. name policy or CI gate: record which module, provider, resource, state and backend path are affected.
  • 11. write down rollback or recovery path: record which module, provider, resource, state and backend path are affected.
  • 12. state a team rule: record which module, provider, resource, state and backend path are affected.
  • 13. document configuration and desired state: record which module, provider, resource, state and backend path are affected.
  • 14. check provider requirement: record which module, provider, resource, state and backend path are affected.
  • 15. explain state impact: record which module, provider, resource, state and backend path are affected.
  • 16. assess plan diff: record which module, provider, resource, state and backend path are affected.
  • 17. describe backend and locking model: record which module, provider, resource, state and backend path are affected.
  • 18. check module boundary: record which module, provider, resource, state and backend path are affected.
  • 19. assess variable and output: record which module, provider, resource, state and backend path are affected.
  • 20. prove drift: record which module, provider, resource, state and backend path are affected.
  • 21. mark secret risk: record which module, provider, resource, state and backend path are affected.
  • 22. name policy or CI gate: record which module, provider, resource, state and backend path are affected.
  • 23. write down rollback or recovery path: record which module, provider, resource, state and backend path are affected.
  • 24. state a team rule: record which module, provider, resource, state and backend path are affected.
  • 25. document configuration and desired state: record which module, provider, resource, state and backend path are affected.
  • 26. check provider requirement: record which module, provider, resource, state and backend path are affected.
  • 27. explain state impact: record which module, provider, resource, state and backend path are affected.
  • 28. assess plan diff: record which module, provider, resource, state and backend path are affected.
  • 29. describe backend and locking model: record which module, provider, resource, state and backend path are affected.
  • 30. check module boundary: record which module, provider, resource, state and backend path are affected.
  • 31. assess variable and output: record which module, provider, resource, state and backend path are affected.
  • 32. prove drift: record which module, provider, resource, state and backend path are affected.
  • 33. mark secret risk: record which module, provider, resource, state and backend path are affected.
  • 34. name policy or CI gate: record which module, provider, resource, state and backend path are affected.
04 / 07

Practice Appendix: Example Provider Requirements

This appendix provides a backlog for longer trainings, reviews and repetition. Each task is small enough to verify with local HCL artifacts and a Git repository.

A001. Provider-Source, Version Constraint und Konfiguration

  • Task: document configuration and desired state and explicitly relate the observation to Provider-Source, Version Constraint und Konfiguration.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A002. OpenTofu CLI

  • Task: check provider requirement and explicitly relate the observation to OpenTofu CLI.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A003. HCL

  • Task: explain state impact and explicitly relate the observation to HCL.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A004. Provider

  • Task: assess plan diff and explicitly relate the observation to Provider.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A005. State

  • Task: describe backend and locking model and explicitly relate the observation to State.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A006. Backend

  • Task: check module boundary and explicitly relate the observation to Backend.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A007. Policy

  • Task: assess variable and output and explicitly relate the observation to Policy.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A008. Secrets

  • Task: prove drift and explicitly relate the observation to Secrets.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A009. Provider-Source, Version Constraint und Konfiguration

  • Task: mark secret risk and explicitly relate the observation to Provider-Source, Version Constraint und Konfiguration.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A010. OpenTofu CLI

  • Task: name policy or CI gate and explicitly relate the observation to OpenTofu CLI.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A011. HCL

  • Task: write down rollback or recovery path and explicitly relate the observation to HCL.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A012. Provider

  • Task: state a team rule and explicitly relate the observation to Provider.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A013. State

  • Task: document configuration and desired state and explicitly relate the observation to State.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A014. Backend

  • Task: check provider requirement and explicitly relate the observation to Backend.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A015. Policy

  • Task: explain state impact and explicitly relate the observation to Policy.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A016. Secrets

  • Task: assess plan diff and explicitly relate the observation to Secrets.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A017. Provider-Source, Version Constraint und Konfiguration

  • Task: describe backend and locking model and explicitly relate the observation to Provider-Source, Version Constraint und Konfiguration.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A018. OpenTofu CLI

  • Task: check module boundary and explicitly relate the observation to OpenTofu CLI.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A019. HCL

  • Task: assess variable and output and explicitly relate the observation to HCL.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A020. Provider

  • Task: prove drift and explicitly relate the observation to Provider.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A021. State

  • Task: mark secret risk and explicitly relate the observation to State.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A022. Backend

  • Task: name policy or CI gate and explicitly relate the observation to Backend.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A023. Policy

  • Task: write down rollback or recovery path and explicitly relate the observation to Policy.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A024. Secrets

  • Task: state a team rule and explicitly relate the observation to Secrets.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A025. Provider-Source, Version Constraint und Konfiguration

  • Task: document configuration and desired state and explicitly relate the observation to Provider-Source, Version Constraint und Konfiguration.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A026. OpenTofu CLI

  • Task: check provider requirement and explicitly relate the observation to OpenTofu CLI.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A027. HCL

  • Task: explain state impact and explicitly relate the observation to HCL.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A028. Provider

  • Task: assess plan diff and explicitly relate the observation to Provider.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A029. State

  • Task: describe backend and locking model and explicitly relate the observation to State.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A030. Backend

  • Task: check module boundary and explicitly relate the observation to Backend.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A031. Policy

  • Task: assess variable and output and explicitly relate the observation to Policy.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A032. Secrets

  • Task: prove drift and explicitly relate the observation to Secrets.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A033. Provider-Source, Version Constraint und Konfiguration

  • Task: mark secret risk and explicitly relate the observation to Provider-Source, Version Constraint und Konfiguration.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A034. OpenTofu CLI

  • Task: name policy or CI gate and explicitly relate the observation to OpenTofu CLI.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A035. HCL

  • Task: write down rollback or recovery path and explicitly relate the observation to HCL.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A036. Provider

  • Task: state a team rule and explicitly relate the observation to Provider.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A037. State

  • Task: document configuration and desired state and explicitly relate the observation to State.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A038. Backend

  • Task: check provider requirement and explicitly relate the observation to Backend.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A039. Policy

  • Task: explain state impact and explicitly relate the observation to Policy.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A040. Secrets

  • Task: assess plan diff and explicitly relate the observation to Secrets.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A041. Provider-Source, Version Constraint und Konfiguration

  • Task: describe backend and locking model and explicitly relate the observation to Provider-Source, Version Constraint und Konfiguration.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A042. OpenTofu CLI

  • Task: check module boundary and explicitly relate the observation to OpenTofu CLI.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A043. HCL

  • Task: assess variable and output and explicitly relate the observation to HCL.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A044. Provider

  • Task: prove drift and explicitly relate the observation to Provider.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A045. State

  • Task: mark secret risk and explicitly relate the observation to State.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A046. Backend

  • Task: name policy or CI gate and explicitly relate the observation to Backend.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A047. Policy

  • Task: write down rollback or recovery path and explicitly relate the observation to Policy.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.

A048. Secrets

  • Task: state a team rule and explicitly relate the observation to Secrets.
  • Evidence: Write down at least one OpenTofu-adjacent command, one expected result and one limit of that evidence.
  • Operations question: What would a wrong assumption change in dev, staging, prod and CI?
  • Security question: Which credentials, state values, provider versions or outputs would be critical?
  • Recovery: Explain whether revert, state operation, import, backend restore, secret rotation or manual provider correction is required.
05 / 07

Official Sources and Scope

The material is aligned with public OpenTofu documentation. Cloud providers, TACOS platforms, policy engines and secret tools are mentioned only where they explain common OpenTofu workflows. Example artifacts are not instructions to execute against production cloud accounts.

  • OpenTofu: https://opentofu.org/
  • OpenTofu Language Documentation: https://opentofu.org/docs/language/
  • Provider Requirements: https://opentofu.org/docs/language/providers/requirements/
  • State: https://opentofu.org/docs/language/state/
  • Backend Configuration: https://opentofu.org/docs/language/settings/backends/configuration/
  • OpenTofu v1.x Compatibility Promises: https://opentofu.org/docs/language/v1-compatibility-promises/
  • OpenTofu at CNCF: https://www.cncf.io/projects/opentofu/
  • Linux Foundation: Getting Started with OpenTofu: https://training.linuxfoundation.org/express-learning/getting-started-with-opentofu-lfel1009/
  • Linux Foundation Certification Catalog: https://training.linuxfoundation.org/certification-catalog/
06 / 07

Additional Review Drills

Use these drills when the primary task is complete and the learner needs another pass over operational reasoning. They are intentionally evidence-oriented and can be answered with local OpenTofu artifacts.

Drill 01: root module

  • State which module, provider, backend or state boundary is affected by root module.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 02: provider version

  • State which module, provider, backend or state boundary is affected by provider version.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 03: state snapshot

  • State which module, provider, backend or state boundary is affected by state snapshot.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 04: backend locking

  • State which module, provider, backend or state boundary is affected by backend locking.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 05: plan diff

  • State which module, provider, backend or state boundary is affected by plan diff.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 06: module output

  • State which module, provider, backend or state boundary is affected by module output.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 07: sensitive value

  • State which module, provider, backend or state boundary is affected by sensitive value.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 08: policy gate

  • State which module, provider, backend or state boundary is affected by policy gate.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 09: import

  • State which module, provider, backend or state boundary is affected by import.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 10: moved block

  • State which module, provider, backend or state boundary is affected by moved block.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 11: TACOS run

  • State which module, provider, backend or state boundary is affected by TACOS run.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 12: recovery

  • State which module, provider, backend or state boundary is affected by recovery.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 13: root module

  • State which module, provider, backend or state boundary is affected by root module.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 14: provider version

  • State which module, provider, backend or state boundary is affected by provider version.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 15: state snapshot

  • State which module, provider, backend or state boundary is affected by state snapshot.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.

Drill 16: backend locking

  • State which module, provider, backend or state boundary is affected by backend locking.
  • Name one command or HCL field that produces evidence.
  • Explain what can be concluded from that evidence and what cannot be concluded from it.
  • Describe the safest recovery path for a shared IaC platform.
07 / 07

TOF · Orthevs Academy

31 modules as one continuous learning path.

The sequence remains unchanged: from the lab skeleton through technical foundations and operating models to final troubleshooting. The technical directory names are deliberately preserved.

Orthevs – Engineering the foundation for what comes next.

Orthevs as an app

Install Orthevs

The Orthevs web app can be installed on supported mobile devices and desktop browsers.

iPhone and iPad

Open Orthevs in Safari. Tap Share, then Add to Home Screen. Enable Open as Web App if offered, then tap Add.

Android

For the web app, open the browser menu and choose Install app or Add to Home screen. Confirm the installation.

Desktop browser

Open the browser menu or the install icon in the address bar, then choose Install app or Add to Dock.

Web app installation depends on your browser. If no install prompt appears, follow the browser steps shown above.