An open API service indexing awesome lists of open source software.

https://github.com/darkguy10/ctftime2discord

A simple GH action for sending CTFTime event updates to Discord webhook.
https://github.com/darkguy10/ctftime2discord

ctf ctf-events ctftime discord discord-webhook github-actions githubaction-workflow

Last synced: 28 days ago
JSON representation

A simple GH action for sending CTFTime event updates to Discord webhook.

Awesome Lists containing this project

README

          


「ctftime2discord」


Features
·
Setting Up
·
Documentation
·
License



Stargazers




Releases

 


A simple, customizable github action that fetches CTFTime events and sends updates through a Discord webhook.

 

### ✨ Features

- Customizable, almost entirely
- Easy setup (literally a single file)
- Schedule-able, using Github Action cron jobs
- Does not require a hosting service (unlike regular discord bots)

 

### 🚀 Setting Up

Just create a GitHub repository and add your workflow file.

An example can be found in the [`.github/workflow/weekly.yml`](https://github.com/darkguy10/ctftime2discord/blob/main/.github/workflow/weekly) file in this repo.

> [!TIP]
> You can customize your action to run whenever you wish. I've used cron for scheduling in this example but you don't need to

```yaml
name: Weekly CTF Update

on:
schedule:
- cron: '0 12 * * 4'
workflow_dispatch:

jobs:
Weekly-Update:
name: Weekly Update
environment: libbabel.so
runs-on: ubuntu-latest

steps:
- name: Check out git repository
uses: actions/checkout@v4

- name: ctftime2discord
uses: DarkGuy10/ctftime2discord@latest
with:
webhook_url: ${{ secrets.WEBHOOK_URL }}
window_size: 4
message_content: <@&1381971729680961566>
app_username: Watch Doggo
app_avatar: https://i.imgur.com/cuEp3vr.gif
embed_color: 11845374
footer_text: Doggo fetched everything very fast
footer_icon: https://i.imgur.com/cuEp3vr.gif
filter_online: true
```

> [!WARNING]
> Make sure you do not commit the webhook url to your repo. The recommended way is to add it as a encrypted repository/environment secret.

 

### 📚 Documentation

Refer to [`action.yml`](https://github.com/darkguy10/ctftime2discord/blob/main/action.yml) for a more comprehensive list of all the required/available configurations.

 

### 📜 License

This repository is released under the MIT license, which grants the following permissions:

- Commercial use
- Distribution
- Modification
- Private use

For more convoluted language, see the [LICENSE](https://github.com/darkguy10/ctftime2discord/blob/main/LICENSE.md).