ci: fix releases with uv (#3971)
* Update scripts
* update the base dep in uv deps
* update nightly scripts
* Add uv creds for publish
* skip tests for now
* fix version
* only build the wheel
* try again
* add uv to python run
* [autofix.ci] apply automated fixes
* use uv cache
* more version fixe
* fixing versions
* fix base version
* Try no frozen?
* skip everything to try docker build
* tag
* frozen
* separate script for updating uv dep
* [autofix.ci] apply automated fixes
* hardcoded versions
* hardcoded versions
* add version to editable package
* build project before docker file runs
* try again
* fix uv patht o build
* don't know why this would mkae a difference
* debug statements
* debug statements
* debug statements
* change path to whl 🤷
* manually move the wheel...
* make dir
* try no sources
* add back tests
* refactor uv to action
* add uv action
* Update nightly build workflow to include uv lock files in version update commit
* Update lint-py workflow to use specific ref for setup-uv action
* Add checkout step to style-check-py GitHub Actions workflow
* Remove redundant GitHub ref syntax in lint-py.yml workflow
* Update lint-py.yml to use specific ref for setup-uv action
* Update action.yml: standardize quotes and remove redundant checkout step
* Add checkout step to GitHub Actions workflows for specific ref handling
- Introduced `actions/checkout@v4` step to multiple workflows to ensure code is checked out at a specific ref.
- Updated `.github/workflows/docker-build.yml`, `.github/workflows/release_nightly.yml`, `.github/workflows/lint-py.yml`, and `.github/workflows/style-check-py.yml` to include the new checkout step.
- Ensured credentials are persisted during the checkout process.
* Add checkout step to Python test workflow with specific ref
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
This commit is contained in:
parent
b9bcb09e63
commit
e19d90bd6c
14 changed files with 259 additions and 232 deletions
46
.github/workflows/nightly_build.yml
vendored
46
.github/workflows/nightly_build.yml
vendored
|
|
@ -24,28 +24,11 @@ jobs:
|
|||
main_tag: ${{ steps.generate_main_tag.outputs.main_tag }}
|
||||
base_tag: ${{ steps.set_base_tag.outputs.base_tag }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
- name: "Setup Environment"
|
||||
uses: ./.github/actions/setup-uv
|
||||
with:
|
||||
persist-credentials: true
|
||||
ref: ${{ github.ref }}
|
||||
|
||||
- name: Install uv
|
||||
uses: astral-sh/setup-uv@v3
|
||||
with:
|
||||
enable-cache: true
|
||||
cache-dependency-glob: "uv.lock"
|
||||
- name: "Set up Python"
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version-file: "pyproject.toml"
|
||||
- name: Restore uv cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: /tmp/.uv-cache
|
||||
key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
|
||||
restore-keys: |
|
||||
uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
|
||||
uv-${{ runner.os }}
|
||||
- name: Install the project
|
||||
run: uv sync --dev
|
||||
|
||||
|
|
@ -53,7 +36,7 @@ jobs:
|
|||
id: generate_main_tag
|
||||
run: |
|
||||
# NOTE: This outputs the tag with the `v` prefix.
|
||||
MAIN_TAG="$(uv run python ./scripts/ci/pypi_nightly_tag.py main)"
|
||||
MAIN_TAG="$(uv run ./scripts/ci/pypi_nightly_tag.py main)"
|
||||
echo "main_tag=$MAIN_TAG" >> $GITHUB_OUTPUT
|
||||
echo "main_tag=$MAIN_TAG"
|
||||
|
||||
|
|
@ -72,7 +55,7 @@ jobs:
|
|||
if: ${{ steps.check_main_tag.outputs.main_tag_exists == 'false' }}
|
||||
run: |
|
||||
# NOTE: This outputs the tag with the `v` prefix.
|
||||
BASE_TAG="$(uv run python ./scripts/ci/pypi_nightly_tag.py base)"
|
||||
BASE_TAG="$(uv run ./scripts/ci/pypi_nightly_tag.py base)"
|
||||
echo "base_tag=$BASE_TAG" >> $GITHUB_OUTPUT
|
||||
echo "base_tag=$BASE_TAG"
|
||||
|
||||
|
|
@ -85,24 +68,25 @@ jobs:
|
|||
git config --global user.email "bot-nightly-builds@langflow.org"
|
||||
git config --global user.name "Langflow Bot"
|
||||
|
||||
# WARNING: These scripts must be run in this order.
|
||||
# Poetry will use a different cached virtual environment once the main pyproject.toml
|
||||
# project-name is updated, which does not have dependencies installed.
|
||||
BASE_TAG="${{ steps.generate_base_tag.outputs.base_tag }}"
|
||||
echo "Updating base project version to $BASE_TAG"
|
||||
uv run python ./scripts/ci/update_pyproject_name.py langflow-base-nightly base
|
||||
uv run python ./scripts/ci/update_pyproject_version.py $BASE_TAG base
|
||||
uv run ./scripts/ci/update_pyproject_name.py langflow-base-nightly base
|
||||
uv run ./scripts/ci/update_pyproject_version.py $BASE_TAG base
|
||||
|
||||
# This updates the dependency of langflow-base to langflow-base-nightly in {project_root}/pyproject.toml
|
||||
uv run python ./scripts/ci/update_lf_base_dependency.py $BASE_TAG
|
||||
# Note: Still necessary for poetry
|
||||
uv run ./scripts/ci/update_lf_base_dependency.py $BASE_TAG
|
||||
|
||||
# Use the main tag created earlier
|
||||
MAIN_TAG="${{ steps.generate_main_tag.outputs.main_tag }}"
|
||||
echo "Updating main project version to $MAIN_TAG"
|
||||
uv run python ./scripts/ci/update_pyproject_version.py $MAIN_TAG main
|
||||
uv run python ./scripts/ci/update_pyproject_name.py langflow-nightly main
|
||||
uv run ./scripts/ci/update_pyproject_version.py $MAIN_TAG main
|
||||
uv run ./scripts/ci/update_pyproject_name.py langflow-nightly main
|
||||
uv run ./scripts/ci/update_uv_dependency.py $BASE_TAG
|
||||
uv lock
|
||||
cd src/backend/base && uv lock
|
||||
|
||||
git add pyproject.toml src/backend/base/pyproject.toml
|
||||
git add pyproject.toml src/backend/base/pyproject.toml uv.lock src/backend/base/uv.lock
|
||||
git commit -m "Update version and project name"
|
||||
|
||||
echo "Tagging main with $MAIN_TAG"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue