[READ ONLY MIRROR] Spark Social AppView Server github.com/sprksocial/server
atproto deno hono lexicon
5
fork

Configure Feed

Select the types of activity you want to include in your feed.

add build workflows for appview, cdn, and ingester

+210
+70
.github/workflows/build-appview.yaml
··· 1 + name: Build and Push AppView Image 2 + 3 + # Trigger only for tags starting with 'appview/v' 4 + on: 5 + push: 6 + tags: 7 + - 'appview/v*' 8 + 9 + jobs: 10 + build-and-push-appview: 11 + runs-on: ubuntu-latest 12 + permissions: 13 + contents: read 14 + packages: write 15 + 16 + steps: 17 + - name: Checkout repository 18 + uses: actions/checkout@v4 19 + 20 + - name: Extract Version from Tag 21 + id: extract_version 22 + run: | 23 + # GITHUB_REF_NAME is like 'refs/tags/appview/v1.0.0' 24 + # Or directly github.ref_name which is 'appview/v1.0.0' 25 + TAG_NAME="${{ github.ref_name }}" 26 + # Remove the known service prefix 'appview/' 27 + VERSION=$(echo "$TAG_NAME" | sed 's#^appview/##') 28 + echo "Extracted Version: $VERSION" 29 + if [ -z "$VERSION" ]; then 30 + echo "::error::Could not extract version from tag '$TAG_NAME'." 31 + exit 1 32 + fi 33 + echo "version=${VERSION}" >> $GITHUB_OUTPUT 34 + echo "ghcr_image_name=ghcr.io/${{ github.repository_owner }}/appview" >> $GITHUB_OUTPUT 35 + 36 + - name: Log in to GitHub Container Registry 37 + uses: docker/login-action@v3 38 + with: 39 + registry: ghcr.io 40 + username: ${{ github.actor }} 41 + password: ${{ secrets.GITHUB_TOKEN }} 42 + 43 + - name: Set up QEMU 44 + uses: docker/setup-qemu-action@v3 45 + 46 + - name: Set up Docker Buildx 47 + uses: docker/setup-buildx-action@v3 48 + 49 + - name: Build and push Docker image for AppView 50 + uses: docker/build-push-action@v6 51 + with: 52 + context: ./services/appview 53 + file: ./services/appview/Dockerfile 54 + push: true 55 + platforms: linux/amd64,linux/arm64 56 + tags: | 57 + ${{ steps.extract_version.outputs.ghcr_image_name }}:${{ steps.extract_version.outputs.version }} 58 + ${{ steps.extract_version.outputs.ghcr_image_name }}:latest 59 + labels: | 60 + org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }} 61 + org.opencontainers.image.created=${{ github.event.head_commit.timestamp }} 62 + org.opencontainers.image.revision=${{ github.sha }} 63 + org.opencontainers.image.version=${{ steps.extract_version.outputs.version }} 64 + org.opencontainers.image.title=appview 65 + 66 + - name: Image Push Summary 67 + run: | 68 + echo "Successfully pushed appview:" 69 + echo "Image: ${{ steps.extract_version.outputs.ghcr_image_name }}" 70 + echo "Tags: ${{ steps.extract_version.outputs.version }}, latest"
+70
.github/workflows/build-cdn.yaml
··· 1 + name: Build and Push CDN Image 2 + 3 + # Trigger only for tags starting with 'cdn/v' 4 + on: 5 + push: 6 + tags: 7 + - 'cdn/v*' 8 + 9 + jobs: 10 + build-and-push-cdn: 11 + runs-on: ubuntu-latest 12 + permissions: 13 + contents: read 14 + packages: write 15 + 16 + steps: 17 + - name: Checkout repository 18 + uses: actions/checkout@v4 19 + 20 + - name: Extract Version from Tag 21 + id: extract_version 22 + run: | 23 + # GITHUB_REF_NAME is like 'refs/tags/cdn/v1.0.0' 24 + # Or directly github.ref_name which is 'cdn/v1.0.0' 25 + TAG_NAME="${{ github.ref_name }}" 26 + # Remove the known service prefix 'cdn/' 27 + VERSION=$(echo "$TAG_NAME" | sed 's#^cdn/##') 28 + echo "Extracted Version: $VERSION" 29 + if [ -z "$VERSION" ]; then 30 + echo "::error::Could not extract version from tag '$TAG_NAME'." 31 + exit 1 32 + fi 33 + echo "version=${VERSION}" >> $GITHUB_OUTPUT 34 + echo "ghcr_image_name=ghcr.io/${{ github.repository_owner }}/cdn" >> $GITHUB_OUTPUT 35 + 36 + - name: Log in to GitHub Container Registry 37 + uses: docker/login-action@v3 38 + with: 39 + registry: ghcr.io 40 + username: ${{ github.actor }} 41 + password: ${{ secrets.GITHUB_TOKEN }} 42 + 43 + - name: Set up QEMU 44 + uses: docker/setup-qemu-action@v3 45 + 46 + - name: Set up Docker Buildx 47 + uses: docker/setup-buildx-action@v3 48 + 49 + - name: Build and push Docker image for CDN 50 + uses: docker/build-push-action@v6 51 + with: 52 + context: ./services/cdn 53 + file: ./services/cdn/Dockerfile 54 + push: true 55 + platforms: linux/amd64,linux/arm64 56 + tags: | 57 + ${{ steps.extract_version.outputs.ghcr_image_name }}:${{ steps.extract_version.outputs.version }} 58 + ${{ steps.extract_version.outputs.ghcr_image_name }}:latest 59 + labels: | 60 + org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }} 61 + org.opencontainers.image.created=${{ github.event.head_commit.timestamp }} 62 + org.opencontainers.image.revision=${{ github.sha }} 63 + org.opencontainers.image.version=${{ steps.extract_version.outputs.version }} 64 + org.opencontainers.image.title=cdn 65 + 66 + - name: Image Push Summary 67 + run: | 68 + echo "Successfully pushed cdn:" 69 + echo "Image: ${{ steps.extract_version.outputs.ghcr_image_name }}" 70 + echo "Tags: ${{ steps.extract_version.outputs.version }}, latest"
+70
.github/workflows/build-ingester.yaml
··· 1 + name: Build and Push Ingester Image 2 + 3 + # Trigger only for tags starting with 'ingester/v' 4 + on: 5 + push: 6 + tags: 7 + - 'ingester/v*' 8 + 9 + jobs: 10 + build-and-push-ingester: 11 + runs-on: ubuntu-latest 12 + permissions: 13 + contents: read 14 + packages: write 15 + 16 + steps: 17 + - name: Checkout repository 18 + uses: actions/checkout@v4 19 + 20 + - name: Extract Version from Tag 21 + id: extract_version 22 + run: | 23 + # GITHUB_REF_NAME is like 'refs/tags/ingester/v1.0.0' 24 + # Or directly github.ref_name which is 'ingester/v1.0.0' 25 + TAG_NAME="${{ github.ref_name }}" 26 + # Remove the known service prefix 'ingester/' 27 + VERSION=$(echo "$TAG_NAME" | sed 's#^ingester/##') 28 + echo "Extracted Version: $VERSION" 29 + if [ -z "$VERSION" ]; then 30 + echo "::error::Could not extract version from tag '$TAG_NAME'." 31 + exit 1 32 + fi 33 + echo "version=${VERSION}" >> $GITHUB_OUTPUT 34 + echo "ghcr_image_name=ghcr.io/${{ github.repository_owner }}/ingester" >> $GITHUB_OUTPUT 35 + 36 + - name: Log in to GitHub Container Registry 37 + uses: docker/login-action@v3 38 + with: 39 + registry: ghcr.io 40 + username: ${{ github.actor }} 41 + password: ${{ secrets.GITHUB_TOKEN }} 42 + 43 + - name: Set up QEMU 44 + uses: docker/setup-qemu-action@v3 45 + 46 + - name: Set up Docker Buildx 47 + uses: docker/setup-buildx-action@v3 48 + 49 + - name: Build and push Docker image for Ingester 50 + uses: docker/build-push-action@v6 51 + with: 52 + context: ./services/ingester 53 + file: ./services/ingester/Dockerfile 54 + push: true 55 + platforms: linux/amd64,linux/arm64 56 + tags: | 57 + ${{ steps.extract_version.outputs.ghcr_image_name }}:${{ steps.extract_version.outputs.version }} 58 + ${{ steps.extract_version.outputs.ghcr_image_name }}:latest 59 + labels: | 60 + org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }} 61 + org.opencontainers.image.created=${{ github.event.head_commit.timestamp }} 62 + org.opencontainers.image.revision=${{ github.sha }} 63 + org.opencontainers.image.version=${{ steps.extract_version.outputs.version }} 64 + org.opencontainers.image.title=ingester 65 + 66 + - name: Image Push Summary 67 + run: | 68 + echo "Successfully pushed ingester:" 69 + echo "Image: ${{ steps.extract_version.outputs.ghcr_image_name }}" 70 + echo "Tags: ${{ steps.extract_version.outputs.version }}, latest"