name: Budibase CI on: # Trigger the workflow on push or pull request, # but only for the master branch push: branches: - master - develop pull_request: branches: - master - develop workflow_dispatch: env: BRANCH: ${{ github.event.pull_request.head.ref }} BASE_BRANCH: ${{ github.event.pull_request.base.ref}} PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} jobs: lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Use Node.js 14.x uses: actions/setup-node@v1 with: node-version: 14.x - run: yarn - run: yarn lint build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: submodules: true token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Use Node.js 14.x uses: actions/setup-node@v1 with: node-version: 14.x - run: yarn - run: yarn bootstrap - run: yarn build test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: submodules: true token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Use Node.js 14.x uses: actions/setup-node@v1 with: node-version: 14.x - run: yarn - run: yarn bootstrap - run: yarn test - uses: codecov/codecov-action@v3 with: token: ${{ secrets.CODECOV_TOKEN }} # not required for public repos name: codecov-umbrella verbose: true integration-test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: submodules: true token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Use Node.js 14.x uses: actions/setup-node@v1 with: node-version: 14.x - run: yarn && yarn bootstrap && yarn build - run: | cd qa-core yarn setup yarn test:ci env: BB_ADMIN_USER_EMAIL: admin BB_ADMIN_USER_PASSWORD: admin check-pro-submodule: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 with: submodules: true token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} - name: Check submodule run: | cd packages/pro if ! git branch --contains $github.head_ref | grep -q chore/pro_as_submodule; then echo "Current commit is not part of main branch" exit 1 else echo "All good, the submodule has been merged!" fi -