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