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 - ..