Skip to content

Commit a493844

Browse files
committed
Release action
1 parent 1ea2aa0 commit a493844

3 files changed

Lines changed: 75 additions & 1 deletion

File tree

.github/workflows/release.yaml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
2+
name: Build and Release
3+
4+
on:
5+
push:
6+
tags:
7+
- 'v*' # Triggers only on version tags like v1.0, v2.1.3, etc.
8+
9+
permissions:
10+
contents: write # 👈 Required to create releases
11+
12+
jobs:
13+
build:
14+
runs-on: windows-latest
15+
16+
steps:
17+
- name: Checkout code
18+
uses: actions/checkout@v4
19+
20+
- name: Set up Python
21+
uses: actions/setup-python@v5
22+
with:
23+
python-version: '3.x'
24+
25+
- name: Run make
26+
run: make
27+
28+
- name: Upload Release Asset
29+
uses: softprops/action-gh-release@v2
30+
with:
31+
files: bin/reroader.exe
32+
env:
33+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Makefile

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
PYTHON=python3
2+
3+
exec_targets=\
4+
reroader.exe
5+
6+
all: exe
7+
8+
.PHONY: test
9+
test:
10+
$(PYTHON) sort.py --base test
11+
12+
.PHONY: lint
13+
lint: requirements
14+
-python3 -m mypy *.py
15+
-vulture *.py
16+
17+
requirements: requirements.txt
18+
${PYTHON} -m pip install -r requirements.txt
19+
touch requirements
20+
21+
clean:
22+
$(RM) -r __pycache__
23+
$(RM) -r build
24+
$(RM) -r dist/
25+
$(RM) -r litedist/
26+
27+
exe: requirements $(addprefix bin/,${exec_targets})
28+
29+
bin/reroader.exe: gui.py
30+
mkdir -p bin
31+
${PYTHON} -m pip install PyInstaller
32+
${PYTHON} -m PyInstaller \
33+
--onefile \
34+
--console \
35+
--distpath bin \
36+
--workpath build \
37+
--specpath build \
38+
--name $(notdir $@) \
39+
$<
40+
41+
.PHONY: all clean exe doc mods

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
kivy[base]
1+
pyinstaller
22
prompt_toolkit

0 commit comments

Comments
 (0)