nx/docs/shared/monorepo-ci-bitbucket-pipelines.md
Isaac Mann 61436a64ef
docs(core): inferred targets (#21167)
Co-authored-by: Katerina Skroumpelou <mandarini@users.noreply.github.com>
Co-authored-by: Colum Ferry <cferry09@gmail.com>
Co-authored-by: Emily Xiong <xiongemi@gmail.com>
Co-authored-by: Nicholas Cunningham <ndcunningham@gmail.com>
Co-authored-by: Jason Jean <jasonjean1993@gmail.com>
Co-authored-by: Victor Savkin <mail@vsavkin.com>
Co-authored-by: Jack Hsu <jack.hsu@gmail.com>
2024-02-03 00:14:05 -05:00

1.2 KiB

Configuring CI Using Bitbucket Pipelines and Nx

Below is an example of an Bitbucket Pipelines, building and testing only what is affected.

image: node:20
pipelines:
  pull-requests:
    '**':
      - step:
          name: 'Build and test affected apps on Pull Requests'
          caches: # optional
            - node
          script:
            - npx nx-cloud start-ci-run --distribute-on="5 linux-medium-js" --stop-agents-after="build" # this line enables distribution
            - npm ci
            - npx nx-cloud record -- nx format:check
            - npx nx affected -t lint test build --base=origin/master --head=HEAD

  branches:
    main:
      - step:
          name: "Build and test affected apps on 'main' branch changes"
          caches: # optional
            - node
          script:
            - npx nx-cloud start-ci-run --distribute-on="5 linux-medium-js" --stop-agents-after="build" # this line enables distribution
            - npm ci
            - npx nx-cloud record -- nx format:check
            - npx nx affected -t lint test build --base=HEAD~1

The pull-requests and main jobs implement the CI workflow.