mirror of
https://github.com/thepigeongenerator/mcaselector-lite.git
synced 2025-12-16 22:45:46 +01:00
update CI to use the newer makefile system
This commit is contained in:
42
.github/Dockerfile
vendored
42
.github/Dockerfile
vendored
@@ -1,7 +1,8 @@
|
||||
# docker buildx build . -t mcaselector-lite
|
||||
# docker tag mcaselector-lite:latest ghcr.io/thepigeongenerator/mcaselector-lite:latest
|
||||
# docker buildx build . -t ghcr.io/thepigeongenerator/mcaselector-lite:latest
|
||||
# docker push ghcr.io/thepigeongenerator/mcaselector-lite:latest
|
||||
FROM debian:testing-slim
|
||||
LABEL org.opencontainers.image.source="https://github.com/thepigeongenerator/mcaselector-lite"
|
||||
LABEL org.opencontainers.image.source-path="/.github/Dockerfile"
|
||||
|
||||
# set environment variables
|
||||
ENV VCPKG_DISABLE_METRICS="1"
|
||||
@@ -9,26 +10,21 @@ ENV VCPKG_ROOT="/opt/vcpkg"
|
||||
ENV PATH="${VCPKG_ROOT}:${PATH}"
|
||||
|
||||
# install the dependencies
|
||||
RUN apt update && apt install -y --no-install-recommends \
|
||||
ca-certificates \
|
||||
git \
|
||||
curl \
|
||||
zip \
|
||||
unzip \
|
||||
pkg-config \
|
||||
make \
|
||||
clang \
|
||||
clang-tidy \
|
||||
gcc \
|
||||
gcc-multilib \
|
||||
lld \
|
||||
g++ \
|
||||
mingw-w64 \
|
||||
libc6-dev \
|
||||
libglfw3-dev \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& git clone https://github.com/microsoft/vcpkg.git "${VCPKG_ROOT}" \
|
||||
&& "${VCPKG_ROOT}/bootstrap-vcpkg.sh" \
|
||||
&& vcpkg install glfw3:x64-mingw-dynamic
|
||||
RUN apt update && apt install -y --no-install-recommends \
|
||||
ca-certificates \
|
||||
git curl \
|
||||
zip unzip \
|
||||
make cmake pkg-config \
|
||||
clang-tidy \
|
||||
gcc gcc-multilib g++ mingw-w64 \
|
||||
libc6-dev \
|
||||
libxinerama-dev libxcursor-dev xorg-dev libglu1-mesa-dev \
|
||||
nodejs \
|
||||
&& rm -rf /var/lib/apt/lists/*;
|
||||
|
||||
# install packages / VCPKG
|
||||
RUN git clone https://github.com/microsoft/vcpkg.git "${VCPKG_ROOT}" \
|
||||
&& "${VCPKG_ROOT}/bootstrap-vcpkg.sh" \
|
||||
&& vcpkg install glfw3:x64-linux-dynamic glfw3:x64-mingw-static;
|
||||
|
||||
CMD ["bash"]
|
||||
|
||||
18
.github/workflows/ci-bin.yaml
vendored
18
.github/workflows/ci-bin.yaml
vendored
@@ -13,10 +13,18 @@ jobs:
|
||||
image: ghcr.io/thepigeongenerator/mcaselector-lite:latest
|
||||
strategy:
|
||||
matrix:
|
||||
arch:
|
||||
- linux-x86_64
|
||||
- win-x86_64
|
||||
include:
|
||||
- kernel: linux
|
||||
march: x86_64
|
||||
cc: x86_64-linux-gnu-gcc
|
||||
- kernel: mingw
|
||||
march: x86_64
|
||||
cc: x86_64-w64-mingw32-gcc
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: make compile ARCH=${{matrix.arch}} -j
|
||||
|
||||
- name: compile ${{matrix.march}}-${{matrix.kernel}}
|
||||
run: make compile MARCH=${{matrix.march}} KERNEL=${{matrix.kernel}} CC=${{matrix.cc}} -j
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{matrix.march}}-${{matrix.kernel}}-rel
|
||||
path: obj/
|
||||
|
||||
2
.github/workflows/ci-lint.yaml
vendored
2
.github/workflows/ci-lint.yaml
vendored
@@ -7,7 +7,7 @@ on:
|
||||
branches:
|
||||
- '**'
|
||||
jobs:
|
||||
compile:
|
||||
exec-lint:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/thepigeongenerator/mcaselector-lite:latest
|
||||
|
||||
26
.github/workflows/ci-tests.yaml
vendored
26
.github/workflows/ci-tests.yaml
vendored
@@ -1,11 +1,10 @@
|
||||
name: tests
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '**'
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
workflow_run:
|
||||
workflows:
|
||||
- bin
|
||||
types:
|
||||
- completed
|
||||
jobs:
|
||||
execute-tests:
|
||||
runs-on: ubuntu-latest
|
||||
@@ -13,9 +12,16 @@ jobs:
|
||||
image: ghcr.io/thepigeongenerator/mcaselector-lite:latest
|
||||
strategy:
|
||||
matrix:
|
||||
arch:
|
||||
- linux-x86_64
|
||||
# WARN: not testing win-x86_64... Probably a good idea to do that
|
||||
include:
|
||||
- kernel: linux
|
||||
march: x86_64
|
||||
cc: x86_64-linux-gnu-gcc
|
||||
# WARN: not testing win-x86_64... Probably a good idea to do that
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: make run-test ARCH=${{matrix.arch}} -j
|
||||
- uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: ${{matrix.march}}-${{matrix.kernel}}-rel
|
||||
path: obj/
|
||||
- name: execute tests for ${{matrix.march}}-${{matrix.kernel}}
|
||||
run: make DEBUG=test run MARCH=${{matrix.march}} KERNEL=${{matrix.kernel}} CC=${{matrix.cc}} -j
|
||||
|
||||
20
.github/workflows/release.yaml
vendored
20
.github/workflows/release.yaml
vendored
@@ -10,24 +10,28 @@ on:
|
||||
description: the tag to release for
|
||||
default: ""
|
||||
jobs:
|
||||
compile:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: ghcr.io/thepigeongenerator/mcaselector-lite:latest
|
||||
needs: install-deps
|
||||
strategy:
|
||||
matrix:
|
||||
arch:
|
||||
- linux-x86_64
|
||||
- win-x86_64
|
||||
include:
|
||||
- kernel: linux
|
||||
march: x86_64
|
||||
cc: x86_64-linux-gnu-gcc
|
||||
- kernel: mingw
|
||||
march: x86_64
|
||||
cc: x86_64-w64-mingw32-gcc
|
||||
env:
|
||||
OUT: ${{github.workspace}}/mcaselector-lite-${{matrix.arch}}-${{github.event.release.tag_name || github.event.inputs.release_tag}}.zip
|
||||
OUT: ${{github.workspace}}/mcaselector-lite-${{matrix.march}}-${{matrix.kernel}}-${{github.event.release.tag_name || github.event.inputs.release_tag}}.zip
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: make compile ARCH=${{matrix.arch}} -j
|
||||
- name: compile ${{matrix.march}}-${{matrix.kernel}}
|
||||
run: make compile MARCH=${{matrix.march}} KERNEL=${{matrix.kernel}} CC=${{matrix.cc}} -j
|
||||
- name: compress binary information
|
||||
run: |
|
||||
cd "${{github.workspace}}/bin/${{matrix.arch}}/rel/"
|
||||
cd "${{github.workspace}}/bin/${{matrix.march}}-${{matrix.kernel}}/${{github.event.release.tag_name || github.event.inputs.release_tag}}/rel/" || exit 1
|
||||
zip -rv "${{env.OUT}}" *
|
||||
cd -
|
||||
# upload to the release
|
||||
|
||||
Reference in New Issue
Block a user