Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fussel178/telestion-project-corfu-sample
Sample Telestion Project with Corfu Integration
https://github.com/fussel178/telestion-project-corfu-sample
Last synced: 24 days ago
JSON representation
Sample Telestion Project with Corfu Integration
- Host: GitHub
- URL: https://github.com/fussel178/telestion-project-corfu-sample
- Owner: fussel178
- License: mit
- Created: 2022-09-20T10:37:46.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-03-06T04:06:39.000Z (almost 2 years ago)
- Last Synced: 2024-10-31T00:11:54.566Z (2 months ago)
- Language: TypeScript
- Size: 795 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# telestion-project-corfu-sample
[![Running Telestion](https://img.shields.io/static/v1?label=Running&message=Telestion&labelColor=2B2E3A&color=452897)](https://telestion.wuespace.de/)
[![CI Application](https://github.com/fussel178/telestion-project-corfu-sample/actions/workflows/ci-app.yml/badge.svg)](https://github.com/fussel178/telestion-project-corfu-sample/actions/workflows/ci-app.yml)This is a Telestion Project based on the [Telestion Project Template](https://github.com/wuespace/telestion-project-template).
## Installation
### The Application
To run the application on your production system, you need [docker](https://www.docker.com/) and [docker-compose](https://docs.docker.com/compose/install/) installed and ready-to-go.
Go to the [latest release](https://github.com/fussel178/telestion-project-corfu-sample/releases/latest) of the project and download the application archive named `telestion-project-corfu-sample-vX.X.X.zip`.
Extract it on your production system and go into the folder which contains the `docker-compose.yml`.
Start the application with the following command:
```shell
docker-compose up -d
```This downloads and starts the required components to run Telestion.
If you want to stop Telestion, call:
```shell
docker-compose down
```### The Client
Client builds are also available via the [latest release](https://github.com/fussel178/telestion-project-corfu-sample/releases/latest) of the project.
OS coverage depends on the used Client system.
## Building
To build the projects from source, please take a look into the part specific descriptions:
- [Application](./application/README.md)
- [Client](./client/README.md)## Releasing
When you use [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) during development, automation tools can release a new version based on [Semantic Versioning] and automatically create changelogs based on the commit messages.
For more information, take a look at the release tutorial on our developer documentation.
### Via GitHub
The `release` action creates and updates a pull request that tracks the changes to the next release. Once you're happy with your result, merge this branch. This triggers the release pipeline which creates a new release archive and publishes the code to the GitHub Container Registry.
### Manually
If you're not hosting your code on GitHub, we provide some convenience scripts to release a new version.
First, bump your project version.
Update the project version in the version.txt file which resides in the project root.
Next, open the console and commit the version bump:
```shell
git add version.txt
git commit -m "chore(main): release $( Attention: The deployment scripts and tools require that you use the Semantic Versioning release style in your project.Now, build the Application.
Open your IDE and select the assembleDist task in the distribution section of Gradle.
Or run the Gradle task in your console:```shell
cd application
JAVA_HOME="" ./gradlew assembleDist
cd ..
```cd application
JAVA_HOME="" ./gradlew assembleDist
cd ..To build, tag and publish the docker containers, call the following script:
```shell
./scripts/push-docker-images.sh
```To create a setup archive, call the following script:
```shell
./scripts/create-setup.sh
```Both scripts depend on the version number in the `version.txt` file.
## This repository
The overall file structure of this monorepo looks like this:
```plain
.
├── .github
│ ├── workflows (CI configuration)
│ └── dependabot.yml (Dependabot config)
├── application
| ├── conf (the verticle configuration for the Application)
| ├── src (the source files of the Telestion Application)
| ├── Dockerfile (the definition to successfully build a Docker image from the compiled Application sources)
| ├── build.gradle (manages dependencies and the build process via Gradle)
| ├── gradle.properties (contains the required tokens to access required dependencies)
| ├── gradlew (the current gradle executable for UNIX-based systems)
| └── gradlew.bat (the current gradle executable for Windows systems)
├── client
| ├── public (template webpage folder where React will engage)
| ├── src (the source files of the Telestion Client)
| └── package.json (manages dependencies and the build process via npm)
├── CHANGELOG.md (DON'T TOUCH! Automatically generated Changelog)
├── README.md (you're here :P)
├── project.json (contains the current project information like the current version etc.)
└── telestion-application (DON'T TOUCH! Used as an indicator for our automation tools)
```**The [Application](./application/README.md) and the [Client](./client/README.md) folders contain their own `README.md` that describe the different parts more specific.**
### Contributing
For the documentation on contributing to this repository, please take look at the [Contributing Guidelines](./CONTRIBUTING.md) and the official [Telestion Developer Documentation](https://docs.telestion.wuespace.de/).
## About
Running [Telestion](https://telestion.wuespace.de/), a project by [WüSpace e.V.](https://www.wuespace.de/).