Skip to content

Commit

Permalink
PyPI whl build and upload to PyPI test server nightly job (#2317)
Browse files Browse the repository at this point in the history
This script builds the python 3.10 and 3.11 wheels using python/tflite_micro/pypi_build.sh and then uploads to the test PyPI server with python/tflite_micro/pypi_upload.sh. It is scheduled to run at 1300 UTC each day (0600 or 0700 PST). The runs require approximately 11 minutes.

This job can also be run manually by going to Actions > PyPI Build. There is an option to run only the whl build without upload for troubleshooting.

It also should be relatively obvious how to add a release build option if the live server key was added to repo secrets and the script env block and another optional run block added with the -p <live server key> switch added to a copy of the upload script line.

I have tested the build block, but can't test the upload section since I don't have access to the PYPI_API_KEY secret. 

BUG=request from rj
  • Loading branch information
jwithers authored Nov 15, 2023
1 parent 0996efe commit 7811156
Showing 1 changed file with 50 additions and 0 deletions.
50 changes: 50 additions & 0 deletions .github/workflows/pypi_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# YAML schema for GitHub Actions:
# https://help.github.com/en/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions
#
# Helpful YAML parser to clarify YAML syntax:
# https://yaml-online-parser.appspot.com/
#

name: PyPI Build

on:
schedule:
# 1pm UTC is 6am or 7am PT depending on daylight savings.
- cron: '0 13 * * *'

workflow_dispatch:
inputs:
upload-type:
description: 'Upload type'
required: true
default: 'pypi'
type: choice
options:
- 'pypi'
- 'no upload'
env:
TWINE_PASSWORD: ${{ secrets.PYPI_API_KEY }}

jobs:
pypi-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.TFLM_BOT_REPO_TOKEN }}
- name: Build Wheel 3.10
run: |
python/tflite_micro/pypi_build.sh cp310
- name: Build Wheel 3.11
run: |
python/tflite_micro/pypi_build.sh cp311
- name: Check Directory Output
run: |
ls -l bazel-pypi-out
- name: upload to pypi
if: |
github.event.inputs.upload-type == 'pypi' ||
github.event_name == 'schedule'
run: |
python/tflite_micro/pypi_upload.sh \
bazel-pypi-out/tflite_micro-*.whl

0 comments on commit 7811156

Please sign in to comment.