diff --git a/.github/workflows/dispatch.yml b/.github/workflows/dispatch.yml deleted file mode 100644 index a6306642..00000000 --- a/.github/workflows/dispatch.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: Build and push dispatch Docker image -on: - push: - paths: - - '.github/workflows/dispatch.yml' - - 'Cargo.lock' - - 'services/dispatch/' - -jobs: - deploy: - runs-on: ubuntu-latest - permissions: - packages: write - if: github.repository == 'PluralKit/PluralKit' - steps: - - uses: docker/login-action@v1 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.CR_PAT }} - - uses: actions/checkout@v2 - - run: echo "BRANCH_NAME=${GITHUB_REF#refs/heads/}" | sed 's|/|-|g' >> $GITHUB_ENV - - uses: docker/build-push-action@v2 - with: - # https://github.com/docker/build-push-action/issues/378 - context: . - push: true - file: services/dispatch/Dockerfile - tags: | - ghcr.io/pluralkit/dispatch:${{ github.sha }} - ghcr.io/pluralkit/dispatch:${{ env.BRANCH_NAME }} - cache-from: type=registry,ref=ghcr.io/pluralkit/pluralkit:${{ env.BRANCH_NAME }} - cache-to: type=inline diff --git a/ci/Dockerfile.rust b/ci/Dockerfile.rust index 9a620e22..9e6dad46 100644 --- a/ci/Dockerfile.rust +++ b/ci/Dockerfile.rust @@ -27,10 +27,12 @@ COPY proto/ /build/proto # this needs to match workspaces in Cargo.toml COPY lib/libpk /build/lib/libpk COPY services/api/ /build/services/api +COPY services/dispatch/ /build/services/dispatch COPY services/gateway/ /build/services/gateway COPY services/avatars/ /build/services/avatars RUN cargo build --bin api --release --target x86_64-unknown-linux-musl +RUN cargo build --bin dispatch --release --target x86_64-unknown-linux-musl RUN cargo build --bin gateway --release --target x86_64-unknown-linux-musl RUN cargo build --bin avatars --release --target x86_64-unknown-linux-musl RUN cargo build --bin avatar_cleanup --release --target x86_64-unknown-linux-musl @@ -38,6 +40,7 @@ RUN cargo build --bin avatar_cleanup --release --target x86_64-unknown-linux-mus FROM scratch COPY --from=binary-builder /build/target/x86_64-unknown-linux-musl/release/api /api +COPY --from=binary-builder /build/target/x86_64-unknown-linux-musl/release/dispatch /dispatch COPY --from=binary-builder /build/target/x86_64-unknown-linux-musl/release/gateway /gateway COPY --from=binary-builder /build/target/x86_64-unknown-linux-musl/release/avatars /avatars COPY --from=binary-builder /build/target/x86_64-unknown-linux-musl/release/avatar_cleanup /avatar_cleanup diff --git a/ci/rust-docker-target.sh b/ci/rust-docker-target.sh index 19748c4c..9932abf8 100755 --- a/ci/rust-docker-target.sh +++ b/ci/rust-docker-target.sh @@ -38,5 +38,6 @@ EOF # add rust binaries here to build build api +build dispatch build gateway build avatars "COPY .docker-bin/avatar_cleanup /bin/avatar_cleanup" diff --git a/services/dispatch/Dockerfile b/services/dispatch/Dockerfile deleted file mode 100644 index 04ee7849..00000000 --- a/services/dispatch/Dockerfile +++ /dev/null @@ -1,17 +0,0 @@ -FROM alpine:latest AS builder - -WORKDIR /build - -RUN apk add rustup build-base -RUN rustup-init --default-host x86_64-unknown-linux-musl --default-toolchain nightly-2024-08-20 --profile default -y - -ENV PATH=/root/.cargo/bin:$PATH -ENV RUSTFLAGS='-C link-arg=-s' - -COPY . . - -RUN cargo build --bin dispatch --release --target x86_64-unknown-linux-musl - -FROM alpine:latest -COPY --from=builder /build/target/x86_64-unknown-linux-musl/release/dispatch /usr/local/bin/dispatch -ENTRYPOINT ["/usr/local/bin/dispatch"]