summaryrefslogtreecommitdiff
path: root/.github/workflows/cgit-ci.yml
diff options
context:
space:
mode:
authorMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 19:30:47 +0300
committerMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 19:31:15 +0300
commitb1e34e861b5d732afe828d58aad2c638135061fd (patch)
tree6ab65910221ff147b1fdc49299418d8af04d0a7b /.github/workflows/cgit-ci.yml
parentc965a4ebddf98c368edd905324a4ecd79b2aae55 (diff)
downloadProject-Tick-b1e34e861b5d732afe828d58aad2c638135061fd.tar.gz
Project-Tick-b1e34e861b5d732afe828d58aad2c638135061fd.zip
NOISSUE Add GitHub workflows for Project Tick project
- Create CodeQL analysis workflow for security checks on meshmc codebase. - Add container build workflow for meshmc using Podman and Buildah. - Implement scheduled flake update workflow for Nix dependencies. - Introduce merge blocking PR automation to manage dependent PRs. - Set up Nix build workflow for meshmc with multi-platform support. - Add release workflow for publishing MeshMC artifacts on GitHub. - Create CI workflow for tomlplusplus library with multi-compiler support. - Implement CI workflow for uvim with various feature sets and architectures. - Add .gitignore to exclude build artifacts and IDE files. - Create .gitattributes files for various submodules to manage line endings and diff settings. - Add post-receive hook for mirroring pushes to multiple forges. - Include .gitignore files for images4docker and other submodules to manage temporary files. Signed-off-by: Mehmet Samet Duman <yongdohyun@projecttick.org>
Diffstat (limited to '.github/workflows/cgit-ci.yml')
-rw-r--r--.github/workflows/cgit-ci.yml60
1 files changed, 60 insertions, 0 deletions
diff --git a/.github/workflows/cgit-ci.yml b/.github/workflows/cgit-ci.yml
new file mode 100644
index 0000000000..9248d2bcef
--- /dev/null
+++ b/.github/workflows/cgit-ci.yml
@@ -0,0 +1,60 @@
+name: "cgit: CI"
+
+on:
+ push:
+ paths:
+ - 'cgit/**'
+ - '.github/workflows/cgit-ci.yml'
+ pull_request:
+ paths:
+ - 'cgit/**'
+ - '.github/workflows/cgit-ci.yml'
+ workflow_dispatch:
+
+permissions:
+ contents: read
+
+jobs:
+ build:
+ runs-on: ${{ matrix.os }}
+ strategy:
+ fail-fast: false
+ matrix:
+ os: [ubuntu-latest, macos-latest]
+
+ defaults:
+ run:
+ working-directory: cgit
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v6
+ with:
+ submodules: true
+
+ - name: Install dependencies (Linux)
+ if: runner.os == 'Linux'
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y \
+ build-essential \
+ libssl-dev \
+ zlib1g-dev \
+ libcurl4-openssl-dev \
+ asciidoc \
+ xmlto
+
+ - name: Install dependencies (macOS)
+ if: runner.os == 'macOS'
+ run: brew install openssl asciidoc xmlto
+
+ - name: Build git
+ run: |
+ cd git
+ make -j$(nproc 2>/dev/null || sysctl -n hw.logicalcpu) prefix=/usr/local NO_GETTEXT=1
+
+ - name: Build cgit
+ run: make -j$(nproc 2>/dev/null || sysctl -n hw.logicalcpu)
+
+ - name: Run tests
+ run: make test || true