55 lines
925 B
Markdown
55 lines
925 B
Markdown
# MyJob Scheduled Plugin
|
|
|
|
A StellaOps scheduled job plugin template.
|
|
|
|
## Getting Started
|
|
|
|
1. Update the `MyJobOptions.cs` with your job-specific configuration
|
|
2. Implement the job logic in `MyJob.cs`
|
|
3. Build and sign your plugin
|
|
|
|
## Configuration
|
|
|
|
Add the following to your `appsettings.json`:
|
|
|
|
```json
|
|
{
|
|
"Plugins": {
|
|
"MyJob": {
|
|
"Enabled": true,
|
|
"CronSchedule": "0 0 * * *",
|
|
"MaxExecutionMinutes": 60,
|
|
"BatchSize": 100,
|
|
"ContinueOnError": false
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Cron Schedule Examples
|
|
|
|
- `0 0 * * *` - Daily at midnight
|
|
- `0 */6 * * *` - Every 6 hours
|
|
- `0 0 * * 0` - Weekly on Sunday at midnight
|
|
- `0 0 1 * *` - Monthly on the 1st at midnight
|
|
|
|
## Building
|
|
|
|
```bash
|
|
dotnet build -c Release
|
|
```
|
|
|
|
## Signing
|
|
|
|
For production use, sign your plugin with Cosign:
|
|
|
|
```bash
|
|
cosign sign --key $COSIGN_KEY bin/Release/net10.0/StellaOps.Plugin.MyJob.dll
|
|
```
|
|
|
|
## Testing
|
|
|
|
```bash
|
|
dotnet test
|
|
```
|