88
99jobs :
1010  build :
11- 
1211    runs-on : ubuntu-latest 
1312    strategy :
1413      max-parallel : 4 
1514      matrix :
1615        python-version : [3.12] 
1716
1817    services :
19-       db :
18+       database :
2019        image : postgres:17.4 
20+         container_name : database 
21+         restart : always 
22+         volumes :
23+           - database:/var/lib/postgresql/data 
2124        env :
22-           POSTGRES_DB : eCommerce 
23-           POSTGRES_USER : eCommerce 
25+           POSTGRES_USER : ${{ secrets.POSTGRES_USER }} 
2426          POSTGRES_PASSWORD : ${{ secrets.POSTGRES_PASSWORD }} 
27+           POSTGRES_DB : ${{ secrets.POSTGRES_DB }} 
28+         healthcheck :
29+           test : [ "CMD-SHELL", "pg_isready -U ${{ secrets.POSTGRES_USER }} -d ${{ secrets.POSTGRES_DB }}" ] 
30+           interval : 10s 
31+           timeout : 5s 
32+           retries : 5 
2533        ports :
2634          - 5432:5432 
2735
2836      cache :
2937        image : redis:7.4.2 
38+         container_name : cache 
39+         restart : always 
3040        ports :
31-           - 6379:6379 
41+           - " 6379:6379" 
3242
3343      rabbitmq :
3444        image : rabbitmq:3-management 
45+         container_name : broker 
46+         restart : always 
47+         ports :
48+           - " 15672:15672" 
49+           - " 5672:5672" 
3550        env :
3651          RABBITMQ_DEFAULT_USER : ${{ secrets.RABBITMQ_USER }} 
3752          RABBITMQ_DEFAULT_PASS : ${{ secrets.RABBITMQ_PASSWORD }} 
38-         ports :
39-           - 5672:5672 
40-           - 15672:15672 
53+         healthcheck :
54+           test : [ "CMD", "rabbitmq-diagnostics", "ping" ] 
55+           interval : 10s 
56+           timeout : 5s 
57+           retries : 3 
4158
4259    steps :
4360    - uses : actions/checkout@v4 
@@ -55,10 +72,10 @@ jobs:
5572     - name : Run Tests 
5673      env :
5774        DOMAIN : localhost:8000 
58-         SITE_NAME : " Hypex  eCommerce" 
59-         DB_NAME : eCommerce 
60-         DB_USER : eCommerce 
61-         DB_PASSWORD : ${{ secrets.DB_PASSWORD  }} 
75+         SITE_NAME : " Luqta  eCommerce" 
76+         DB_NAME : ${{ secrets.POSTGRES_DB }} 
77+         DB_USER : ${{ secrets.POSTGRES_USER }} 
78+         DB_PASSWORD : ${{ secrets.POSTGRES_PASSWORD  }} 
6279        DB_HOST : localhost 
6380        REDIS_HOST : localhost 
6481        REDIS_PORT : 6379 
7087        STRIPE_WEBHOOK_SECRET : ${{ secrets.STRIPE_WEBHOOK_SECRET }} 
7188        GOOGLE_OAUTH2_KEY : ${{ secrets.GOOGLE_OAUTH2_KEY }} 
7289        GOOGLE_OAUTH2_SECRET : ${{ secrets.GOOGLE_OAUTH2_SECRET }} 
73-         POSTGRES_DB : eCommerce 
74-         POSTGRES_USER : eCommerce 
75-         POSTGRES_PASSWORD : ${{ secrets.POSTGRES_PASSWORD }} 
76-         RABBITMQ_DEFAULT_USER : ${{ secrets.RABBITMQ_USER }} 
77-         RABBITMQ_DEFAULT_PASS : ${{ secrets.RABBITMQ_PASSWORD }} 
78-         RABBITMQ_HOST : rabbitmq 
7990      run : | 
8091        python manage.py test 
0 commit comments