Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xmapst/autoexecflow
An API for cross-platform custom orchestration of execution steps without any third-party dependencies. Based on DAG, it implements the scheduling function of sequential execution of dependent steps and concurrent execution of non-dependent steps.
https://github.com/xmapst/autoexecflow
batch-script cicd dag executor golang powershell shell
Last synced: about 1 month ago
JSON representation
An API for cross-platform custom orchestration of execution steps without any third-party dependencies. Based on DAG, it implements the scheduling function of sequential execution of dependent steps and concurrent execution of non-dependent steps.
- Host: GitHub
- URL: https://github.com/xmapst/autoexecflow
- Owner: xmapst
- License: gpl-3.0
- Created: 2024-07-10T00:41:18.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-12-13T10:53:15.000Z (about 1 month ago)
- Last Synced: 2024-12-13T11:32:15.049Z (about 1 month ago)
- Topics: batch-script, cicd, dag, executor, golang, powershell, shell
- Language: Go
- Homepage:
- Size: 46.7 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# AutoExecFlow
[![Go](https://github.com/xmapst/AutoExecFlow/actions/workflows/go.yml/badge.svg)](https://github.com/xmapst/AutoExecFlow/actions/workflows/go.yml)
An `API` for cross-platform custom orchestration of execution steps without any third-party dependencies.
Based on `DAG` , it implements the scheduling function of sequential execution of dependent steps and concurrent execution of non-dependent steps.It provides `API` remote operation mode, batch execution of `Shell` , `Powershell` , `Python` and other commands,
and easily completes common management tasks such as running automated operation and maintenance scripts, polling processes, installing or uninstalling software, updating applications, and installing patches.## Operating system remote execution interface
![](images/dag.png)
## Feature
- [x] support `Windows` / `Linux` / `Mac`
- [x] Dynamically adjust the number of workers
- [x] Orchestrating execution based on directed acyclic graph ( `DAG` )
- [x] Supports forced termination of tasks or steps
- [x] Supports suspension and resumption of tasks or steps
- [x] Support timeout for tasks or steps
- [x] Task-level Workspace isolation
- [x] Browse, upload, and download tasks in Workspace
- [x] Self-update, use parameter `--self_url`
- [x] WebShell
- [ ] Support delayed Task
- [ ] Send events before/after a task or step is executed
- [ ] Task or step plugin implementation## Help
```text
Usage:
AutoExecFlow_linux_amd64_v1 [command]Available Commands:
client a self-sufficient executor
help Help about any command
server start serverFlags:
--help Print usage
-v, --version Print version information and quitUse "AutoExecFlow_linux_amd64_v1 [command] --help" for more information about a command.
```## How to use
### Windows
Open PowerShell in management mode to add services
```powershell
New-Service -Name AutoExecFlow -BinaryPathName "C:\AutoExecFlow\bin\AutoExecFlow_windows_amd64_v1.exe server" -DisplayName "AutoExecFlow " -StartupType Automatic
sc.exe failure AutoExecFlow reset= 0 actions= restart/0/restart/0/restart/0
sc.exe start AutoExecFlow
```### Linux
```shell
echo > /etc/systemd/system/AutoExecFlow.service <