Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
169 changes: 85 additions & 84 deletions .github/workflows/release-cli.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
---
name: New Release
on:
push:
release:
types: [published]
branches:
Expand Down Expand Up @@ -40,91 +41,91 @@ jobs:
repository-url: https://test.pypi.org/legacy/
skip-existing: true

- name: Publish dist to PyPI
if: github.repository == 'ScilifelabDataCentre/dds_cli'
uses: pypa/gh-action-pypi-publish@release/v1
with:
print-hash: true
user: __token__
password: ${{ secrets.pypi_password }}
skip-existing: true
# - name: Publish dist to PyPI
# if: github.repository == 'ScilifelabDataCentre/dds_cli'
# uses: pypa/gh-action-pypi-publish@release/v1
# with:
# print-hash: true
# user: __token__
# password: ${{ secrets.pypi_password }}
# skip-existing: true

ddsclibinaries:
name: Build binary packages for the DDS CLI
needs: build-n-publish
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-13
TARGET: MacOs_x86_64
CMD_BUILD: >
pyinstaller -F -c -n dds_cli_macos_x86_64 -i resources/scilifelab.icns
--exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
OUT_FILE_NAME: dds_cli_macos_x86_64
ASSET_MIME: application/x-elf
# - os: macos-latest #No virtual environment for this yet
# TARGET: MacOs_arm64
# CMD_BUILD: >
# pyinstaller -F -c -n dds_cli_macos_arm64 -i resources/scilifelab.icns
# --exclude-module=tests --target-arch arm64 --log-level INFO dds_cli/__init__.py
# OUT_FILE_NAME: dds_cli_macos_arm64
# ASSET_MIME: application/x-elf
- os: windows-latest
TARGET: Windows_x86_64
CMD_BUILD: >
PyInstaller -F -c -n dds_cli_win_x86_64.exe -i resources/scilifelab.ico
--exclude-module=tests --log-level INFO dds_cli/__init__.py
OUT_FILE_NAME: dds_cli_win_x86_64.exe
ASSET_MIME: application/vnd.microsoft.portable-executable
- os: ubuntu-20.04
TARGET: Linux_x86_64
CMD_BUILD: >
pyinstaller -F -c -n dds_cli_ubuntu-20.04_x86_64 -i resources/scilifelab.icns
--exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
OUT_FILE_NAME: dds_cli_ubuntu-20.04_x86_64
ASSET_MIME: application/x-elf
- os: ubuntu-22.04
TARGET: Linux_x86_64
CMD_BUILD: >
pyinstaller -F -c -n dds_cli_ubuntu-22.04_x86_64 -i resources/scilifelab.icns
--exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
OUT_FILE_NAME: dds_cli_ubuntu-22.04_x86_64
ASSET_MIME: application/x-elf
- os: ubuntu-latest # ubuntu-24.04 at the moment
TARGET: Linux_x86_64
CMD_BUILD: >
pyinstaller -F -c -n dds_cli_ubuntu-latest_x86_64 -i resources/scilifelab.icns
--exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
OUT_FILE_NAME: dds_cli_ubuntu-latest_x86_64
ASSET_MIME: application/x-elf
steps:
- uses: actions/checkout@v4
- name: Python 3.9 setup
uses: actions/setup-python@v4
with:
python-version: 3.9
# architecture: 'x64'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install PyInstaller
pip install -r requirements.txt
- name: Building with PyInstaller for ${{matrix.TARGET}}
run: ${{matrix.CMD_BUILD}}
- name: Test the executable
run: |
./dist/${{ matrix.OUT_FILE_NAME}} --version
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./dist/${{ matrix.OUT_FILE_NAME}}
asset_name: ${{ matrix.OUT_FILE_NAME}}
asset_content_type: ${{ matrix.ASSET_MIME}}
# ddsclibinaries:
# name: Build binary packages for the DDS CLI
# needs: build-n-publish
# runs-on: ${{ matrix.os }}
# strategy:
# matrix:
# include:
# - os: macos-13
# TARGET: MacOs_x86_64
# CMD_BUILD: >
# pyinstaller -F -c -n dds_cli_macos_x86_64 -i resources/scilifelab.icns
# --exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
# OUT_FILE_NAME: dds_cli_macos_x86_64
# ASSET_MIME: application/x-elf
# # - os: macos-latest #No virtual environment for this yet
# # TARGET: MacOs_arm64
# # CMD_BUILD: >
# # pyinstaller -F -c -n dds_cli_macos_arm64 -i resources/scilifelab.icns
# # --exclude-module=tests --target-arch arm64 --log-level INFO dds_cli/__init__.py
# # OUT_FILE_NAME: dds_cli_macos_arm64
# # ASSET_MIME: application/x-elf
# - os: windows-latest
# TARGET: Windows_x86_64
# CMD_BUILD: >
# PyInstaller -F -c -n dds_cli_win_x86_64.exe -i resources/scilifelab.ico
# --exclude-module=tests --log-level INFO dds_cli/__init__.py
# OUT_FILE_NAME: dds_cli_win_x86_64.exe
# ASSET_MIME: application/vnd.microsoft.portable-executable
# - os: ubuntu-20.04
# TARGET: Linux_x86_64
# CMD_BUILD: >
# pyinstaller -F -c -n dds_cli_ubuntu-20.04_x86_64 -i resources/scilifelab.icns
# --exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
# OUT_FILE_NAME: dds_cli_ubuntu-20.04_x86_64
# ASSET_MIME: application/x-elf
# - os: ubuntu-22.04
# TARGET: Linux_x86_64
# CMD_BUILD: >
# pyinstaller -F -c -n dds_cli_ubuntu-22.04_x86_64 -i resources/scilifelab.icns
# --exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
# OUT_FILE_NAME: dds_cli_ubuntu-22.04_x86_64
# ASSET_MIME: application/x-elf
# - os: ubuntu-latest # ubuntu-24.04 at the moment
# TARGET: Linux_x86_64
# CMD_BUILD: >
# pyinstaller -F -c -n dds_cli_ubuntu-latest_x86_64 -i resources/scilifelab.icns
# --exclude-module=tests --target-arch x86_64 --log-level INFO dds_cli/__init__.py
# OUT_FILE_NAME: dds_cli_ubuntu-latest_x86_64
# ASSET_MIME: application/x-elf
# steps:
# - uses: actions/checkout@v4
# - name: Python 3.9 setup
# uses: actions/setup-python@v4
# with:
# python-version: 3.9
# # architecture: 'x64'
# - name: Install dependencies
# run: |
# python -m pip install --upgrade pip
# pip install PyInstaller
# pip install -r requirements.txt
# - name: Building with PyInstaller for ${{matrix.TARGET}}
# run: ${{matrix.CMD_BUILD}}
# - name: Test the executable
# run: |
# ./dist/${{ matrix.OUT_FILE_NAME}} --version
# - name: Upload Release Asset
# id: upload-release-asset
# uses: actions/upload-release-asset@v1
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# upload_url: ${{ github.event.release.upload_url }}
# asset_path: ./dist/${{ matrix.OUT_FILE_NAME}}
# asset_name: ${{ matrix.OUT_FILE_NAME}}
# asset_content_type: ${{ matrix.ASSET_MIME}}

ddsclidocumentation:
name: Build the DDS CLI Documentation
Expand Down
5 changes: 5 additions & 0 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
"sphinx.ext.autosummary",
"sphinx_copybutton",
"sphinxcontrib.rsvgconverter",
"sphinxemoji.sphinxemoji",
]

# Add any paths that contain templates here, relative to this directory.
Expand All @@ -46,6 +47,10 @@
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]

sphinxemoji_style = "twemoji"
latex_engine = "xelatex"
latex_elements = {"preamble": r"\usepackage{emoji}"}


# -- Options for HTML output -------------------------------------------------

Expand Down
1 change: 1 addition & 0 deletions requirements-dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ sphinx-copybutton==0.5.1
sphinxcontrib-svg2pdfconverter==1.2.2
standard-imghdr==3.13.0 # removed in python 3.13, needed for sphinx (until more stable fix)
legacy-cgi==2.6.1 # removed in python 3.13, needed for sphinx (until more stable fix)
sphinxemoji==0.2.0
Loading