Melika Kheirieh commited on
Commit
d233a51
·
1 Parent(s): 3574333

Fix bug in ci.yml

Browse files
Files changed (1) hide show
  1. .github/workflows/ci.yml +26 -10
.github/workflows/ci.yml CHANGED
@@ -8,7 +8,8 @@ on:
8
  jobs:
9
  build-test:
10
  runs-on: ubuntu-latest
11
-
 
12
  env:
13
  PIP_NO_CACHE_DIR: 1
14
 
@@ -38,22 +39,37 @@ jobs:
38
  docker-build:
39
  needs: build-test
40
  runs-on: ubuntu-latest
41
- if: github.ref == 'refs/heads/main'
 
 
 
 
 
 
 
42
 
43
  steps:
44
  - name: Checkout code
45
  uses: actions/checkout@v4
46
 
47
- - name: Login to GHCR
48
- if: secrets.GHCR_TOKEN != ''
49
- run: echo "${{ secrets.GHCR_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
 
 
 
50
 
51
- - name: Build Docker image
52
  run: |
53
- IMAGE=ghcr.io/${{ github.repository_owner }}/nl2sql-copilot:${{ github.sha }}
54
- docker build -t $IMAGE .
55
  echo "IMAGE=$IMAGE" >> $GITHUB_ENV
56
 
57
  - name: Push image
58
- if: secrets.GHCR_TOKEN != ''
59
- run: docker push $IMAGE
 
 
 
 
 
 
8
  jobs:
9
  build-test:
10
  runs-on: ubuntu-latest
11
+ permissions:
12
+ contents: read
13
  env:
14
  PIP_NO_CACHE_DIR: 1
15
 
 
39
  docker-build:
40
  needs: build-test
41
  runs-on: ubuntu-latest
42
+ if: ${{ github.ref == 'refs/heads/main' }}
43
+ permissions:
44
+ contents: read
45
+ packages: write # ← برای ghcr لازم است
46
+
47
+ env:
48
+ REGISTRY: ghcr.io
49
+ IMAGE_NAME: nl2sql-copilot
50
 
51
  steps:
52
  - name: Checkout code
53
  uses: actions/checkout@v4
54
 
55
+ - name: Login to GHCR (via GITHUB_TOKEN)
56
+ uses: docker/login-action@v3
57
+ with:
58
+ registry: ${{ env.REGISTRY }}
59
+ username: ${{ github.actor }}
60
+ password: ${{ secrets.GITHUB_TOKEN }}
61
 
62
+ - name: Build image
63
  run: |
64
+ IMAGE=${{ env.REGISTRY }}/${{ github.repository_owner }}/${{ env.IMAGE_NAME }}:${{ github.sha }}
65
+ docker build -t "$IMAGE" .
66
  echo "IMAGE=$IMAGE" >> $GITHUB_ENV
67
 
68
  - name: Push image
69
+ run: docker push "$IMAGE"
70
+
71
+ - name: Tag 'latest' and push
72
+ run: |
73
+ LATEST=${{ env.REGISTRY }}/${{ github.repository_owner }}/${{ env.IMAGE_NAME }}:latest
74
+ docker tag "$IMAGE" "$LATEST"
75
+ docker push "$LATEST"