diff --git a/.github/workflows/create-release.yml b/.github/workflows/create-release.yml new file mode 100644 index 000000000..ef3c8f698 --- /dev/null +++ b/.github/workflows/create-release.yml @@ -0,0 +1,64 @@ +name: Create Release +on: + workflow_dispatch: + inputs: + version: + description: "Version to release" + required: true + type: string + release_type: + description: "Type of release (base or main)" + required: true + type: choice + options: + - base + - main + +env: + POETRY_VERSION: "1.8.2" +jobs: + release: + name: Build Langflow + runs-on: ubuntu-latest + outputs: + version: ${{ steps.check-version.outputs.version }} + steps: + - uses: actions/checkout@v4 + - name: Install poetry + run: pipx install poetry==$POETRY_VERSION + - name: Set up Python 3.12 + uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: "poetry" + - name: Build project for distribution + run: | + if [ "${{ inputs.release_type }}" == "base" ]; then + make build base=true + else + make build main=true + fi + - name: Upload Artifact + uses: actions/upload-artifact@v4 + with: + name: dist${{ inputs.release_type }} + path: ${{ inputs.release_type == 'base' && 'src/backend/base/dist' || 'dist' }} + create_release: + name: Create Release Job + runs-on: ubuntu-latest + needs: release + steps: + - uses: actions/download-artifact@v4 + with: + name: dist${{ inputs.release_type }} + path: dist + - name: Create Release Notes + uses: ncipollo/release-action@v1 + with: + artifacts: "dist/*" + token: ${{ secrets.GITHUB_TOKEN }} + draft: false + generateReleaseNotes: true + prerelease: true + tag: v${{ inputs.version }} + commit: dev diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml index edd515f01..b72def8b3 100644 --- a/.github/workflows/pre-release.yml +++ b/.github/workflows/pre-release.yml @@ -67,27 +67,30 @@ jobs: else make publish main=true fi + - name: Upload Artifact + uses: actions/upload-artifact@v4 + with: + name: dist${{ inputs.release_type }} + path: ${{ inputs.release_type == 'base' && 'src/backend/base/dist' || 'dist' }} call_docker_build: name: Call Docker Build Workflow - runs-on: ubuntu-latest needs: release - steps: - - uses: actions/checkout@v4 - - uses: ./.github/workflows/docker-build.yml - with: - version: ${{ needs.release.outputs.version }} - release_type: ${{ inputs.release_type }} + uses: langflow-ai/langflow/.github/workflows/docker-build.yml@dev + with: + version: ${{ needs.release.outputs.version }} + release_type: ${{ inputs.release_type }} + secrets: inherit create_release: name: Create Release runs-on: ubuntu-latest - needs: [call_docker_build, release] + needs: [release] if: ${{ inputs.release_type == 'main' }} steps: - uses: actions/download-artifact@v4 with: - name: dist + name: dist${{ inputs.release_type }} path: dist - name: Create Release uses: ncipollo/release-action@v1 diff --git a/README.md b/README.md index b40f380ac..80b42c26d 100644 --- a/README.md +++ b/README.md @@ -1,21 +1,49 @@ -# [](https://www.langflow.org) +# [](https://www.langflow.org) -### [Langflow](https://www.langflow.org) is a new, visual way to build, iterate and deploy AI apps. +
+ A visual framework for building Gen-AI and RAG apps with LangChain +
++ Open-source, Python-powered, fully customizable, LLM and vector store agnostic +
-# ⚡️ Documentation and Community ++ Docs - + Join our Discord - + Follow us on X - + Live demo +
-- [Documentation](https://docs.langflow.org) -- [Discord](https://discord.com/invite/EqksyE2EX9) + -# 📦 Installation +
+
+