Bump langcodes from 3.4.1 to 3.5.0 in /.github #727
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Check Python | |
on: [push, pull_request, merge_group] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python: ['3.11', '3.12', '3.13'] | |
env: | |
DEBUG_ACCESS_KEY: ${{ secrets.DEBUG_ACCESS_KEY }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Python ${{ matrix.python }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Install packages | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y libgnutls28-dev | |
pip install -U pip | |
pip install -r .github/pythonchecks.txt | |
pip install -r .deps/noauto.txt | |
pyproject-build --wheel --outdir dist . | |
find dist -name "*.whl" | xargs pip3 install | |
- name: Run tests | |
run: | | |
flake8 --exclude=*/__init__.py,dist/*,build/* --ignore=E501,W503,SFS301,T003,PT009 | |
coverage run --branch -m pytest tests | |
mypy miraheze --ignore-missing-imports | |
deb: | |
needs: build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install requirements | |
run: | | |
sudo apt install -y python3-requests python3-filelock python3-internetarchive python3-setuptools | |
sudo apt install -y python3-apt apt-file dpkg-dev fakeroot build-essential devscripts debhelper | |
sudo apt-file update | |
pip install build wheel2deb | |
- name: Build wheel | |
run: | | |
pyproject-build --wheel --outdir dist . | |
cd dist | |
pip wheel -r ../.github/debci.txt --no-deps | |
# FIXME: https://github.com/pytries/marisa-trie/issues/106 | |
mv marisa_trie-1.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl marisa_trie-1.2.1-py3-cp310-manylinux2014_x86_64.whl | |
- name: wheel2deb | |
run: | | |
cd dist | |
wheel2deb | |
- name: show off | |
run: | | |
cd dist | |
ls -l output/*.deb | |
sudo dpkg -i output/*.deb | |
apt show python3-miraheze-pyutils | |
deploy: | |
needs: deb | |
runs-on: ubuntu-latest | |
environment: | |
name: pypi | |
url: https://pypi.org/p/Miraheze_PyUtils | |
permissions: | |
id-token: write # IMPORTANT: this permission is mandatory for trusted publishing | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- name: Set up Python 3.11 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.11 | |
- name: Install pypa/build | |
run: | | |
python -m pip install --upgrade pip wheel | |
pip install -r .github/pythonchecks.txt | |
- name: Build a binary wheel | |
run: pyproject-build --wheel --outdir dist . | |
- name: Publish to PyPi | |
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') | |
uses: pypa/[email protected] | |
notify-irc: | |
needs: deploy | |
runs-on: ubuntu-latest | |
if: ${{ always() && github.repository_owner == 'miraheze' && ( github.ref == 'refs/heads/master' || github.event_name == 'pull_request' ) }} | |
steps: | |
- name: succeeded | |
uses: technote-space/workflow-conclusion-action@v3 | |
- uses: rectalogic/notify-irc@v2 | |
if: env.WORKFLOW_CONCLUSION == 'success' | |
with: | |
channel: "#miraheze-tech-ops" | |
server: "irc.libera.chat" | |
nickname: miraheze-github | |
message: ${{ github.repository }} - ${{ github.actor }} the build passed. | |
sasl_password: ${{ secrets.IRC_MIRAHEZEBOTS }} | |
- name: failed | |
uses: technote-space/workflow-conclusion-action@v3 | |
- uses: rectalogic/notify-irc@v2 | |
if: env.WORKFLOW_CONCLUSION == 'failure' | |
with: | |
channel: "#miraheze-tech-ops" | |
server: "irc.libera.chat" | |
nickname: miraheze-github | |
message: ${{ github.repository }} - ${{ github.actor }} the build has errored. | |
sasl_password: ${{ secrets.IRC_MIRAHEZEBOTS }} |