This is a simple learning project I created to become familiar with .NET Core 3.0, and Windows/Linux project and binary portability.
Also, it gives an example of using certain features like continuous integrations with AppVeyor, and continuous deployment to Windows computers from GitHub Releases - all completely free for open source projects! For private projects, a secure storage, like AWS S3 can be used for storing configuration and/or software installers.
s3i is a small Windows command line utility and service for managing Windows Installer packages products (in *.msi files) on groups of computers. Each managed host has s3i installed and configured for polling of group-specific configuration file. Changes of this file eventually (on installed software request) result in products being installed, reconfigured, upgraded, downgraded or uninstalled - on all computers in the same group. Configuration files specify product installation source and set of property values to apply at installation. Both configuration files and installation sources can be served locally (or from UNC), from public Web site (like GitHub Releases), or from AWS S3 bucket.
In essence, s3i is a simple Continuous Deployment complement for already established Continuous Integration system (this project itself is an example of such)
Detailed desription can be found in wiki
master | develop | release |
---|---|---|
- Windows 10/* (comes with Windows Installer)
- .NET 6.0 Runtime installed
Latest version of s3i.msi
can be installed from Releases page
- git config --global credential.helper store
- git clone https://OlegBoulanov:github-token-for-appveyor@github.com/OlegBoulanov/s3i
- Push/merge to release branch
- New version artifacts will be uploaded here: https://github.com/OlegBoulanov/s3i/releases