Workspace
A tool built using the Peace framework must execute in a workspace – a location that Peace reads and writes information when commands are executed.
In a native automation tool, the workspace is usually the repository in which the automation is run, so the workspace directory is the repository root. In a WASM tool, Peace currently is able to store information in the browser LocalStorage or SessionStorage.
Peace Data
The following shows the file structure for data stored by Peace.
Path Segments
Hierarchy
$workspace_dir # usually the project repository
|
| # .peace, single directory to store data from tools made with Peace
|- $peace_dir
|
| # directory per tool
|- $peace_app_dir
|- 📝 $workspace_params_file
|
| # profile name, directory per profile
|- 🌏 $profile_dir
|- 📝 $profile_params_file
|
| # flow name, directory per flow
|- 🌊 $flow_dir
|- 📝 $flow_params_file
|- 📋 $states_current_file
|- 📋 $states_goal_file
Concrete Hierarchy Example
path/to/repo
|- .peace
|- envman
|- 📝 workspace_params.yaml
|
|- 🌏 internal_dev_a
| |- 📝 profile_params.yaml
| |
| |- 🌊 deploy
| | |- 📝 flow_params.yaml
| | |- 📋 states_goal.yaml
| | |- 📋 states_current.yaml
| |
| |- 🌊 config
| | |- 📝 flow_params.yaml
| | |- 📋 states_goal.yaml
| | |- 📋 states_current.yaml
| |
| |- 🌊 benchmark
| |- 📝 flow_params.yaml
| |- 📋 states_goal.yaml
| |- 📋 states_current.yaml
|
|- 🌏 customer_a_dev
| |- 📝 profile_params.yaml
| |
| |- 🌊 deploy - ..
| |- 🌊 config - ..
|
|- 🌏 customer_a_prod
|- 📝 profile_params.yaml
|
|- 🌊 deploy - ..
|- 🌊 config - ..