Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gamgaroo/esmeralda
ASP.NET Core Web App for hosting Unity3D WebGL builds with support of Continuous Delivery via Unity Cloud Webhooks.
https://github.com/gamgaroo/esmeralda
asp-net-core continuous-delivery continuous-deployment hosting notifications slack unity unity-cloud-webhook unity3d webgl
Last synced: about 2 months ago
JSON representation
ASP.NET Core Web App for hosting Unity3D WebGL builds with support of Continuous Delivery via Unity Cloud Webhooks.
- Host: GitHub
- URL: https://github.com/gamgaroo/esmeralda
- Owner: gamgaroo
- License: mit
- Created: 2018-05-08T16:45:39.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T00:50:48.000Z (about 2 years ago)
- Last Synced: 2024-07-30T17:52:52.535Z (5 months ago)
- Topics: asp-net-core, continuous-delivery, continuous-deployment, hosting, notifications, slack, unity, unity-cloud-webhook, unity3d, webgl
- Language: C#
- Homepage:
- Size: 38.1 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Esmeralda
ASP.NET Core Web App for hosting Unity3D WebGL builds with support of Continuous Delivery via Unity Cloud Webhooks.[![GitHub release](https://img.shields.io/github/release/Gamgaroo/Esmeralda/all.svg)](https://GitHub.com/Gamgaroo/Esmeralda/releases/)
[![Build Status](https://travis-ci.org/Gamgaroo/Esmeralda.svg?branch=master)](https://travis-ci.org/Gamgaroo/Esmeralda)
[![BCH compliance](https://bettercodehub.com/edge/badge/Gamgaroo/Esmeralda?branch=master)](https://bettercodehub.com/)## Getting Started
### Host on IIS
1) Configure *Settings/unity.json* with your Unity Cloud API Key in Unity section
2) Create a Unity Cloud webhook with URL http://{esmeralda-url}/api/builds
3) Start new build on Unity Cloud
4) After build completion Unity Cloud will push a notification to Esmeralda
5) After deployment completion the build will be accessible on http://{esmeralda-url}/index.html### Run in Docker container
1) Run docker container
```
docker run -e Unity:ApiKey="API_KEY" -p 80:80 gamgaroo/esmeralda
```
2) Create a Unity Cloud webhook with URL http://{esmeralda-url}/api/builds
3) Start new build on Unity Cloud
4) After build completion Unity Cloud will push a notification to Esmeralda
5) After deployment completion the build will be accessible on http://{esmeralda-url}/index.html### Environment variables
**Required**
Unity:ApiKey
**Optional**
Admin:Username (Default: admin)
Admin:Password (Default: admin)
Slack:Enable (Default: _false_)
Slack:WebhookUrl (Defalt: _WEBHOOK_URL_)
Unity:CloudUrl (Default: _[https://build-api.cloud.unity3d.com](https://build-api.cloud.unity3d.com)_)
**_It is highly recommended that you change the default Username and Password values for security reasons_.**
**Example**
```
docker run -e Admin.Username="admin" -e Admin.Password="password" -e Unity:ApiKey="API_KEY" -e Slack:Enable=true -e Slack:WebhookUrl="WEBHOOK_URL" -p 80:80 gamgaroo/esmeralda
```## Settings API
You can configure Esmeralda using settings API:You can _GET_ or _POST_ on _http://{esmeralda-url}/api/settings_
```json
{
"unity": {
"apiKey": "API_KEY",
"cloudUrl": "https://build-api.cloud.unity3d.com"
},
"slack": {
"enable": false,
"webhookUrl": "WEBHOOK_URL"
}
}
```
API is secured with [Basic Authentication](https://en.wikipedia.org/wiki/Basic_access_authentication).## Notifications
You can enable Slack notifications. App notify on Deployment Start, Deployment Success and Deployment Failure.1) Create Slack webhook on Slack admin page
2) Configure *Settings/slack.json* with your WebhookUrl in Slack section and set Enable to true