4 Commits

Author SHA1 Message Date
root babed47fe6 Release v1.1.2: publish container image + add security workflows
- Bump VERSION to 1.1.2 (no app behavior change from 1.1.1).
- release.yml: add workflow_dispatch so images can be published manually from
  the Actions tab in addition to on version tags.
- Add CodeQL code scanning (Python + JavaScript), free for public repos.
- Add Dependabot config for GitHub Actions and pip updates.

This is the first release to publish a multi-arch image to GHCR
(ghcr.io/allennpit/ads-bit).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 15:36:02 -07:00
allen f635c23027 Merge pull request 'Set GitHub namespace (AllenNPIT)' (#11) from chore/set-namespace into main 2026-06-10 10:26:48 -07:00
root 9c0594975a Set GitHub namespace (AllenNPIT) in README badges and CHANGELOG links
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-10 10:26:47 -07:00
allen f081af36d8 Merge pull request 'Package for public GitHub release' (#10) from chore/github-packaging into main 2026-06-10 10:13:54 -07:00
6 changed files with 79 additions and 9 deletions
+17
View File
@@ -0,0 +1,17 @@
version: 2
updates:
# Keep GitHub Actions pinned versions current.
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: weekly
commit-message:
prefix: "ci"
# Keep Python dependencies current.
- package-ecosystem: pip
directory: "/"
schedule:
interval: weekly
commit-message:
prefix: "deps"
+35
View File
@@ -0,0 +1,35 @@
name: CodeQL
# Static security analysis (free for public repositories). Scans the Python
# backend and the vanilla-JS frontend on pushes, PRs, and weekly.
on:
push:
branches: [main]
pull_request:
branches: [main]
schedule:
- cron: "23 5 * * 1"
jobs:
analyze:
name: Analyze (${{ matrix.language }})
runs-on: ubuntu-latest
permissions:
security-events: write
contents: read
actions: read
strategy:
fail-fast: false
matrix:
language: [python, javascript]
steps:
- uses: actions/checkout@v4
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
- name: Analyze
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{ matrix.language }}"
+7
View File
@@ -7,6 +7,12 @@ name: Release
on: on:
push: push:
tags: ["v*"] tags: ["v*"]
workflow_dispatch:
inputs:
version:
description: "Image tag to publish (e.g. 1.1.2); leave blank for just :latest"
required: false
default: ""
permissions: permissions:
contents: read contents: read
@@ -40,6 +46,7 @@ jobs:
tags: | tags: |
type=semver,pattern={{version}} type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}} type=semver,pattern={{major}}.{{minor}}
type=raw,value=${{ inputs.version }},enable=${{ github.event_name == 'workflow_dispatch' && inputs.version != '' }}
type=raw,value=latest type=raw,value=latest
- name: Build and push - name: Build and push
+16 -3
View File
@@ -4,6 +4,18 @@ All notable changes to this project are documented here. The format is based
on [Keep a Changelog](https://keepachangelog.com/), and this project adheres to on [Keep a Changelog](https://keepachangelog.com/), and this project adheres to
[Semantic Versioning](https://semver.org/). [Semantic Versioning](https://semver.org/).
## [1.1.2] - 2026-06-10
First release with a published container image and security tooling. No
application behavior changes from 1.1.1.
### Added
- Prebuilt multi-arch (amd64 + arm64) container image published to GitHub
Container Registry: `ghcr.io/allennpit/ads-bit`.
- CodeQL code-scanning workflow (Python + JavaScript) and Dependabot updates
for GitHub Actions and pip.
- `workflow_dispatch` trigger on the release workflow for manual image builds.
## [1.1.1] - 2026-06-10 ## [1.1.1] - 2026-06-10
### Added ### Added
@@ -43,6 +55,7 @@ on [Keep a Changelog](https://keepachangelog.com/), and this project adheres to
pixel-art sprites, directional backgrounds, weather, sun/moon, admin panel, pixel-art sprites, directional backgrounds, weather, sun/moon, admin panel,
first-run setup wizard, and Docker/Podman support. first-run setup wizard, and Docker/Podman support.
[1.1.1]: https://github.com/OWNER/ADS-Bit/releases/tag/v1.1.1 [1.1.2]: https://github.com/AllenNPIT/ADS-Bit/releases/tag/v1.1.2
[1.1.0]: https://github.com/OWNER/ADS-Bit/releases/tag/v1.1.0 [1.1.1]: https://github.com/AllenNPIT/ADS-Bit/releases/tag/v1.1.1
[1.0]: https://github.com/OWNER/ADS-Bit/releases/tag/v1.0 [1.1.0]: https://github.com/AllenNPIT/ADS-Bit/releases/tag/v1.1.0
[1.0]: https://github.com/AllenNPIT/ADS-Bit/releases/tag/v1.0
+3 -5
View File
@@ -1,10 +1,8 @@
# ADS-Bit # ADS-Bit
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![Release](https://img.shields.io/github/v/release/OWNER/ADS-Bit)](https://github.com/OWNER/ADS-Bit/releases) [![Release](https://img.shields.io/github/v/release/AllenNPIT/ADS-Bit)](https://github.com/AllenNPIT/ADS-Bit/releases)
[![CI](https://github.com/OWNER/ADS-Bit/actions/workflows/ci.yml/badge.svg)](https://github.com/OWNER/ADS-Bit/actions/workflows/ci.yml) [![CI](https://github.com/AllenNPIT/ADS-Bit/actions/workflows/ci.yml/badge.svg)](https://github.com/AllenNPIT/ADS-Bit/actions/workflows/ci.yml)
> **Setup note:** replace `OWNER` with your GitHub username/org throughout this README (badges and image names) after creating the repository.
A retro SNES-style side-view flight tracker that displays ADS-B aircraft data with custom pixel art sprites. A retro SNES-style side-view flight tracker that displays ADS-B aircraft data with custom pixel art sprites.
@@ -56,7 +54,7 @@ is available from GitHub Container Registry:
docker run -d --name ads-bit --network host --restart unless-stopped \ docker run -d --name ads-bit --network host --restart unless-stopped \
-e ADSBIT_CONFIG=/app/data/config.json \ -e ADSBIT_CONFIG=/app/data/config.json \
-v "$PWD/data:/app/data" \ -v "$PWD/data:/app/data" \
ghcr.io/OWNER/ads-bit:latest ghcr.io/allennpit/ads-bit:latest
``` ```
Then open http://localhost:2001 and complete the setup wizard. Then open http://localhost:2001 and complete the setup wizard.
+1 -1
View File
@@ -17,7 +17,7 @@ from aiohttp import web, ClientSession, ClientTimeout
import netifaces import netifaces
import bcrypt import bcrypt
VERSION = "1.1.1" VERSION = "1.1.2"
WEB_DIR = Path(__file__).parent WEB_DIR = Path(__file__).parent
# Config path is overridable (handy for containers persisting config on a # Config path is overridable (handy for containers persisting config on a