mirror of
https://github.com/hwchase17/langchain
synced 2024-10-29 17:07:25 +00:00
95a1b598fe
We don't use any of the new functionality at the moment. Just making sure we don't fall back on versions and fail to benefit from new patches. This is an easy upgrade and it's always harder to upgrade across multiple major versions at once.
65 lines
2.0 KiB
YAML
65 lines
2.0 KiB
YAML
name: release
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
working-directory:
|
|
required: true
|
|
type: string
|
|
description: "From which folder this pipeline executes"
|
|
|
|
env:
|
|
POETRY_VERSION: "1.6.1"
|
|
|
|
jobs:
|
|
if_release:
|
|
# Disallow publishing from branches that aren't `master`.
|
|
if: github.ref == 'refs/heads/master'
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
# This permission is used for trusted publishing:
|
|
# https://blog.pypi.org/posts/2023-04-20-introducing-trusted-publishers/
|
|
#
|
|
# Trusted publishing has to also be configured on PyPI for each package:
|
|
# https://docs.pypi.org/trusted-publishers/adding-a-publisher/
|
|
id-token: write
|
|
|
|
# This permission is needed by `ncipollo/release-action` to create the GitHub release.
|
|
contents: write
|
|
defaults:
|
|
run:
|
|
working-directory: ${{ inputs.working-directory }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Set up Python + Poetry ${{ env.POETRY_VERSION }}
|
|
uses: "./.github/actions/poetry_setup"
|
|
with:
|
|
python-version: "3.10"
|
|
poetry-version: ${{ env.POETRY_VERSION }}
|
|
working-directory: ${{ inputs.working-directory }}
|
|
cache-key: release
|
|
|
|
- name: Build project for distribution
|
|
run: poetry build
|
|
- name: Check Version
|
|
id: check-version
|
|
run: |
|
|
echo version=$(poetry version --short) >> $GITHUB_OUTPUT
|
|
- name: Create Release
|
|
uses: ncipollo/release-action@v1
|
|
if: ${{ inputs.working-directory == 'libs/langchain' }}
|
|
with:
|
|
artifacts: "dist/*"
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
draft: false
|
|
generateReleaseNotes: true
|
|
tag: v${{ steps.check-version.outputs.version }}
|
|
commit: master
|
|
- name: Publish package distributions to PyPI
|
|
uses: pypa/gh-action-pypi-publish@release/v1
|
|
with:
|
|
packages-dir: ${{ inputs.working-directory }}/dist/
|
|
verbose: true
|
|
print-hash: true
|