Skip to content

ci(test-private-package): update trigger to use pull_request #8372

ci(test-private-package): update trigger to use pull_request

ci(test-private-package): update trigger to use pull_request #8372

name: Platform Pull Requests
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths-ignore:
- docs/**
- infrastructure/**
jobs:
validate-pr-title:
name: Validate Conventional Commit title
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
types: | # mirrors changelog-sections in the /release-please-config.json
fix
feat
infra
docs
chore
build
deps
ci
refactor
style
test
run-e2e-tests-1:
runs-on: ubuntu-latest
name: E2E Local - Segments-1, Environment
permissions:
id-token: write
contents: read
services:
postgres:
image: postgres:11.12-alpine
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: flagsmith
ports: ['5432:5432']
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Run E2E tests against local
uses: ./.github/actions/local-e2e-tests
with:
slack_token: ${{ secrets.SLACK_TOKEN }}
tests: segment-part-1 environment
concurrency: 1
run-e2e-tests-2:
runs-on: ubuntu-latest
name: E2E Local - Segments-2
permissions:
id-token: write
contents: read
services:
postgres:
image: postgres:11.12-alpine
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: flagsmith
ports: ['5432:5432']
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Run E2E tests against local
uses: ./.github/actions/local-e2e-tests
with:
slack_token: ${{ secrets.SLACK_TOKEN }}
tests: segment-part-2
concurrency: 1
run-e2e-tests-3:
runs-on: ubuntu-latest
name: E2E Local - Segments-3, Signup, Flag, Invite, Project
permissions:
id-token: write
contents: read
services:
postgres:
image: postgres:11.12-alpine
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: flagsmith
ports: ['5432:5432']
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Run E2E tests against local
uses: ./.github/actions/local-e2e-tests
with:
slack_token: ${{ secrets.SLACK_TOKEN }}
tests: segment-part-3 signup flag invite project
concurrency: 2
run-e2e-tests-4:
runs-on: ubuntu-latest
name: E2E Local - Versioning
permissions:
id-token: write
contents: read
services:
postgres:
image: postgres:11.12-alpine
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: flagsmith
ports: ['5432:5432']
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Run E2E tests against local
uses: ./.github/actions/local-e2e-tests
with:
slack_token: ${{ secrets.SLACK_TOKEN }}
tests: versioning
concurrency: 1
run-e2e-versioning-tests-docker-unified:
runs-on: ubuntu-latest
name: E2E Unified - Versioning
permissions:
id-token: write
contents: read
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Bake Compose
uses: ./.github/actions/e2e-bake-compose
with:
github_actor: ${{github.actor}}
github_token: ${{secrets.GITHUB_TOKEN}}
- name: Run tests on unified docker image
working-directory: frontend
env:
SLACK_TOKEN: ${{ inputs.slack_token }}
GITHUB_ACTION_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
run: |
docker compose -f docker-compose-e2e-tests.yml run frontend npx cross-env E2E_CONCURRENCY=1 npm run test -- versioning
run-e2e-segments-1-tests-docker-unified:
runs-on: ubuntu-latest
name: E2E Unified - Segments-1, Environment
permissions:
id-token: write
contents: read
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Bake Compose
uses: ./.github/actions/e2e-bake-compose
with:
github_actor: ${{github.actor}}
github_token: ${{secrets.GITHUB_TOKEN}}
- name: Run tests on unified docker image
working-directory: frontend
env:
SLACK_TOKEN: ${{ inputs.slack_token }}
GITHUB_ACTION_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
run: |
docker compose -f docker-compose-e2e-tests.yml run frontend npx cross-env E2E_CONCURRENCY=1 npm run test -- segment-part-1 environment
run-e2e-segments-2-tests-docker-unified:
runs-on: ubuntu-latest
name: E2E Unified - Segments-2
permissions:
id-token: write
contents: read
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Bake Compose
uses: ./.github/actions/e2e-bake-compose
with:
github_actor: ${{github.actor}}
github_token: ${{secrets.GITHUB_TOKEN}}
- name: Run tests on unified docker image
working-directory: frontend
env:
SLACK_TOKEN: ${{ inputs.slack_token }}
GITHUB_ACTION_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
run: |
docker compose -f docker-compose-e2e-tests.yml run frontend npx cross-env E2E_CONCURRENCY=1 npm run test -- segment-part-2
run-e2e-other-tests-docker-unified:
runs-on: ubuntu-latest
name: E2E Unified - Segments-3, Signup, Flag, Invite, Project
permissions:
id-token: write
contents: read
steps:
- name: Cloning repo
uses: actions/checkout@v4
- name: Bake Compose
uses: ./.github/actions/e2e-bake-compose
with:
github_actor: ${{github.actor}}
github_token: ${{secrets.GITHUB_TOKEN}}
- name: Run tests on unified docker image
working-directory: frontend
env:
SLACK_TOKEN: ${{ inputs.slack_token }}
GITHUB_ACTION_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
run: |
docker compose -f docker-compose-e2e-tests.yml run frontend npx cross-env E2E_CONCURRENCY=2 npm run test -- segment-part-3 signup flag invite project
docker-build-unified:
if: github.event.pull_request.draft == false
name: Test unified docker image build
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Set up Depot CLI
uses: depot/setup-action@v1
- name: Build
id: docker_build
uses: depot/build-push-action@v1
with:
push: false
tags: flagsmith/flagsmith:testing
docker-build-api:
if: github.event.pull_request.draft == false
name: Test api docker image build
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Set up Depot CLI
uses: depot/setup-action@v1
- name: Build
id: docker_build
uses: depot/build-push-action@v1
with:
file: api/Dockerfile
push: false
tags: flagsmith/flagsmith-api:testing
docker-build-frontend:
if: github.event.pull_request.draft == false
name: Test frontend docker image build
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Set up Depot CLI
uses: depot/setup-action@v1
- name: Build
id: docker_build
uses: depot/build-push-action@v1
with:
file: frontend/Dockerfile
push: false
tags: flagsmith/flagsmith-frontend:testing