@@ -179,14 +179,14 @@ cargo run --bin e2e-infrastructure-lifecycle-tests -- --keep
179179cargo run --bin e2e-complete-workflow-tests -- --templates-dir ./custom/templates
180180
181181# See all available options
182- cargo run --bin e2e-tests-full -- --help
182+ cargo run --bin e2e-complete-workflow-tests -- --help
183183```
184184
185185> ** ⚠️ Important Notes:**
186186>
187187> - E2E tests create ** hardcoded environments** with predefined configurations
188188> - Use ` --keep ` flag to inspect generated ` data/ ` and ` build/ ` directories after tests
189- > - ` e2e-tests-full ` can ** only run locally** due to connectivity issues in GitHub runners
189+ > - ` e2e-complete-workflow-tests ` can ** only run locally** due to connectivity issues in GitHub runners
190190> - To see final OpenTofu and Ansible templates, check ` build/ ` directories after running with ` --keep `
191191
192192### 📖 Manual Deployment Steps
@@ -249,37 +249,37 @@ If you want to experiment with OpenTofu and Ansible commands directly using the
249249
250250` ` ` bash
251251# Run E2E tests but keep the infrastructure for manual experimentation
252- cargo run --bin e2e-tests-full -- --keep
252+ cargo run --bin e2e-complete-workflow-tests -- --keep
253253
254254# This creates resolved templates (no variables) in build/ directories
255- # ✅ Verified: Creates build/e2e-full /tofu/lxd/ and build/e2e-full /ansible/
255+ # ✅ Verified: Creates build/e2e-complete /tofu/lxd/ and build/e2e-complete /ansible/
256256```
257257
258258#### 2️⃣ Navigate to Generated Templates
259259
260260``` bash
261261# Navigate to the specific environment's resolved OpenTofu templates
262- cd build/e2e-full /tofu/lxd/
262+ cd build/e2e-complete /tofu/lxd/
263263
264264# Or navigate to resolved Ansible templates
265- cd build/e2e-full /ansible/
265+ cd build/e2e-complete /ansible/
266266
267267# Other available environments:
268- # cd build/e2e-provision /tofu/lxd/
269- # cd build/e2e-provision /ansible/
270- # cd build/e2e-config /ansible/ # (config tests don't create tofu resources)
268+ # cd build/e2e-infrastructure /tofu/lxd/
269+ # cd build/e2e-infrastructure /ansible/
270+ # cd build/e2e-deployment /ansible/
271271```
272272
273273#### 3️⃣ Execute Commands Manually
274274
275275``` bash
276- # From build/e2e-full /tofu/lxd/ - Execute OpenTofu commands
276+ # From build/e2e-complete /tofu/lxd/ - Execute OpenTofu commands
277277tofu plan -var-file=variables.tfvars # ✅ Verified: Works with resolved templates
278278tofu validate # Validate configuration
279279tofu output -json # View current outputs
280280# Note: tofu apply already executed during E2E test
281281
282- # From build/e2e-full /ansible/ - Execute Ansible commands
282+ # From build/e2e-complete /ansible/ - Execute Ansible commands
283283ansible-playbook --list-hosts -i inventory.yml wait-cloud-init.yml # ✅ Verified: Works
284284ansible-playbook -i inventory.yml wait-cloud-init.yml # Run playbook
285285ansible-playbook -i inventory.yml install-docker.yml # Install Docker
@@ -289,23 +289,23 @@ ansible-playbook -i inventory.yml install-docker.yml # Install Doc
289289
290290``` bash
291291# Connect to the running LXD instance directly
292- lxc exec torrust-tracker-vm-e2e-full -- /bin/bash
292+ lxc exec torrust-tracker-vm-e2e-complete -- /bin/bash
293293
294294# Or via SSH (IP may vary, check tofu output)
295- ssh -i fixtures/testing_rsa torrust@$( cd build/e2e-full /tofu/lxd && tofu output -json | jq -r ' .instance_info.value.ip_address' )
295+ ssh -i fixtures/testing_rsa torrust@$( cd build/e2e-complete /tofu/lxd && tofu output -json | jq -r ' .instance_info.value.ip_address' )
296296```
297297
298298#### 5️⃣ Destroy Infrastructure
299299
300300``` bash
301301# ✅ Verified: Destroy the infrastructure when done experimenting
302- cd build/e2e-full /tofu/lxd/
302+ cd build/e2e-complete /tofu/lxd/
303303tofu destroy -var-file=variables.tfvars -auto-approve
304304
305305# ✅ Verified: This removes both the VM instance and the LXD profile
306306# Alternative: Use LXD commands directly
307- # lxc delete torrust-tracker-vm-e2e-full --force
308- # lxc profile delete torrust-profile-e2e-full
307+ # lxc delete torrust-tracker-vm-e2e-complete --force
308+ # lxc profile delete torrust-profile-e2e-complete
309309```
310310
311311> ** ⚠️ Important:** Currently there's no application command to destroy infrastructure manually. You must use either:
@@ -338,11 +338,11 @@ The repository includes comprehensive GitHub Actions workflows for CI testing:
338338
339339- ** ` .github/workflows/linting.yml ` ** - ** Code Quality** - Runs all linters (markdown, YAML, TOML, Rust, shell scripts)
340340- ** ` .github/workflows/testing.yml ` ** - ** Unit Tests** - Runs Rust unit tests and basic validation
341- - ** ` .github/workflows/test-e2e-config .yml ` ** - ** E2E Config Tests** - Tests configuration generation and validation
342- - ** ` .github/workflows/test-e2e-provision .yml ` ** - ** E2E Provision Tests** - Tests infrastructure provisioning workflows
341+ - ** ` .github/workflows/test-e2e-infrastructure .yml ` ** - ** E2E Infrastructure Tests** - Tests infrastructure provisioning and destruction
342+ - ** ` .github/workflows/test-e2e-deployment .yml ` ** - ** E2E Deployment Tests** - Tests software installation, configuration, release, and run workflows
343343- ** ` .github/workflows/test-lxd-provision.yml ` ** - ** LXD Provisioning** - Tests LXD VM provisioning specifically
344344
345- > ** Note:** The full E2E tests (` e2e-tests-full ` ) can only be executed locally due to connectivity issues documented in [ ` docs/github-actions-issues / ` ] ( docs/github-actions-issues / ) .
345+ > ** Note:** The complete E2E workflow tests (` e2e-complete-workflow-tests ` ) can only be executed locally due to connectivity issues documented in [ ` docs/e2e-testing / ` ] ( docs/e2e-testing / ) .
346346
347347## 🗺️ Roadmap
348348
@@ -368,13 +368,15 @@ This project follows a structured development roadmap to evolve from the current
368368├── .github/ # CI/CD workflows and GitHub configuration
369369│ └── workflows/ # GitHub Actions workflow files
370370├── build/ # 📁 Generated runtime configs (git-ignored)
371- │ ├── e2e-config/ # E2E config test runtime files
372- │ ├── e2e-full/ # E2E full test runtime files
373- │ └── e2e-provision/ # E2E provision test runtime files
371+ │ ├── e2e-complete/ # E2E complete workflow test runtime files
372+ │ ├── e2e-deployment/ # E2E deployment test runtime files
373+ │ ├── e2e-infrastructure/ # E2E infrastructure test runtime files
374+ │ └── manual-test-*/ # Manual test environment runtime files
374375├── data/ # Environment-specific data and configurations
375- │ ├── e2e-config/ # E2E config test environment data
376- │ ├── e2e-full/ # E2E full test environment data
377- │ ├── e2e-provision/ # E2E provision test environment data
376+ │ ├── e2e-complete/ # E2E complete workflow test environment data
377+ │ ├── e2e-deployment/ # E2E deployment test environment data
378+ │ ├── e2e-infrastructure/ # E2E infrastructure test environment data
379+ │ ├── manual-test-*/ # Manual test environment data
378380│ └── logs/ # Application logs
379381├── docker/ # Docker-related configurations
380382│ └── provisioned-instance/ # Docker setup for provisioned instances
@@ -397,7 +399,8 @@ This project follows a structured development roadmap to evolve from the current
397399│ ├── features/ # Feature specifications and documentation
398400│ ├── research/ # Research and analysis documents
399401│ └── *.md # Various documentation files
400- ├── examples/ # Example configurations and usage
402+ ├── envs/ # 📁 User environment configurations (git-ignored)
403+ │ └── *.json # Environment configuration files for CLI
401404├── fixtures/ # Test fixtures and sample data
402405│ ├── testing_rsa* # SSH key pair for testing
403406│ └── tofu/ # OpenTofu test fixtures
0 commit comments