MarioDB/.woodpecker/default.yml
nyosic 9bce5bb39f
Some checks failed
ci/woodpecker/push/default Pipeline failed
Update .woodpecker/default.yml
2025-04-04 12:47:47 +00:00

50 lines
1.5 KiB
YAML

# .woodpecker.yml
steps:
- name: Build the C++ project
image: gcc:13 # Replace with clang or another version if needed
environment:
BUILD_DIR: build
commands:
- echo "[*] Installing dependencies"
- apt-get update && apt-get install -y cmake make g++ git
- echo "[*] Creating build directory"
- mkdir -p $BUILD_DIR
- cd $BUILD_DIR
- echo "[*] Running CMake"
- cmake ..
- echo "[*] Building project"
- make -j$(nproc)
- name: Run tests
image: gcc:13
environment:
BUILD_DIR: build
commands:
- echo "[*] Running tests"
- cd $BUILD_DIR
- ctest --output-on-failure || echo "[!] Some tests failed"
- name: Check code formatting
image: gcc:13
commands:
- apt-get update && apt-get install -y clang-format
- echo "[*] Checking code formatting..."
- find . -name '*.cpp' -o -name '*.hpp' -o -name '*.h' | xargs clang-format --dry-run --Werror
- name: Cache build directory
image: alpine
settings:
paths:
- build
- name: Create release in Gitea
image: woodpeckerci/plugin-gitea-release
when:
event:
- tag # Trigger only on tags
environment:
GITEA_URL: "https://git.xyro.win"
GITEA_TOKEN: "${GITEA_TOKEN}" # Make sure to set this secret in the Woodpecker UI
REPO_NAME: "my-repo" # Replace with your actual repository name
TAG_NAME: "${CI_COMMIT_REF}" # Use the commit reference (tag name)
ASSET_PATH: "build/my-cpp-program" # Path to the compiled C++ binary