name: deploy to danak on: push: branches: - master jobs: build_and_deploy: runs-on: ubuntu-latest env: DANAK_SERVER: "https://captain.dev.danakcorp.com" APP_TOKEN: 63b4ff99143c2310dd6110c51e56b131076af8efdb792c6d34851fb3f629cc37 CAPROVER_APP_NAME: negareh-console GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # مطمئن شو تو Secrets تعریف شده steps: - name: Check out repository uses: actions/checkout@v4 - name: Set up Docker Buildx (with GHCR mirror) uses: docker/setup-buildx-action@v3 with: buildkitd-flags: --registry-mirror=https://ghcr.io - name: Login to GHCR uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Preset Image Name run: | echo "IMAGE_URL=ghcr.io/${{ github.repository_owner }}/negareh-console:${{ github.sha }}" >> $GITHUB_ENV - name: Build and push Docker Image uses: docker/build-push-action@v5 with: context: . file: ./Dockerfile push: true tags: ${{ env.IMAGE_URL }} - name: Install CapRover CLI run: npm install -g caprover - name: Deploy to server run: | caprover deploy -a $CAPROVER_APP_NAME -u $DANAK_SERVER --appToken $APP_TOKEN -i "$IMAGE_URL"