Implement Rust Wasm Plugin Build & Publish Action (#1483)

This commit is contained in:
007gzs
2024-11-07 20:20:42 +08:00
committed by GitHub
parent 73cf32aadd
commit aee37c5e22
3 changed files with 95 additions and 7 deletions

View File

@@ -0,0 +1,38 @@
ARG RUST_VERSION
ARG ORAS_VERSION
ARG HIGRESS_VERSION
ARG BASE_IMAGE=rust:${RUST_VERSION:-1.82}
FROM $BASE_IMAGE
LABEL rust_version=$RUST_VERSION oras_version=$ORAS_VERSION
RUN apt-get update \
&& apt-get install -y wget gcc gcc-multilib llvm clang \
&& rustup target add wasm32-wasi \
&& rm -rf /var/lib/apt/lists/*
RUN arch="$(dpkg --print-architecture)"; arch="${arch##*-}"; \
rust_version=${RUST_VERSION:-1.82}; \
oras_version=${ORAS_VERSION:-1.0.0}; \
higress_version=${HIGRESS_VERSION:-1.0.0-rc}; \
echo "arch: '$arch'"; \
echo "rust rust_version: '$rust_version'"; \
echo "oras_version: '$oras_version'"; \
echo "higress_version: '$higress_version'"; \
case "$arch" in \
'amd64') \
oras_url="https://github.com/oras-project/oras/releases/download/v$oras_version/oras_${oras_version}_linux_amd64.tar.gz"; \
;; \
'arm64') \
oras_url="https://github.com/oras-project/oras/releases/download/v$oras_version/oras_${oras_version}_linux_arm64.tar.gz"; \
;; \
*) echo >&2 "error: unsupported architecture '$arch' "; exit 1 ;; \
esac; \
echo "oras_url: '$oras_url'"; \
wget -O oras.tgz "$oras_url" --progress=dot:giga; \
tar -C /usr/local/bin -xzf oras.tgz && rm -rf oras.tgz; \
echo "done";
ENV PATH=$PATH:/usr/local/bin