mirror of
https://github.com/timvisee/lazymc.git
synced 2025-05-19 12:50:23 -07:00
Merge branch 'ci-arm' into 'master'
Add ARMv7 and aarch64 builds to CI See merge request timvisee/lazymc!2
This commit is contained in:
commit
261acafab0
@ -106,6 +106,76 @@ build-x86_64-linux-musl:
|
|||||||
- lazymc-$TARGET
|
- lazymc-$TARGET
|
||||||
expire_in: 1 month
|
expire_in: 1 month
|
||||||
|
|
||||||
|
# Build using Rust stable on Linux for ARMv7
|
||||||
|
build-armv7-linux-gnu:
|
||||||
|
stage: build
|
||||||
|
image: ubuntu
|
||||||
|
needs: []
|
||||||
|
variables:
|
||||||
|
TARGET: armv7-unknown-linux-gnueabihf
|
||||||
|
cache:
|
||||||
|
<<: *rust-build-cache
|
||||||
|
before_script:
|
||||||
|
- apt-get update
|
||||||
|
- apt-get install -y --no-install-recommends build-essential
|
||||||
|
- |
|
||||||
|
apt-get install -y curl
|
||||||
|
curl https://sh.rustup.rs -sSf | sh -s -- -y
|
||||||
|
source $HOME/.cargo/env
|
||||||
|
- |
|
||||||
|
rustc --version
|
||||||
|
cargo --version
|
||||||
|
script:
|
||||||
|
- apt-get install -y gcc-arm-linux-gnueabihf
|
||||||
|
- rustup target add $TARGET
|
||||||
|
|
||||||
|
- mkdir -p ~/.cargo
|
||||||
|
- 'echo "[target.$TARGET]" >> ~/.cargo/config'
|
||||||
|
- 'echo "linker = \"arm-linux-gnueabihf-gcc\"" >> ~/.cargo/config'
|
||||||
|
|
||||||
|
- cargo build --target=$TARGET --release --locked --verbose
|
||||||
|
- mv target/$TARGET/release/lazymc ./lazymc-$TARGET
|
||||||
|
artifacts:
|
||||||
|
name: lazymc-armv7-linux-gnu
|
||||||
|
paths:
|
||||||
|
- lazymc-$TARGET
|
||||||
|
expire_in: 1 month
|
||||||
|
|
||||||
|
# Build using Rust stable on Linux for aarch64
|
||||||
|
build-aarch64-linux-gnu:
|
||||||
|
stage: build
|
||||||
|
image: ubuntu
|
||||||
|
needs: []
|
||||||
|
variables:
|
||||||
|
TARGET: aarch64-unknown-linux-gnu
|
||||||
|
cache:
|
||||||
|
<<: *rust-build-cache
|
||||||
|
before_script:
|
||||||
|
- apt-get update
|
||||||
|
- apt-get install -y --no-install-recommends build-essential
|
||||||
|
- |
|
||||||
|
apt-get install -y curl
|
||||||
|
curl https://sh.rustup.rs -sSf | sh -s -- -y
|
||||||
|
source $HOME/.cargo/env
|
||||||
|
- |
|
||||||
|
rustc --version
|
||||||
|
cargo --version
|
||||||
|
script:
|
||||||
|
- apt-get install -y gcc-aarch64-linux-gnu
|
||||||
|
- rustup target add $TARGET
|
||||||
|
|
||||||
|
- mkdir -p ~/.cargo
|
||||||
|
- 'echo "[target.$TARGET]" >> ~/.cargo/config'
|
||||||
|
- 'echo "linker = \"aarch64-linux-gnu-gcc\"" >> ~/.cargo/config'
|
||||||
|
|
||||||
|
- cargo build --target=$TARGET --release --locked --verbose
|
||||||
|
- mv target/$TARGET/release/lazymc ./lazymc-$TARGET
|
||||||
|
artifacts:
|
||||||
|
name: lazymc-aarch64-linux-gnu
|
||||||
|
paths:
|
||||||
|
- lazymc-$TARGET
|
||||||
|
expire_in: 1 month
|
||||||
|
|
||||||
# Build using Rust stable on macOS
|
# Build using Rust stable on macOS
|
||||||
build-macos:
|
build-macos:
|
||||||
stage: build
|
stage: build
|
||||||
@ -185,6 +255,8 @@ release-gitlab-generic-package:
|
|||||||
variables:
|
variables:
|
||||||
LINUX_GNU_BIN: "lazymc-x86_64-unknown-linux-gnu"
|
LINUX_GNU_BIN: "lazymc-x86_64-unknown-linux-gnu"
|
||||||
LINUX_MUSL_BIN: "lazymc-x86_64-unknown-linux-musl"
|
LINUX_MUSL_BIN: "lazymc-x86_64-unknown-linux-musl"
|
||||||
|
LINUX_ARMV7_GNU_BIN: "lazymc-armv7-unknown-linux-gnueabihf"
|
||||||
|
LINUX_AARCH64_GNU_BIN: "lazymc-aarch64-unknown-linux-gnu"
|
||||||
MACOS_BIN: "lazymc-x86_64-apple-darwin"
|
MACOS_BIN: "lazymc-x86_64-apple-darwin"
|
||||||
WINDOWS_BIN: "lazymc-x86_64-pc-windows-msvc.exe"
|
WINDOWS_BIN: "lazymc-x86_64-pc-windows-msvc.exe"
|
||||||
before_script: []
|
before_script: []
|
||||||
@ -198,6 +270,10 @@ release-gitlab-generic-package:
|
|||||||
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${LINUX_GNU_BIN} ${PACKAGE_REGISTRY_URL}/${LINUX_GNU_BIN}
|
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${LINUX_GNU_BIN} ${PACKAGE_REGISTRY_URL}/${LINUX_GNU_BIN}
|
||||||
- |
|
- |
|
||||||
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${LINUX_MUSL_BIN} ${PACKAGE_REGISTRY_URL}/${LINUX_MUSL_BIN}
|
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${LINUX_MUSL_BIN} ${PACKAGE_REGISTRY_URL}/${LINUX_MUSL_BIN}
|
||||||
|
- |
|
||||||
|
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${LINUX_ARMV7_GNU_BIN} ${PACKAGE_REGISTRY_URL}/${LINUX_ARMV7_GNU_BIN}
|
||||||
|
- |
|
||||||
|
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${LINUX_AARCH64_GNU_BIN} ${PACKAGE_REGISTRY_URL}/${LINUX_AARCH64_GNU_BIN}
|
||||||
- |
|
- |
|
||||||
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${MACOS_BIN} ${PACKAGE_REGISTRY_URL}/${MACOS_BIN}
|
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${MACOS_BIN} ${PACKAGE_REGISTRY_URL}/${MACOS_BIN}
|
||||||
- |
|
- |
|
||||||
@ -212,6 +288,8 @@ release-gitlab-release:
|
|||||||
variables:
|
variables:
|
||||||
LINUX_GNU_BIN: "lazymc-x86_64-unknown-linux-gnu"
|
LINUX_GNU_BIN: "lazymc-x86_64-unknown-linux-gnu"
|
||||||
LINUX_MUSL_BIN: "lazymc-x86_64-unknown-linux-musl"
|
LINUX_MUSL_BIN: "lazymc-x86_64-unknown-linux-musl"
|
||||||
|
LINUX_ARMV7_GNU_BIN: "lazymc-armv7-unknown-linux-gnueabihf"
|
||||||
|
LINUX_AARCH64_GNU_BIN: "lazymc-aarch64-unknown-linux-gnu"
|
||||||
MACOS_BIN: "lazymc-x86_64-apple-darwin"
|
MACOS_BIN: "lazymc-x86_64-apple-darwin"
|
||||||
WINDOWS_BIN: "lazymc-x86_64-pc-windows-msvc.exe"
|
WINDOWS_BIN: "lazymc-x86_64-pc-windows-msvc.exe"
|
||||||
before_script: []
|
before_script: []
|
||||||
@ -225,6 +303,8 @@ release-gitlab-release:
|
|||||||
release-cli create --name "lazymc $CI_COMMIT_TAG" --tag-name $CI_COMMIT_TAG \
|
release-cli create --name "lazymc $CI_COMMIT_TAG" --tag-name $CI_COMMIT_TAG \
|
||||||
--assets-link "{\"name\":\"${LINUX_GNU_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${LINUX_GNU_BIN}\"}" \
|
--assets-link "{\"name\":\"${LINUX_GNU_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${LINUX_GNU_BIN}\"}" \
|
||||||
--assets-link "{\"name\":\"${LINUX_MUSL_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${LINUX_MUSL_BIN}\"}" \
|
--assets-link "{\"name\":\"${LINUX_MUSL_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${LINUX_MUSL_BIN}\"}" \
|
||||||
|
--assets-link "{\"name\":\"${LINUX_ARMV7_GNU_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${LINUX_ARMV7_GNU_BIN}\"}" \
|
||||||
|
--assets-link "{\"name\":\"${LINUX_AARCH64_GNU_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${LINUX_AARCH64_GNU_BIN}\"}" \
|
||||||
--assets-link "{\"name\":\"${MACOS_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${MACOS_BIN}\"}" \
|
--assets-link "{\"name\":\"${MACOS_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${MACOS_BIN}\"}" \
|
||||||
--assets-link "{\"name\":\"${WINDOWS_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${WINDOWS_BIN}\"}"
|
--assets-link "{\"name\":\"${WINDOWS_BIN}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${WINDOWS_BIN}\"}"
|
||||||
|
|
||||||
@ -236,6 +316,8 @@ release-github:
|
|||||||
dependencies:
|
dependencies:
|
||||||
- build-x86_64-linux-gnu
|
- build-x86_64-linux-gnu
|
||||||
- build-x86_64-linux-musl
|
- build-x86_64-linux-musl
|
||||||
|
- build-armv7-linux-gnu
|
||||||
|
- build-aarch64-linux-gnu
|
||||||
- build-macos
|
- build-macos
|
||||||
- build-x86_64-windows
|
- build-x86_64-windows
|
||||||
before_script: []
|
before_script: []
|
||||||
@ -253,5 +335,7 @@ release-github:
|
|||||||
- ./github-release release --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --title "lazymc $CI_COMMIT_REF_NAME"
|
- ./github-release release --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --title "lazymc $CI_COMMIT_REF_NAME"
|
||||||
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-unknown-linux-gnu --name lazymc-$CI_COMMIT_REF_NAME-linux-x64
|
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-unknown-linux-gnu --name lazymc-$CI_COMMIT_REF_NAME-linux-x64
|
||||||
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-unknown-linux-musl --name lazymc-$CI_COMMIT_REF_NAME-linux-x64-static
|
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-unknown-linux-musl --name lazymc-$CI_COMMIT_REF_NAME-linux-x64-static
|
||||||
|
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-armv7-unknown-linux-gnueabihf --name lazymc-$CI_COMMIT_REF_NAME-linux-armv7
|
||||||
|
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-aarch64-unknown-linux-gnu --name lazymc-$CI_COMMIT_REF_NAME-linux-aarch64
|
||||||
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-apple-darwin --name lazymc-$CI_COMMIT_REF_NAME-macos
|
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-apple-darwin --name lazymc-$CI_COMMIT_REF_NAME-macos
|
||||||
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-pc-windows-msvc.exe --name lazymc-$CI_COMMIT_REF_NAME-windows.exe
|
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo lazymc --tag "$CI_COMMIT_REF_NAME" --file ./lazymc-x86_64-pc-windows-msvc.exe --name lazymc-$CI_COMMIT_REF_NAME-windows.exe
|
||||||
|
Loading…
x
Reference in New Issue
Block a user