mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-11-03 20:48:07 +00:00 
			
		
		
		
	feat: add gh action to run CE edition tests (#4342)
* feat: add gh action to run CE spec * setup ruby * add pg,redis services * fix failing tests
This commit is contained in:
		
							
								
								
									
										72
									
								
								.github/workflows/run-foss-spec.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								.github/workflows/run-foss-spec.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,72 @@
 | 
				
			|||||||
 | 
					# #
 | 
				
			||||||
 | 
					# # This action will strip the enterprise folder
 | 
				
			||||||
 | 
					# # and run the spec.
 | 
				
			||||||
 | 
					# # This is set to run against every PR.
 | 
				
			||||||
 | 
					# #
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					name: Run Chatwoot CE spec
 | 
				
			||||||
 | 
					on:
 | 
				
			||||||
 | 
					  push:
 | 
				
			||||||
 | 
					    branches:
 | 
				
			||||||
 | 
					      - develop
 | 
				
			||||||
 | 
					      - master
 | 
				
			||||||
 | 
					  pull_request:
 | 
				
			||||||
 | 
					  workflow_dispatch:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jobs:
 | 
				
			||||||
 | 
					  test:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    services:
 | 
				
			||||||
 | 
					      postgres:
 | 
				
			||||||
 | 
					        image: postgres:10.8
 | 
				
			||||||
 | 
					        env:
 | 
				
			||||||
 | 
					          POSTGRES_USER: postgres
 | 
				
			||||||
 | 
					          POSTGRES_PASSWORD: ""
 | 
				
			||||||
 | 
					          POSTGRES_DB: postgres
 | 
				
			||||||
 | 
					        ports:
 | 
				
			||||||
 | 
					          - 5432:5432
 | 
				
			||||||
 | 
					        # needed because the postgres container does not provide a healthcheck
 | 
				
			||||||
 | 
					        # tmpfs makes DB faster by using RAM
 | 
				
			||||||
 | 
					        options: >-
 | 
				
			||||||
 | 
					          --mount type=tmpfs,destination=/var/lib/postgresql/data
 | 
				
			||||||
 | 
					          --health-cmd pg_isready
 | 
				
			||||||
 | 
					          --health-interval 10s
 | 
				
			||||||
 | 
					          --health-timeout 5s
 | 
				
			||||||
 | 
					          --health-retries 5
 | 
				
			||||||
 | 
					      redis:
 | 
				
			||||||
 | 
					        image: redis
 | 
				
			||||||
 | 
					        ports:
 | 
				
			||||||
 | 
					          - 6379:6379
 | 
				
			||||||
 | 
					        options: --entrypoint redis-server
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					    - uses: actions/checkout@v3
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        ref: ${{ github.head_ref }}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - uses: ruby/setup-ruby@v1
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        ruby-version: 3.0.2 # Not needed with a .ruby-version file
 | 
				
			||||||
 | 
					        bundler-cache: true # runs 'bundle install' and caches installed gems automatically
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: yarn
 | 
				
			||||||
 | 
					      run: yarn install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Strip enterprise code
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        rm -rf enterprise
 | 
				
			||||||
 | 
					        rm -rf spec/enterprise
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Create database
 | 
				
			||||||
 | 
					      run: bundle exec rake db:create
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: Seed database
 | 
				
			||||||
 | 
					      run: bundle exec rake db:schema:load
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    - name: yarn check-files
 | 
				
			||||||
 | 
					      run: yarn install --check-files
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Run rails tests
 | 
				
			||||||
 | 
					    - name: Run backend tests
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        bundle exec rspec --profile=10 --format documentation
 | 
				
			||||||
		Reference in New Issue
	
	Block a user