name: deploy to danak on: push: branches: - main jobs: build_and_deploy: runs-on: ubuntu-latest env: DANAK_SERVER: "https://captain.run.danakcorp.com" APP_TOKEN: fb6db122b78d5362d5b9c9297172d3145fa616420fca464b556008da9f86b3f1 CAPROVER_APP_NAME: dlearn-api GITHUB_TOKEN: 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 steps: - name: Check out repositorys uses: actions/checkout@v4 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - 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 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"