diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f3e7144..a7e0cd4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,11 +15,32 @@ on: description: "plugin version" required: true type: string + platform_arm: + description: "Use ARM platform (true = manylinux_2_17_aarch64, false = manylinux_2_17_x86_64)" + required: true + default: "false" jobs: repackage: runs-on: ubuntu-latest steps: + - name: Print workflow inputs + run: | + echo "plugin_author = ${{ inputs.plugin_author }}" + echo "plugin_name = ${{ inputs.plugin_name }}" + echo "plugin_version = ${{ inputs.plugin_version }}" + echo "platform_arm = ${{ inputs.platform_arm }}" + + - name: Resolve platform + run: | + if [ "${{ inputs.platform_arm }}" = "true" ]; then + echo "PIP_PLATFORM=manylinux_2_17_aarch64" >> "$GITHUB_ENV" + echo "PACKAGE_SUFFIX=offline-arm" >> "$GITHUB_ENV" + else + echo "PIP_PLATFORM=manylinux_2_17_x86_64" >> "$GITHUB_ENV" + echo "PACKAGE_SUFFIX=offline" >> "$GITHUB_ENV" + fi + - name: Checkout repository uses: actions/checkout@v4 @@ -33,22 +54,28 @@ jobs: - name: Run plugin repackaging script run: | - ./plugin_repackaging.sh -p manylinux_2_17_x86_64 market "${{ github.event.inputs.plugin_author }}" "${{ github.event.inputs.plugin_name }}" "${{ github.event.inputs.plugin_version }}" + PIP_MIRROR_URL=https://pypi.org/simple \ + ./plugin_repackaging.sh \ + -p ${{ env.PIP_PLATFORM }} \ + -s ${{ env.PACKAGE_SUFFIX }} \ + market \ + "${{ github.event.inputs.plugin_author }}" \ + "${{ github.event.inputs.plugin_name }}" \ + "${{ github.event.inputs.plugin_version }}" - name: Find repackaged artifact - id: artifact run: | - ARTIFACT_PATH=$(find . -type f -name '*-offline.difypkg' | head -n 1) + ARTIFACT_PATH=$(find . -type f -name "*-${PACKAGE_SUFFIX}.difypkg" | head -n 1) if [ -z "$ARTIFACT_PATH" ]; then - echo "No -offline.difypkg artifact found!" + echo "No *-${PACKAGE_SUFFIX}.difypkg artifact found!" exit 1 fi - ARTIFACT_NAME=$(basename "$ARTIFACT_PATH") - echo "artifact=$ARTIFACT_PATH" >> $GITHUB_OUTPUT - echo "artifact_name=$ARTIFACT_NAME" >> $GITHUB_OUTPUT + + echo "ARTIFACT_PATH=$ARTIFACT_PATH" >> $GITHUB_ENV + echo "ARTIFACT_NAME=$(basename "$ARTIFACT_PATH")" >> $GITHUB_ENV - name: Upload artifact uses: actions/upload-artifact@v4 with: - name: ${{ steps.artifact.outputs.artifact_name }} - path: ${{ steps.artifact.outputs.artifact }} + name: ${{ env.ARTIFACT_NAME }} + path: ${{ env.ARTIFACT_PATH }} diff --git a/README.md b/README.md index 3463134..52f981d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,14 @@ ## Dify 1.0 Plugin Downloading and Repackaging +### How To Use With Github Action +1. Fork this repository +2. Open the GitHub page of your forked repository +[https://github.com/{your_username}/dify-sandbox-python-requirements-download]() +3. Run workflow +![run_github_action_1](images/run_github_action_1.png) +![run_github_action_2](images/run_github_action_2.png) +4. Download artifact +![run_github_action_3](images/run_github_action_3.png) + ### How To Use With Docker 1.change param in dockerfile diff --git a/images/run_github_action_1.png b/images/run_github_action_1.png new file mode 100644 index 0000000..8d5b50f Binary files /dev/null and b/images/run_github_action_1.png differ diff --git a/images/run_github_action_2.png b/images/run_github_action_2.png new file mode 100644 index 0000000..27a7270 Binary files /dev/null and b/images/run_github_action_2.png differ diff --git a/images/run_github_action_3.png b/images/run_github_action_3.png new file mode 100644 index 0000000..cb9f875 Binary files /dev/null and b/images/run_github_action_3.png differ