Skip to content

Commit 54217da

Browse files
committed
docs: fix E2E test binary names and repository structure in README
- Update all references from e2e-tests-full to e2e-complete-workflow-tests - Fix Repository Structure section to match actual directories: - build/: e2e-complete, e2e-deployment, e2e-infrastructure, manual-test-* - data/: e2e-complete, e2e-deployment, e2e-infrastructure, manual-test-* - Update GitHub Actions workflow names in Testing section: - test-e2e-infrastructure.yml for infrastructure tests - test-e2e-deployment.yml for deployment tests - Remove non-existent examples/ directory from structure - Add missing envs/ directory to structure - Fix all manual testing command examples and paths - Update LXD instance and profile names to match current conventions
1 parent e5f1f92 commit 54217da

File tree

1 file changed

+29
-26
lines changed

1 file changed

+29
-26
lines changed

README.md

Lines changed: 29 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -179,14 +179,14 @@ cargo run --bin e2e-infrastructure-lifecycle-tests -- --keep
179179
cargo 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
277277
tofu plan -var-file=variables.tfvars # ✅ Verified: Works with resolved templates
278278
tofu validate # Validate configuration
279279
tofu 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
283283
ansible-playbook --list-hosts -i inventory.yml wait-cloud-init.yml # ✅ Verified: Works
284284
ansible-playbook -i inventory.yml wait-cloud-init.yml # Run playbook
285285
ansible-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/
303303
tofu 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

Comments
 (0)