Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 8 additions & 9 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,38 +29,37 @@ jobs:

steps:
- name: Pull Docker image
run: |
docker pull ghcr.io/${{ github.repository_owner }}/polkadot:${VERSION}
run: docker pull ghcr.io/${{ github.repository_owner }}/polkadot:${VERSION}

- name: Create directory for binaries
run: mkdir -p binaries

- name: Extract binaries from image
run: |
run: |-
container_id=$(docker create ghcr.io/${{ github.repository_owner }}/polkadot:${VERSION})
docker cp $container_id:/usr/local/bin/polkadot binaries/
docker cp $container_id:/usr/local/bin/polkadot-execute-worker binaries/
docker cp $container_id:/usr/local/bin/polkadot-prepare-worker binaries/
docker cp $container_id:/usr/local/bin/polkadot-parachain binaries/
docker rm $container_id

- name: Generate SHA-256 hashes for binaries
working-directory: binaries
run: |
run: |-
sha256sum polkadot > polkadot.sha256
sha256sum polkadot-execute-worker > polkadot-execute-worker.sha256
sha256sum polkadot-prepare-worker > polkadot-prepare-worker.sha256
sha256sum polkadot-parachain > polkadot-parachain.sha256

- name: Create tarball
run: |
tar -czvf polkadot-${VERSION}-${{ matrix.arch }}.tgz -C binaries .
run: tar -czvf polkadot-${VERSION}-${{ matrix.arch }}.tgz -C binaries .

- name: Generate SHA-256 for tarball
run: |
sha256sum polkadot-${VERSION}-${{ matrix.arch }}.tgz > polkadot-${VERSION}-${{ matrix.arch }}.tgz.sha256
run: sha256sum polkadot-${VERSION}-${{ matrix.arch }}.tgz > polkadot-${VERSION}-${{ matrix.arch }}.tgz.sha256

- name: Upload assets to release
uses: softprops/action-gh-release@6da8fa9354ddfdc4aeace5fc48d7f679b5214090 # v2.4.1
with:
files: |
files: |-
polkadot-${{ env.VERSION }}-${{ matrix.arch }}.tgz
polkadot-${{ env.VERSION }}-${{ matrix.arch }}.tgz.sha256
19 changes: 12 additions & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,29 @@ RUN rustup target add wasm32v1-none
RUN rustup target add wasm32-unknown-unknown
RUN rustup component add rust-src

# https://doc.rust-lang.org/stable/cargo/reference/config.html#buildbuild-dir
ENV CARGO_BUILD_BUILD_DIR=/opt/polkadot-sdk/.cargo-target

WORKDIR /opt
ARG VERSION=stable2509-1
RUN git clone https://github.com/paritytech/polkadot-sdk.git -b polkadot-$VERSION --depth 1
WORKDIR /opt/polkadot-sdk
RUN cargo build --locked \
--profile production \
--profile release \
--bin polkadot \
--bin polkadot-execute-worker \
--bin polkadot-prepare-worker
--bin polkadot-prepare-worker \
--bin polkadot-parachain

##################
# --- runner --- #
##################
FROM docker.io/debian:13-slim
FROM docker.io/debian:13-slim AS polkadot

COPY --from=builder /opt/polkadot-sdk/target/production/polkadot /usr/local/bin/polkadot
COPY --from=builder /opt/polkadot-sdk/target/production/polkadot-execute-worker /usr/local/bin/polkadot-execute-worker
COPY --from=builder /opt/polkadot-sdk/target/production/polkadot-prepare-worker /usr/local/bin/polkadot-prepare-worker
COPY --from=builder /opt/polkadot-sdk/target/production/polkadot-parachain /usr/local/bin/polkadot-parachain

# Install curl for healthcheck
RUN apt-get update && \
Expand All @@ -43,10 +52,6 @@ RUN apt-get update && \
RUN groupadd --gid 65532 nonroot \
&& useradd --system --uid 65532 --gid 65532 --create-home --home-dir /home/nonroot --shell /usr/bin/bash nonroot

COPY --from=builder /opt/polkadot-sdk/target/production/polkadot /usr/local/bin/polkadot
COPY --from=builder /opt/polkadot-sdk/target/production/polkadot-execute-worker /usr/local/bin/polkadot-execute-worker
COPY --from=builder /opt/polkadot-sdk/target/production/polkadot-prepare-worker /usr/local/bin/polkadot-prepare-worker

USER 65532

# P2P
Expand Down
Loading