feat: Add --piku-repo and --piku-branch options for installing from forks #42
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: E2E Full Test Suite | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| workflow_dispatch: | |
| inputs: | |
| piku_repo: | |
| description: 'Piku repository (owner/repo)' | |
| required: false | |
| default: 'piku/piku' | |
| piku_branch: | |
| description: 'Piku branch' | |
| required: false | |
| default: 'master' | |
| test_filter: | |
| description: 'Test filter pattern (e.g., "python", "nodejs")' | |
| required: false | |
| default: '' | |
| jobs: | |
| e2e-tests: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 45 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| - name: Set environment variables | |
| run: | | |
| echo "PIKU_REPO=${{ github.event.inputs.piku_repo || 'piku/piku' }}" >> $GITHUB_ENV | |
| echo "PIKU_BRANCH=${{ github.event.inputs.piku_branch || 'master' }}" >> $GITHUB_ENV | |
| echo "TEST_FILTER=${{ github.event.inputs.test_filter || '' }}" >> $GITHUB_ENV | |
| - name: Run E2E tests | |
| run: | | |
| cd tests/e2e | |
| chmod +x run_e2e_tests.sh | |
| if [ -n "$TEST_FILTER" ]; then | |
| ./run_e2e_tests.sh "$TEST_FILTER" | |
| else | |
| ./run_e2e_tests.sh | |
| fi | |
| env: | |
| PIKU_REPO: ${{ env.PIKU_REPO }} | |
| PIKU_BRANCH: ${{ env.PIKU_BRANCH }} | |
| e2e-python-pip: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| - name: Run Python pip tests | |
| run: | | |
| cd tests/e2e | |
| chmod +x run_e2e_tests.sh | |
| ./run_e2e_tests.sh python_pip | |
| env: | |
| PIKU_REPO: ${{ github.event.inputs.piku_repo || 'piku/piku' }} | |
| PIKU_BRANCH: ${{ github.event.inputs.piku_branch || 'master' }} | |
| # This job uses a different piku branch that includes UV support fixes | |
| # (clusterfudge/piku:claude/fix-piku-uv-support-ILtq9) until merged upstream | |
| e2e-python-uv: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| - name: Run Python UV tests | |
| run: | | |
| cd tests/e2e | |
| chmod +x run_e2e_tests.sh | |
| ./run_e2e_tests.sh python_uv | |
| env: | |
| # Use clusterfudge/piku with UV fixes until merged upstream | |
| PIKU_REPO: ${{ github.event.inputs.piku_repo || 'clusterfudge/piku' }} | |
| PIKU_BRANCH: ${{ github.event.inputs.piku_branch || 'claude/fix-piku-uv-support-ILtq9' }} | |
| e2e-nodejs: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| - name: Run Node.js tests | |
| run: | | |
| cd tests/e2e | |
| chmod +x run_e2e_tests.sh | |
| ./run_e2e_tests.sh nodejs | |
| env: | |
| PIKU_REPO: ${{ github.event.inputs.piku_repo || 'piku/piku' }} | |
| PIKU_BRANCH: ${{ github.event.inputs.piku_branch || 'master' }} | |
| e2e-commands: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Check out repository | |
| uses: actions/checkout@v4 | |
| - name: Run piku command tests | |
| run: | | |
| cd tests/e2e | |
| chmod +x run_e2e_tests.sh | |
| ./run_e2e_tests.sh piku_commands | |
| env: | |
| PIKU_REPO: ${{ github.event.inputs.piku_repo || 'piku/piku' }} | |
| PIKU_BRANCH: ${{ github.event.inputs.piku_branch || 'master' }} |