Skip to content

Commit a058652

Browse files
Combine documentation structure from PR #47 and PR #54
Co-Authored-By: [email protected] <[email protected]>
1 parent 1357618 commit a058652

File tree

4 files changed

+626
-26
lines changed

4 files changed

+626
-26
lines changed

.vitepress/config.mts

Lines changed: 61 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -28,44 +28,79 @@ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
2828
text: 'Getting Started',
2929
collapsed: false,
3030
items: [
31-
{ text: 'ImmyBot Overview', link: '/immybot-overview' },
31+
{ text: 'Introduction to ImmyBot', link: '/introduction' },
3232
{ text: 'Quick Start Guide', link: '/quick-start-guide' },
3333
{ text: 'First Computer Setup', link: '/first-computer-setup' },
3434
{ text: 'Core Concepts', link: '/core-concepts' },
3535
{ text: 'Common Workflows', link: '/common-workflows' },
36+
{ text: 'System Requirements', link: '/system-requirements' },
3637
],
3738
},
3839
{
39-
text: 'User Guides',
40+
text: 'Core Features',
4041
collapsed: false,
4142
items: [
42-
{ text: 'Managing Computers', link: '/managing-computers' },
43+
{ text: 'Tenants & Organizations', link: '/tenants-organizations' },
44+
{ text: 'Computers & Inventory', link: '/computers-inventory' },
45+
{ text: 'Users & Permissions', link: '/users-permissions' },
46+
{ text: 'Software Library', link: '/software-library' },
47+
{ text: 'Maintenance Tasks', link: '/maintenance-tasks' },
48+
{ text: 'Maintenance Sessions', link: '/maintenance-sessions' },
49+
{ text: 'Deployments', link: '/deployments' },
50+
{ text: 'User Affinity', link: '/user-affinity' },
51+
{ text: 'Targets & Targeting', link: '/targets-targeting' },
52+
],
53+
},
54+
{
55+
text: 'How-To Guides',
56+
collapsed: false,
57+
items: [
58+
{ text: 'Creating & Managing Deployments', link: '/creating-managing-deployments' },
4359
{ text: 'Managing Software', link: '/managing-software' },
44-
{ text: 'Creating Deployments', link: '/creating-deployments' },
4560
{ text: 'Working with Tasks', link: '/working-with-tasks' },
61+
{ text: 'Computer Onboarding', link: '/computer-onboarding' },
62+
{ text: 'Agent Installation', link: '/agent-installation' },
4663
{ text: 'User Management', link: '/add-users' },
47-
{ text: 'Recommended Configurations', link: '/recommended-deployments' },
64+
{ text: 'Recommended Deployments', link: '/recommended-deployments' },
4865
],
4966
},
5067
{
5168
text: 'Integrations',
52-
collapsed: false,
69+
collapsed: true,
5370
items: [
5471
{ text: 'Integration Overview', link: '/integration-overview' },
5572
{ text: 'Build Your Own', link: '/build-your-own-integration' },
56-
{ text: 'ConnectSecure', link: '/connectsecure-integration-setup' },
57-
{ text: 'ConnectWise Automate', link: '/connectwise-automate-integration-setup' },
58-
{ text: 'ConnectWise Control', link: '/connectwise-control-integration-setup' },
59-
{ text: 'ConnectWise Manage', link: '/connectwise-manage-integration-setup' },
60-
{ text: 'N-Central', link: '/ncentral-integration-setup' },
61-
{ text: 'NinjaRMM', link: '/ninjarmm-integration-setup' },
62-
{ text: 'HaloPSA', link: '/halo-integration-setup' },
63-
{ text: 'Azure', link: '/azure-graph-permissions-setup' },
73+
{
74+
text: 'RMM Integrations',
75+
collapsed: true,
76+
items: [
77+
{ text: 'ConnectWise Automate', link: '/connectwise-automate-integration-setup' },
78+
{ text: 'ConnectWise Control', link: '/connectwise-control-integration-setup' },
79+
{ text: 'N-Central', link: '/ncentral-integration-setup' },
80+
{ text: 'NinjaRMM', link: '/ninjarmm-integration-setup' },
81+
]
82+
},
83+
{
84+
text: 'PSA Integrations',
85+
collapsed: true,
86+
items: [
87+
{ text: 'ConnectWise Manage', link: '/connectwise-manage-integration-setup' },
88+
{ text: 'HaloPSA', link: '/halo-integration-setup' },
89+
]
90+
},
91+
{
92+
text: 'Other Integrations',
93+
collapsed: true,
94+
items: [
95+
{ text: 'Azure', link: '/azure-graph-permissions-setup' },
96+
{ text: 'ConnectSecure', link: '/connectsecure-integration-setup' },
97+
]
98+
},
6499
],
65100
},
66101
{
67102
text: 'Administration',
68-
collapsed: false,
103+
collapsed: true,
69104
items: [
70105
{ text: 'User Roles and Security', link: '/user-roles' },
71106
{ text: 'Tenant Management', link: '/tenant-management' },
@@ -74,26 +109,26 @@ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
74109
],
75110
},
76111
{
77-
text: 'Troubleshooting',
78-
collapsed: false,
112+
text: 'Advanced Topics',
113+
collapsed: true,
79114
items: [
80-
{ text: 'Common Issues', link: '/common-issues' },
81-
{ text: 'Security Software Configuration', link: '/security-software' },
82-
{ text: 'Agent Troubleshooting', link: '/troubleshooting' },
115+
{ text: 'Scripting Guide', link: '/scripts' },
116+
{ text: 'Metascripts / Cloud Scripts', link: '/immy-commands' },
117+
{ text: 'Deployment Resolution', link: '/deployment-resolution' },
83118
],
84119
},
85120
{
86-
text: 'Advanced Topics',
87-
collapsed: false,
121+
text: 'Troubleshooting',
122+
collapsed: true,
88123
items: [
89-
{ text: 'Scripting Guide', link: '/scripts' },
90-
{ text: 'Metascripts / Cloud Scripts', link: '/immy-commands' },
91-
{ text: 'Custom Integrations', link: '/custom-integrations' },
124+
{ text: 'Common Issues', link: '/common-issues' },
125+
{ text: 'Security Software Configuration', link: '/security-software' },
126+
{ text: 'Agent Troubleshooting', link: '/troubleshooting' },
92127
],
93128
},
94129
{
95130
text: 'Reference',
96-
collapsed: false,
131+
collapsed: true,
97132
items: [
98133
{ text: 'Terminology', link: '/terminology' },
99134
{ text: 'API Documentation', link: '/api-documentation' },

creating-managing-deployments.md

Lines changed: 246 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,246 @@
1+
# Creating and Managing Deployments
2+
3+
This guide walks you through the process of creating and managing deployments in ImmyBot, from basic setup to advanced configurations.
4+
5+
## Understanding Deployments
6+
7+
Deployments are the core building blocks of ImmyBot. They define what should be installed or configured on which computers. A deployment consists of:
8+
9+
1. **Content**: The software or task to deploy
10+
2. **Targets**: The computers or users that should receive the deployment
11+
3. **Enforcement Type**: How strictly the deployment should be applied
12+
4. **Settings**: Additional configuration options
13+
14+
```mermaid
15+
graph TD
16+
A[Deployment] -->|contains| B[Content]
17+
A -->|contains| C[Targets]
18+
A -->|contains| D[Enforcement Type]
19+
A -->|contains| E[Settings]
20+
B -->|can be| F[Software]
21+
B -->|can be| G[Task]
22+
C -->|can be| H[Computers]
23+
C -->|can be| I[Users]
24+
C -->|can be| J[Groups]
25+
C -->|can be| K[Filter Scripts]
26+
D -->|can be| L[Required]
27+
D -->|can be| M[Optional]
28+
D -->|can be| N[Onboarding]
29+
D -->|can be| O[Ad Hoc]
30+
```
31+
32+
## Creating a Basic Deployment
33+
34+
### Step 1: Navigate to Deployments
35+
36+
1. Log in to your ImmyBot instance
37+
2. Click on **Deployments** in the left navigation menu
38+
3. Click **New** to create a new deployment
39+
40+
![Deployments Page](https://user-images.githubusercontent.com/1424395/173595097-f975123b-217f-42ef-aa47-2b816a5593b6.png)
41+
42+
### Step 2: Select Content Type
43+
44+
Choose the type of content you want to deploy:
45+
46+
- **Software**: Install or uninstall an application
47+
- **Task**: Run a script or configuration task
48+
49+
For software deployments:
50+
1. Select **Software** as the content type
51+
2. Search for the software you want to deploy
52+
3. Select the desired version (or choose "Latest" to always use the newest version)
53+
54+
For task deployments:
55+
1. Select **Task** as the content type
56+
2. Search for the task you want to run
57+
3. Configure any parameters required by the task
58+
59+
### Step 3: Configure Enforcement Type
60+
61+
Select how strictly the deployment should be enforced:
62+
63+
- **Required**: Automatically installed during maintenance
64+
- **Optional**: Available for manual installation
65+
- **Onboarding**: Applied only during computer onboarding
66+
- **Ad Hoc**: Only run when explicitly triggered
67+
68+
### Step 4: Select Targets
69+
70+
Define which computers should receive this deployment:
71+
72+
1. Click **Add Target**
73+
2. Choose a target type:
74+
- **All Computers**: Apply to every computer
75+
- **Computer Group**: Apply to a specific group of computers
76+
- **Computer**: Apply to a specific computer
77+
- **Tenant**: Apply to all computers in a tenant
78+
- **Filter Script**: Apply based on script results
79+
80+
3. Configure the selected target type
81+
4. Add additional targets if needed
82+
83+
### Step 5: Configure Additional Settings
84+
85+
Depending on the content type, you may have additional settings to configure:
86+
87+
- **Desired State**: Whether the software should be installed or uninstalled
88+
- **Visibility**: Where the deployment should be visible (Self-Service Portal, Technician Tools)
89+
- **Schedule**: When the deployment should be applied
90+
- **Dependencies**: Other deployments that must be applied first
91+
- **Supersedence**: Deployments that this deployment replaces
92+
93+
### Step 6: Save the Deployment
94+
95+
1. Review your deployment configuration
96+
2. Click **Create** to save the deployment
97+
98+
## Managing Existing Deployments
99+
100+
### Viewing Deployments
101+
102+
1. Navigate to **Deployments** in the left menu
103+
2. Use the search and filter options to find specific deployments
104+
3. Click on a deployment to view its details
105+
106+
### Editing Deployments
107+
108+
1. Navigate to the deployment you want to edit
109+
2. Click **Edit** in the top right corner
110+
3. Make your changes
111+
4. Click **Save** to update the deployment
112+
113+
### Disabling Deployments
114+
115+
To temporarily disable a deployment without deleting it:
116+
117+
1. Navigate to the deployment
118+
2. Click **Edit**
119+
3. Toggle the **Enabled** switch to Off
120+
4. Click **Save**
121+
122+
### Deleting Deployments
123+
124+
1. Navigate to the deployment you want to delete
125+
2. Click **Delete** in the top right corner
126+
3. Confirm the deletion
127+
128+
## Advanced Deployment Configurations
129+
130+
### Using Filter Scripts
131+
132+
Filter scripts allow you to dynamically determine which computers should receive a deployment based on custom criteria:
133+
134+
1. When adding a target, select **Filter Script**
135+
2. Choose an existing filter script or create a new one
136+
3. Configure any parameters for the script
137+
138+
Example filter script (checks if computer has sufficient disk space):
139+
140+
```powershell
141+
param(
142+
[Parameter(Mandatory=$true)]
143+
[int]$RequiredSpaceGB
144+
)
145+
146+
$systemDrive = Get-WmiObject Win32_LogicalDisk -Filter "DeviceID='C:'"
147+
$freeSpaceGB = [math]::Round($systemDrive.FreeSpace / 1GB, 2)
148+
149+
if ($freeSpaceGB -ge $RequiredSpaceGB) {
150+
return $true
151+
} else {
152+
return $false
153+
}
154+
```
155+
156+
### Deployment Dependencies
157+
158+
Dependencies ensure that deployments are applied in the correct order:
159+
160+
1. When creating or editing a deployment, go to the **Dependencies** section
161+
2. Click **Add Dependency**
162+
3. Select the deployment that must be applied first
163+
4. Configure the dependency type:
164+
- **Hard**: The dependent deployment must succeed
165+
- **Soft**: The dependent deployment must run, but can fail
166+
167+
### Supersedence
168+
169+
Supersedence allows you to replace older deployments with newer ones:
170+
171+
1. When creating or editing a deployment, go to the **Supersedence** section
172+
2. Click **Add Superseded Deployment**
173+
3. Select the deployment that this new deployment replaces
174+
4. The superseded deployment will be automatically disabled when this deployment is enabled
175+
176+
## Best Practices
177+
178+
### Naming Conventions
179+
180+
Use clear, descriptive names for your deployments:
181+
182+
- Include the software name and version
183+
- Indicate the target audience if specific
184+
- Use prefixes for organization (e.g., "SW:" for software, "TASK:" for tasks)
185+
186+
Examples:
187+
- "SW: Google Chrome - All Users"
188+
- "TASK: Configure Windows Settings - Accounting"
189+
190+
### Targeting Strategy
191+
192+
- Start with smaller, specific targets before expanding to larger groups
193+
- Use filter scripts for complex targeting scenarios
194+
- Test deployments on a small group before applying to all computers
195+
196+
### Maintenance Windows
197+
198+
For disruptive deployments:
199+
200+
1. Create a maintenance window by editing the deployment
201+
2. Under **Schedule**, set specific days and times
202+
3. Configure notification settings to alert users
203+
204+
### Testing Deployments
205+
206+
Before deploying to production:
207+
208+
1. Create a test deployment with a limited target (e.g., a test computer)
209+
2. Run a maintenance session to apply the deployment
210+
3. Verify that the deployment works as expected
211+
4. Monitor for any issues or errors
212+
5. Expand the target to include production computers
213+
214+
## Troubleshooting
215+
216+
### Deployment Not Applying
217+
218+
If a deployment isn't being applied during maintenance:
219+
220+
1. Check the maintenance logs for errors
221+
2. Verify that the computer matches the target criteria
222+
3. Ensure the deployment is enabled
223+
4. Check for dependencies that might be failing
224+
5. Verify the enforcement type is set correctly
225+
226+
### Software Installation Failures
227+
228+
If software installations are failing:
229+
230+
1. Check the installation logs in the maintenance session
231+
2. Verify that the installation source is accessible
232+
3. Test the installation manually on a test computer
233+
4. Check for conflicts with existing software
234+
5. Verify that the computer meets the system requirements
235+
236+
## Related Topics
237+
238+
- [Deployment Resolution](./deployment-resolution.md)
239+
- [Targets & Targeting](./targets-targeting.md)
240+
- [Maintenance Sessions](./maintenance-sessions.md)
241+
- [Software Library](./software-library.md)
242+
- [Maintenance Tasks](./maintenance-tasks.md)
243+
244+
---
245+
246+
**Next Steps:** [Deployment Resolution →](./deployment-resolution.md) | [Targets & Targeting →](./targets-targeting.md)

0 commit comments

Comments
 (0)