A simple GitHub Action that physically puts your senses on alert when your build/release fails

Overview

banner

GH Release Paniker

A simple GitHub Action that physically puts your senses on alert when your build/release fails

Usage

Requirements:

Raspberry Pi, LED, Buzzer, Internet connection, Router with port-forwarding capabilities and some patience :D

  • Step 1: Assembling the Circuit

    Assemble the Circuit as given in the diagram

    circuit

  • Step 2: Installing the FastAPI Server Clone the repo using the comment git clone https://github.com/DarthBenro008/gh-release-paniker in your Raspberry Pi

    Run the following commands:

    cd server
    pip install -r requirements.txt
    unvicorn main:app --host=0.0.0.0 --port=3000
  • Step 3: Port forward and get the IP Address of your Raspberry Pi

    Go to your Router settings and port forward the IP address of your Raspbery Pi on port 3000

    Warning: Port forwarding exposes your raspberry pi to the internet, ensure you do not have any sensitive data or server running on it

  • Step 4: Pick a GitHub Action workflow from this repository

    From the .github/workflows folder, you have various workflows to pick for your project, pick one and replace the public IP in the last line where it asks you to replace

    Incase you want to add your own YAML workflow, just ensure the continue-on-error: true is appended to each step and then you can add an additional step as follows:

        - name: Send Paniker
          if: steps.stepID.outcome != 'success' # Replace Step ID with your stepid 
          run: curl http://YOUR_IP:3000/panik # Replace the port-forwaded public IP
  • Step 5: Hope this setup never buzzes! and may your releases always succeed

In order to turn off the buzzer, you have to go the following url: http://YOUR_IP:3000/stop

Actions Available

This repository contains various GitHub Actions that help Open-Source projects release a new version of their project with a single command.

This repository contains the following:

Use Cases

Workflow Name Description Builds and releases across multiple OS/Platforms in a single command What triggers the workflow?
rust-releaser Release your rust based application across linux, windows, macOS in a single command with changelogs Yes on push of tags starting with "v", eg: v1.0, v0.1.1
golang-releaser Release your Golang based application across linux, windows, macOS in a single command with changelogs Yes on push of tags starting with "v", eg: v1.0, v0.1.1
hugo-releaser Release your Hugo website to GitHub pages in a single command Yes on push to master/main branch
android-releaser Build, Release and Test your android app and get it delivered on Telegram Channel of your choice Yes on push to master/main branch, and on push of tags starting with "v"

GitHub Actions featured in this repository

Owner
Hemanth Krishna
Google SoC'21 @litmuschaos | LFX Mentee 2021 @cncf @keptn | k8s | Gopher | Android | Blockchain | CS Undergrad
Hemanth Krishna
Using AWS's API Gateway + Lambda + Python to run a simple websocket application. For learning/testing

Using AWS's API Gateway + Lambda + Python to run a simple websocket application. For learning/testing. The AWS Resources seemed overly complex and were missing some critical gotchas in setting up a s

Seth Miller 15 Dec 23, 2022
A p2p chat app for zephyr

A p2p chat app for zephyr

L3gacy B3ta 4 Jun 02, 2021
Tsunami-Fi is simple multi-tool bash application for Wi-Fi attacks

🪴 Tsunami-Fi 🪴 Русская версия README 🌿 Description 🌿 Tsunami-Fi is simple multi-tool bash application for Wi-Fi WPS PixieDust and NullPIN attack,

【Kiko】 35 Dec 09, 2022
High capacity, high availability, well connected, fast lightning node.

LND ⚡ Routing High capacity, high availability, well connected, fast lightning node. We aim to become a top liquidity provider for the lightning netwo

18 Dec 16, 2022
Use Raspberry Pi and CircuitSetup's power monitor hardware to publish electrical usage to MQTT

This repo has code and notes for whole home electrical power monitoring using a Raspberry Pi and CircuitSetup modules. Beyond just collecting data, it

Eric Tsai 10 Jul 25, 2022
A gRPC-Web implementation for Python

Sonora Sonora is a Python-first implementation of gRPC-Web built on top of standard Python APIs like WSGI and ASGI for easy integration. Why? Regular

Alex Stapleton 216 Dec 30, 2022
Repo for investigation of timeouts that happens with prolonged training on clients

Flower-timeout Repo for investigation of timeouts that happens with prolonged training on clients. This repository is meant purely for demonstration o

1 Jan 21, 2022
Wallc - Calculate the layout on the wall to hang up pictures

wallc Calculate the layout on the wall to hang up pictures. Installation pip install git+https://github.com/trbznk/wallc.git Getting Started Currently

Alex Trbznk 68 Sep 09, 2022
Dnspython is a DNS toolkit for Python.

dnspython is a DNS toolkit for Python. It supports almost all record types. It can be used for queries, zone transfers, and dynamic updates. It supports TSIG authenticated messages and EDNS0.

Bob Halley 2.1k Jan 06, 2023
A simple chat room using socket and threading for handle multiple connections.

• Socket Chat Room was a little project for socket study. It works with a server handling the incoming connections from the clients. Clients send encoded messages while waiting for others clients mes

Guilherme de Oliveira 2 Mar 03, 2022
Readable, simple and fast asynchronous non-blocking network apps

Fast and readable async non-blocking network apps Netius is a Python network library that can be used for the rapid creation of asynchronous non-block

Hive Solutions 120 Nov 20, 2022
VRF-StarkNet - Contracts for verifiable randomness on StarkNet

VRF-StarkNet Contracts for verifiable randomness on StarkNet Motivation Deployed

Non 32 Oct 30, 2022
A library for interacting with APNs and VoIP using HTTP/2.

kalyke A library for interacting with APNs and VoIP using HTTP/2. Installation kalyke requires python 3.6 or later. $ pip install kalyke-apns Usage AP

Yuya Oka 11 Dec 08, 2022
Simple local RPG turn-based to play while learn something using the anki system

Simple local RPG turn-based to play while learn something using the anki system

Raphael Kieling 5 Aug 02, 2022
Simple Port Scanner script written in Python, plans is to expand upon this script to turn it into a GUI based pen testing suite

PortScanner Simple Port Scanner script written in Python, plans is to expand upon this script to turn it into a GUI based pen testing suite. #IMPORTAN

1 Oct 23, 2021
GlokyPortScannar is a really fast tool to scan TCP ports implemented in Python.

GlokyPortScannar is a really fast tool to scan TCP ports implemented in Python. Installation: This program requires Python 3.9. Linux

gl0ky 5 Jun 25, 2022
A transport agnostic sync/async RPC library that focuses on exposing services with a well-defined API using popular protocols.

WARNING: This is from spyne's development branch. This version is not released yet! Latest stable release can be found in the 2_13 branch. If you like

1.1k Dec 23, 2022
Connects to databases or sftp server based on configured environmental variables.

Myconnections Connects to Oracle databases or sftp servers depending on configured environmental variables. VERY IMPORTANT: VPN must exist. Installati

0 Jan 02, 2022
Python 3 tool for finding unclaimed groups on Roblox. Supports multi-threading, multi-processing and HTTP proxies.

roblox-group-scanner Python 3 tool for finding unclaimed groups on Roblox. Supports multi-threading, multi-processing and HTTP proxies. Usage usage: s

h0nda 43 May 11, 2022
BLE parser for passive BLE advertisements

This pypi package is parsing BLE advertisements to readable data for several sensors and can be used for device tracking, as long as the MAC address is static. The parser was originally developed as

Ernst Klamer 19 Dec 26, 2022