Skip to content

ci: try to support intel based macs v2 #246

ci: try to support intel based macs v2

ci: try to support intel based macs v2 #246

Workflow file for this run

name: build
on:
push:
paths-ignore:
- "**.md"
pull_request:
workflow_dispatch:
jobs:
build:
name: build
runs-on: ${{ matrix.os }}
permissions:
contents: write
env:
PYTHONPATH: src
strategy:
fail-fast: false
matrix:
# available images: https://github.com/actions/runner-images?tab=readme-ov-file#available-images
# "macos-latest" is ARM based
# "macos-13" is Intel based
os: ["windows-latest", "ubuntu-latest", "macos-latest", "macos-13"]
steps:
- uses: actions/checkout@v4
with:
# fetch all tags for the "git describe" later
fetch-depth: 0
submodules: true
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install dependencies
# install only the really required modules before the pyinstaller build
run: pip install -r requirements/requirements-build.txt
- name: Build executables with pyinstaller
run: |
# store the latest tag in static file
git describe --tags --abbrev=0 > .version
python -m PyInstaller jimmy_cli.spec
# python -m PyInstaller jimmy_gui.spec
- name: Release
uses: softprops/action-gh-release@v2
# release only if there is a release tag
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
with:
files: ./dist/jimmy*
- name: Smoke test
run: |
# pandoc and asciidoc converter
./dist/jimmy-cli* test/data/test_data/default_format/arbitrary_folder
# filters and frontmatter module
./dist/jimmy-cli* test/data/test_data/obsidian/test_1 --format obsidian
./dist/jimmy-cli* test/data/test_data/obsidian/test_1 --format obsidian --exclude-tags "*"
./dist/jimmy-cli* test/data/test_data/obsidian/test_1 --format obsidian --include-notes-with-tags "*"
./dist/jimmy-cli* test/data/test_data/obsidian/test_1 --format obsidian --include-notes "Second sample note" "Sample note"
# textbundle converter called from bear converter
./dist/jimmy-cli* test/data/test_data/bear/test_1/backup.bear2bk --format bear
# cryptography module
./dist/jimmy-cli* test/data/test_data/colornote/test_1/colornote-20241014.backup --format colornote --password 1234
# sqlite3 module
./dist/jimmy-cli* test/data/test_data/qownnotes/test_1/note_folder --format qownnotes
# pyyaml module
./dist/jimmy-cli* test/data/test_data/rednotebook/test_2/RedNotebook-Backup-2024-09-15.zip --format rednotebook
# anytype module
./dist/jimmy-cli* test/data/test_data/anytype/test_1/Anytype.20241112.175339.64 --format anytype