diff --git a/.github/actions/cache-bootstrap/action.yml b/.github/actions/cache-bootstrap/action.yml index 5f1d565fa0..ba4fc14c74 100644 --- a/.github/actions/cache-bootstrap/action.yml +++ b/.github/actions/cache-bootstrap/action.yml @@ -9,23 +9,27 @@ inputs: runs: using: composite steps: - # for always overriding cache, use: pat-s/always-upload-cache@v2.1.5 + # for always overriding cache, use: pat-s/always-upload-cache@v2.1.5 - uses: actions/cache@v2 id: cache with: path: | node_modules */*/node_modules - key: ${{ runner.os }}-yarn-${{inputs.extension}}-${{ hashFiles('**/yarn.lock') }} - # We want to only bootstrap and install if no cache is found. + key: ${{ runner.os }}-yarn-${{inputs.extension}}-v6-${{ hashFiles('**/yarn.lock') }} + # We want to only bootstrap and install if no cache is found. # Futhermore, we might want to do a partial, hoisted, bootstrap towards # the base branch if it exists, otherwise we choose develop for this. + + # yarn install --frozen-lockfile - run: | - if [[ "${{steps.cache.outputs.cache-hit}}" != "true" ]]; then - yarn install --frozen-lockfile + yarn install --frozen-lockfile + if [[ "${{steps.cache.outputs.cache-hit}}" != "true" ]] || [[ "${{inputs.partial}}" != "true" ]]; then yarn bootstrap --concurrency=2 elif [[ "${{inputs.partial}}" = "true" ]]; then [[ ! -z "${GITHUB_BASE_REF}" ]] && ref="${GITHUB_BASE_REF#refs/heads/}" || ref="develop" yarn bootstrap --npm-client=npm --hoist --since "origin/${ref}...HEAD" --concurrency=2 fi shell: bash + + diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index fd0a999b79..2cde0d1809 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -3,22 +3,22 @@ on: [push, pull_request] jobs: unit-tests: - runs-on: ubuntu-latest - steps: + runs-on: ubuntu-latest + steps: - name: Checkout uses: actions/checkout@v2.3.5 with: fetch-depth: 0 - + - name: Setup Node.js environment uses: actions/setup-node@v2.4.1 with: - node-version: "14" - cache: "yarn" + node-version: '14' + cache: 'yarn' - name: Assert changed - run: ./scripts/assert-changed-files-actions.sh "packages/*|(e2e|integration)-tests/*|yarn.lock" - + run: ./scripts/assert-changed-files-actions.sh "packages" + - name: Bootstrap packages uses: ./.github/actions/cache-bootstrap with: @@ -27,11 +27,11 @@ jobs: - name: Run unit tests run: node --max-old-space-size=2048 ./node_modules/.bin/jest -w 1 - + integration-tests: - runs-on: ubuntu-latest - - services: + runs-on: ubuntu-latest + + services: postgres: image: postgres env: @@ -44,30 +44,30 @@ jobs: --health-retries 5 ports: - 5432:5432 - - steps: + + steps: - name: Checkout uses: actions/checkout@v2.3.5 with: fetch-depth: 0 - + - name: Setup Node.js environment uses: actions/setup-node@v2.4.1 with: - node-version: "14" - cache: "yarn" + node-version: '14' + cache: 'yarn' - name: Bootstrap packages uses: ./.github/actions/cache-bootstrap with: extension: integration-tests - + - name: Install dev cli run: sudo npm i -g medusa-dev-cli - + - name: Set path to medusa repo run: medusa-dev --set-path-to-repo `pwd` - + - name: Force install run: medusa-dev --force-install working-directory: integration-tests/api @@ -75,9 +75,11 @@ jobs: - name: Build integration tests run: yarn build working-directory: integration-tests/api - + - name: Run integration tests run: yarn test working-directory: integration-tests/api - env: + env: DB_PASSWORD: postgres + +