name: Test on: push: jobs: test: name: Test runs-on: ubuntu-20.04 steps: - name: Init check if: ${{ github.repository != 'AmazeeLabs/silverback-template'}} run: echo 'Please run the INIT script. See the root README.md for instructions.' && false - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 0 - name: Setup uses: ./.github/actions/setup - name: TurboRepo local server uses: felixmosh/turborepo-gh-artifacts@v2 with: server-token: 'local' repo-token: ${{ secrets.GITHUB_TOKEN }} - name: Test run: pnpm turbo:test env: TURBO_API: 'http://127.0.0.1:9080' TURBO_TOKEN: 'local' TURBO_TEAM: 'local' - name: Upload Playwright report uses: actions/upload-artifact@v3 if: failure() with: name: playwright-report path: tests/e2e/playwright-report/ retention-days: 3 - name: Publish to Chromatic uses: chromaui/action@v1 with: token: ${{ secrets.GITHUB_TOKEN }} projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} storybookBuildDir: packages/ui/storybook-static storybookBaseDir: packages/ui onlyChanged: true exitOnceUploaded: true - name: Deploy storybook to netlify run: pnpm run --filter=@custom/ui build && npx netlify-cli deploy --prod --filter @custom/ui --dir=packages/ui/storybook-static env: VITEST_CLOUDINARY_CLOUDNAME: local NETLIFY_SITE_ID: ${{ vars.NETLIFY_STORYBOOK_ID }} NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} if: ${{ github.ref == 'refs/heads/dev' && vars.NETLIFY_STORYBOOK_ID != '' }} - name: Merge release to prod (silverback-template only) uses: devmasx/merge-branch@1.4.0 if: ${{ github.repository == 'AmazeeLabs/silverback-template' && github.ref == 'refs/heads/release'}} with: type: now from_branch: release target_branch: prod github_token: ${{ secrets.GITHUB_TOKEN }} docker_build: name: Docker Build if: startsWith(github.ref_name, 'test-all/') || startsWith(github.head_ref, 'test-all/') runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 1 - name: Setup Ruby uses: ruby/setup-ruby@v1 with: ruby-version: 2 bundler-cache: true - name: Install Pygmy run: gem install pygmy - name: Start Pygmy run: pygmy up - name: Docker Build & Up run: DOCKER_BUILDKIT=1 docker-compose up -d --build - name: Wait a bit run: sleep 5 - name: Check containers status run: | if docker-compose ps | grep Exit then echo "Docker container(s) exited" exit 1 else echo "Docker containers running" fi