mirror of
https://github.com/qmk/qmk_cli.git
synced 2026-07-25 16:42:55 -04:00
90 lines
2.3 KiB
YAML
90 lines
2.3 KiB
YAML
# This workflow will upload a Python Package using Twine when a release is created
|
|
# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
|
|
|
|
name: Upload Python Package
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
version_part:
|
|
description: 'Which part of the version to increment (patch, minor, major)'
|
|
required: true
|
|
default: 'patch'
|
|
|
|
jobs:
|
|
deploy:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.7'
|
|
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v3
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Run ci_tests
|
|
run: ./ci_tests
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
python3 -m pip install --upgrade pip
|
|
pip install setuptools wheel
|
|
pip install -r requirements-dev.txt
|
|
|
|
- name: Bump version
|
|
run: |
|
|
git config --local user.email "hello@qmk.fm"
|
|
git config --local user.name "QMK Bot"
|
|
bumpversion ${{ github.event.inputs.version_part }}
|
|
|
|
- name: Push changes
|
|
uses: ad-m/github-push-action@master
|
|
with:
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
branch: master
|
|
tags: true
|
|
|
|
- name: Build and publish
|
|
env:
|
|
TWINE_USERNAME: qmk
|
|
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
|
|
run: |
|
|
python3 -m build
|
|
twine upload dist/*
|
|
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.repository_owner }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Log in to Docker Hub
|
|
uses: docker/login-action@v3
|
|
with:
|
|
username: ${{ secrets.DOCKER_HUB_USERNAME }}
|
|
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
|
|
|
|
- name: Build and Push to Docker Hub
|
|
uses: docker/build-push-action@v5.0.0
|
|
with:
|
|
context: .
|
|
push: true
|
|
platforms: linux/amd64,linux/arm64
|
|
tags: |
|
|
ghcr.io/qmk/qmk_cli:latest
|
|
qmkfm/qmk_cli:latest
|
|
|
|
- name: Trigger OS package builds
|
|
run: ./trigger_packages
|
|
env:
|
|
QMK_BOT_TOKEN: ${{ secrets.QMK_BOT_TOKEN }}
|