feat(pm): integrate git dependency support into install flow (3/3) #892
Workflow file for this run
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: utoopack-integration | |
| on: | |
| push: | |
| branches: ["next"] | |
| pull_request: | |
| types: [opened, synchronize, reopened, edited] | |
| permissions: | |
| contents: read | |
| jobs: | |
| integration: | |
| if: (github.event_name == 'push' && contains(github.event.head_commit.message, '(pack)')) || (github.event_name == 'pull_request' && contains(github.event.pull_request.title, '(pack)')) | |
| name: Pack Integration Test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Init git submodules | |
| run: git submodule update --init --recursive --depth 1 | |
| - name: Free disk space | |
| run: | | |
| sudo rm -rf /usr/share/dotnet | |
| sudo rm -rf /usr/local/lib/android | |
| sudo rm -rf /opt/ghc | |
| sudo rm -rf "/usr/local/share/boost" | |
| sudo rm -rf /usr/share/swift | |
| sudo rm -rf /usr/local/.ghcup | |
| sudo rm -rf /usr/local/lib/node_modules | |
| sudo rm -rf /usr/local/share/powershell | |
| sudo rm -rf /usr/share/miniconda | |
| sudo docker image prune --all --force | |
| - name: Setup node | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| - name: Install dependencies | |
| run: npm install | |
| - name: Setup Rust | |
| uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: nightly-2026-02-05 | |
| components: rustfmt, clippy | |
| # - name: Rust Cache | |
| # uses: swatinem/rust-cache@v2 | |
| - name: Integration Test | |
| run: | | |
| # Build packages | |
| npm run build --workspace @utoo/pack-shared | |
| npm run build:local --workspace @utoo/pack | |
| npm run build --workspace @utoo/pack-cli | |
| # Verify examples | |
| for dir in examples/*/; do | |
| if [ -f "${dir}package.json" ]; then | |
| if jq -e '.scripts.build // "" | contains("up build")' "${dir}package.json" > /dev/null; then | |
| echo "----------------------------------------------------" | |
| echo "Verifying example: $dir" | |
| echo "----------------------------------------------------" | |
| (cd "$dir" && npm run build && echo "Output dist content:" && ls -lh dist | awk 'NR>1 {print $5, $9}') | |
| if [ $? -ne 0 ]; then | |
| echo "Error: Build failed for example $dir" | |
| exit 1 | |
| fi | |
| fi | |
| fi | |
| done |