Files
Fabric/plugins/template/sys.md
Matt Joyce b6eb969b3a feat(template): implement core plugin system and utility plugins
Add initial set of utility plugins for the template system:
- datetime: Date/time formatting and manipulation
- fetch: HTTP content retrieval and processing
- file: File system operations and content handling
- sys: System information and environment access
- text: String manipulation and formatting operations

Each plugin includes:
- Implementation with comprehensive test coverage
- Markdown documentation of capabilities
- Integration with template package

This builds on the template system to provide practical utility functions
while maintaining a focused scope for the initial plugin release.
2024-11-21 14:27:22 +11:00

949 B

System Plugin Tests

Simple test file for validating system plugin functionality.

Basic System Information

Hostname: {{plugin:sys:hostname}}
Username: {{plugin:sys:user}}
Operating System: {{plugin:sys:os}}
Architecture: {{plugin:sys:arch}}

Paths and Directories

Current Directory: {{plugin:sys:pwd}}
Home Directory: {{plugin:sys:home}}

Environment Variables

Path: {{plugin:sys:env:PATH}}
Home: {{plugin:sys:env:HOME}}
Shell: {{plugin:sys:env:SHELL}}

Error Cases

These should produce appropriate error messages:

Invalid Operation: {{plugin:sys:invalid}}
Missing Env Var: {{plugin:sys:env:}}
Non-existent Env Var: {{plugin:sys:env:NONEXISTENT_VAR_123456}}

Security Note

Be careful when exposing system information in templates, especially:

  • Environment variables that might contain sensitive data
  • Full paths that reveal system structure
  • Username/hostname information in public templates