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: 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 steps: - name: Test internet connectivity run: | echo "Testing connectivity..." curl -I https://registry-1.docker.io/v2/ curl -I https://github.com/ - name: Check out repository uses: actions/checkout@v4 - name: Login to Container Registry uses: docker/login-action@v3 with: registry: ghcr.io username: zmihamid password: ${{ env.GITHUB_TOKEN }} - name: Preset Image Name run: echo "IMAGE_URL=$(echo ghcr.io/zmihamid/${{ github.event.repository.name }}:$(echo ${{ github.sha }} | cut -c1-7) | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV - name: Build and push Docker Image (without setup-buildx) 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"