winsw/README.md

87 lines
3.9 KiB
Markdown
Raw Normal View History

2018-11-27 16:00:00 +00:00
# winsw: Windows Service Wrapper in less restrictive license
2013-03-01 23:55:22 +00:00
2018-11-29 16:00:00 +00:00
[![Github All Releases](https://img.shields.io/github/downloads/winsw/winsw/total?style=flat-square)](https://github.com/winsw/winsw/releases)
[![NuGet](https://img.shields.io/nuget/v/WinSW?style=flat-square)](https://www.nuget.org/packages/WinSW/)
[![Build Status](https://img.shields.io/appveyor/build/winsw/winsw?style=flat-square)](https://ci.appveyor.com/project/winsw/winsw)
[![Gitter](https://img.shields.io/gitter/room/winsw/winsw?style=flat-square)](https://gitter.im/winsw/winsw?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![License](https://img.shields.io/github/license/winsw/winsw?style=flat-square)](LICENSE.txt)
2016-11-25 22:26:12 +00:00
WinSW is an executable binary, which can be used to wrap and manage a custom process as a Windows service.
2018-11-29 16:00:00 +00:00
Once you download the installation package, you can rename *WinSW.exe* to any name, e.g. *MyService.exe*.
2016-11-25 22:26:12 +00:00
2018-11-27 16:00:00 +00:00
## Why?
See the [project manifest](MANIFEST.md).
2018-11-27 16:00:00 +00:00
## Download
2016-11-25 22:26:12 +00:00
2018-11-29 16:00:00 +00:00
Starting from WinSW v2, the releases are being hosted on [GitHub](https://github.com/winsw/winsw/releases) and [NuGet](https://www.nuget.org/packages/WinSW/).
2016-12-09 22:58:28 +00:00
Due to historical reasons, the project also uses the [Jenkins](https://jenkins.io/) Maven repository as a secondary source.
2019-01-24 16:00:00 +00:00
Binaries are available [here](https://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/).
2016-11-25 22:26:12 +00:00
2018-11-27 16:00:00 +00:00
## Usage
2016-11-25 20:56:39 +00:00
2018-11-27 16:00:00 +00:00
WinSW is being managed by configuration files: [Main XML configuration file](doc/xmlConfigFile.md) and [EXE configuration file](doc/exeConfigFile.md).
2016-11-25 20:56:39 +00:00
2018-11-29 16:00:00 +00:00
Your renamed *WinSW.exe* binary also accepts the following commands:
2016-11-25 20:56:39 +00:00
* `install` to install the service to Windows Service Controller.
2018-11-27 16:00:00 +00:00
This command requires some preliminary steps described in the [Installation guide](doc/installation.md).
2013-03-02 00:11:27 +00:00
* `uninstall` to uninstall the service. The opposite operation of above.
* `start` to start the service. The service must have already been installed.
* `stop` to stop the service.
* `restart` to restart the service. If the service is not currently running, this command acts like `start`.
* `status` to check the current status of the service.
2017-06-15 07:09:16 +00:00
* This command prints one line to the console.
* `NonExistent` indicates the service is not currently installed
* `Started` to indicate the service is currently running
* `Stopped` to indicate that the service is installed but not currently running.
2013-03-02 00:11:27 +00:00
2018-11-27 16:00:00 +00:00
## Supported .NET versions
2018-11-27 16:00:00 +00:00
### WinSW v2
2018-11-29 16:00:00 +00:00
WinSW v2 offers two executables, which declare .NET Frameworks 2.0 and 4.0 as targets.
More executables can be added on-demand.
Please create an issue if you need such executables.
2018-11-27 16:00:00 +00:00
## Documentation
2013-03-02 00:11:27 +00:00
2017-05-05 13:35:50 +00:00
User documentation:
2018-11-27 16:00:00 +00:00
* [Installation guide](doc/installation.md) - Describes the installation process for different systems and .NET versions
* Configuration:
2018-11-27 16:00:00 +00:00
* [Main XML configuration file](doc/xmlConfigFile.md)
* [EXE configuration file](doc/exeConfigFile.md)
* [Logging and error reporting](doc/loggingAndErrorReporting.md)
* [Extensions](doc/extensions/extensions.md)
* Use-cases:
* [Self-restarting services](doc/selfRestartingService.md)
2018-11-27 16:00:00 +00:00
* [Deferred file operations](doc/deferredFileOperations.md)
* Configuration Management:
* [Puppet Forge Module](doc/puppetWinSW.md)
2017-05-05 13:35:50 +00:00
Developer documentation:
2018-11-27 16:00:00 +00:00
* [Developer guide](DEVELOPER.md)
2017-05-05 13:35:50 +00:00
2018-11-27 16:00:00 +00:00
## Release lines
2016-11-25 12:34:50 +00:00
2018-11-27 16:00:00 +00:00
### WinSW v2
2016-11-25 12:34:50 +00:00
2016-12-30 14:25:42 +00:00
This is a new baseline of WinSW with several major changes:
* Major documentation rework and update
2018-11-29 16:00:00 +00:00
* New executable package targeting the .NET Framework 4.0. .NET Framework 2.0 is still supported.
2016-12-30 14:25:42 +00:00
* [Extension engine](doc/extensions/extensions.md), which allows extending the wrapper's behavior. And a couple of extensions for it (Shared Directory Mapper, Runaway Process Killer)
* New release hosting: GitHub and NuGet
* Migration of the logging subsystem to Apache log4net
* Bugfixes
2018-11-29 16:00:00 +00:00
The version v2 is **fully compatible** with the v1 configuration file format,
hence the upgrade procedure just requires replacement of the executable file.
2016-11-25 12:34:50 +00:00
2018-11-29 16:00:00 +00:00
## License
WinSW is licensed under the [MIT](LICENSE.txt) license.