Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/deviousasti/build-bot
A zero configuration continuous build bot
https://github.com/deviousasti/build-bot
bot build-automation continuous-integration git reactive
Last synced: 17 days ago
JSON representation
A zero configuration continuous build bot
- Host: GitHub
- URL: https://github.com/deviousasti/build-bot
- Owner: deviousasti
- License: mit
- Created: 2019-12-25T07:45:22.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T09:27:28.000Z (about 2 years ago)
- Last Synced: 2024-11-17T18:09:29.546Z (3 months ago)
- Topics: bot, build-automation, continuous-integration, git, reactive
- Language: F#
- Size: 89.8 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
build-bot
==========
A zero configuration continuous build system as a chatbotReceive Message -> Build -> Send Message
Why?
----There are numerous CIs out there, but self-hosting one involves quite the exercise.
build-bot is for you if you don't want to configure build pipelines *per repository*- Don't write any YML, XML, TOML or JSON
- Detects common build methods
- Deep Git submodule tracking
- No need to configure a webserver, reverse proxy or HTTPS
- Works behind a firewall
- Run with local resources, using installed licenses of IAR, Keil...Get it
-------
build-bot is available on chocolatey at chocolatey.org/packages/build-bot/cinst build-bot -y
Alternatively download the package, and unzip.
**Set the environment variables**
`BOT_SLACK_API_TOKEN ` - Bot User OAuth Access Token.
This can be found in the Settings > Install AppIf you don't already have a slack app, create one [here][1].
Add a bot user. For more information see: [bot users][1]`BOT_WORKSPACE` - The directory to use as a workspace
All repositories in this folder will be trackedWorking
--------build-bot listens on slack channels or DMs for any repository urls being mentioned.
It then figures out which all sources depend on the repositories being mentioned, either directly or
as submodules. It then runs the corresponding build action.There are a few commands to interact with the bot.
Type `help` for a list of commands.Build actions
-------------
build-bot executes actions in the root directory of a repository.
The first command line argument will be build configuration.
It looks for any of the following:- **Powershell**
Looks for build.ps1param($configuration = "none")
- **Bash**
Looks for build.shconfiguration = $1
- **Batch**
Looks for build.batset configuration=%1
- **MSBuild**
Looks for *.sln- **Make**
Looks for Makefile- **FAKE**
Looks for build.fsx- **CMake**
Looks for CMakeLists.txt- **Ninja**
Looks for build.ninja- **PlatformIO**
Looks for platformio.ini- **Gulp**
Looks for gulpfile.js[1]: https://api.slack.com/apps
[2]: https://api.slack.com/bot-users