Skip to content

⚑ Build OpenWrt image with GitHub Actions. πŸ›œ | 🚧 WIP 🚧

License

GPL-2.0, Unknown licenses found

Licenses found

GPL-2.0
LICENSE
Unknown
COPYING
Notifications You must be signed in to change notification settings

AzimsTech/OpenWrt-Builder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

OpenWrt Builder πŸš€

Build custom OpenWrt firmware images with a web interface and automated GitHub Actions.

Features

  • 🌐 Web Interface - OpenWrt Image Builder frontends via GitHub Pages
  • ⚑ GitHub Actions Build - Builds and uploads firmware to releases
  • πŸ”§ Config2UCI - Convert config files to UCI commands

Quick Start

  1. Fork this repository GitHub forks
  2. Enable GitHub Pages in repository settings
  3. Visit <username>.github.io/<repo-name> to access the builder

Build Process

  1. Web interface triggers GitHub Actions workflow
  2. Select from scripts in /files/etc/uci-defaults/ or input custom ones
  3. OpenWrt ImageBuilder downloads and configures
  4. Firmware image is compiled and uploaded to GitHub Releases

Repository Secrets

This repo can use the following secrets, which may be set in the repository (Settings β†’ Secrets and variables β†’ Actions) to automatically populate variables in configuration files located in files/etc/uci-defaults directory:

.
β”œβ”€β”€ files
β”‚   └── etc
β”‚       └── uci-defaults
β”‚           β”œβ”€β”€ script1
β”‚           β”œβ”€β”€ script2
β”‚           └── script3
β”œβ”€β”€ ... 

Secret Variables Mapping

Secret Name Variable Name Description Example
ROOT_PASS root_password Administrator (root) password for the router root
WLAN_NAME ssid Wireless network SSID OpenWrt
WLAN_PASS ssid_key Wireless network password 12345678
PPPOE_NAME pppoe_name PPPoE username username
PPPOE_PASS pppoe_key PPPoE password password

Example

Before:

# files/etc/uci-defaults/99-custom
# root_password=""
# ssid=""
# ssid_key=""
# pppoe_name=""
# pppoe_key=""

After:

# files/etc/uci-defaults/99-custom
root_password="root"
ssid="OpenWrt"
ssid_key="12345678"
pppoe_name="username"
pppoe_key="password"

License

GPL-2.0 - See COPYING and LICENSE files.


Live Demo: azimstech.github.io/openwrt-builder
Issues: Report bugs and requests

About

⚑ Build OpenWrt image with GitHub Actions. πŸ›œ | 🚧 WIP 🚧

Topics

Resources

License

GPL-2.0, Unknown licenses found

Licenses found

GPL-2.0
LICENSE
Unknown
COPYING

Stars

Watchers

Forks