Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add wheel release workflow #238

Merged
merged 17 commits into from
Nov 12, 2022
Merged

Add wheel release workflow #238

merged 17 commits into from
Nov 12, 2022

Conversation

codesue
Copy link
Collaborator

@codesue codesue commented Nov 10, 2022

Description

This pull request adds:

  • a workflow that builds and uploads a model-card-toolkit wheel on release and publishes it to PyPI and TestPyPI
  • a workflow to cherry pick commits
  • documentation on how to perform releases
  • updates zlib archive location to prevent Bazel commands from failing with not found errors (see https://zlib.net/zlib-1.2.11.tar.gz Not Found bazelbuild/bazel#15136)

These workflows and release process were adapted from those in tfx-addons.

I tested the changes by triggering the workflow on pull request:

Checklist

Before submitting a pull request, please be sure to do the following:

  • Read the How to Contribute guide if this is your first contribution.
  • Open an issue to discuss this change.
  • Update documentation if applicable.
  • Write new tests if applicable.

@codesue codesue marked this pull request as ready for review November 10, 2022 14:05
@hanneshapke
Copy link
Collaborator

hanneshapke commented Nov 10, 2022

@codesue thank you for the awesome PR! Since we can push every version only once to PyPI, let's the lining and testing steps to the PR.
@casassg has done magic over at TFX Addons. I think we can copy and adjust the entire .github folder for the steps:
https://github.com/tensorflow/tfx-addons/tree/main/.github

The repo contains the workflows for linting -> tests -> build package -> push to pypi

What do you think?

@casassg
Copy link
Member

casassg commented Nov 10, 2022

Indeed. However note that MCT requires a bit more complexity when it comes to building it's wheel. We may want to clean it after.

Also Sue for now, we may want to just add everything after https://github.com/tensorflow/tfx-addons/blob/18274a7ee395f51bb89490dce33885aa16b98446/.github/workflows/release.yml#L31 into the workflow

Copy link
Member

@casassg casassg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we can iterate on this

@codesue
Copy link
Collaborator Author

codesue commented Nov 11, 2022

name: Build Model Card Toolkit package and release to PyPI and Test PyPI
runs-on: ubuntu-latest
container:
image: gcr.io/tfx-oss-public/tfx_base:py37-20200729
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@codesue This is very nit, so apologies. Do we need to the tfx-base image here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This image was convenient because it has the right versions of the tools need to build the wheel, e.g. bazel. It's used to build tfx wheels, which have similar build steps.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, perfect! Thank you for the explanation @codesue!

WORKSPACE Show resolved Hide resolved
@codesue codesue changed the title Add wheel building workflow Add wheel release workflow Nov 12, 2022
@codesue codesue merged commit 0e983fc into master Nov 12, 2022
@codesue codesue deleted the codesue/staging branch November 12, 2022 00:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants