WHY2/.github/workflows/why2-chat-build.yml
ENGO150 f903d265d9
Some checks failed
Codacy Scan / Codacy Security Scan (push) Failing after 2m25s
Build WHY2-chat / test-why2 (./out/why2-chat-client, ./configure.sh, ubuntu-latest, ./out/why2-chat-server) (push) Successful in 2m56s
Test Project / test-project (./configure.sh, gdb -ex "run" -ex "quit" --batch, ubuntu-latest, ./test) (push) Successful in 2m54s
Test WHY2-core / test-why2 (why2, ./configure.sh, gdb -ex "run" -ex "quit" --batch, ubuntu-latest, ./out/why2-core-test, valgrind --leak-check=full --show-leak-kinds=reachable --track-origins=yes -s) (push) Successful in 3m31s
Test WHY2-logger / test-why2 (why2-logger, ./configure.sh, gdb -ex "run" -ex "quit" --batch, ubuntu-latest, ./out/why2-logger-test, valgrind --leak-check=full --show-leak-kinds=reachable --track-origins=yes -s) (push) Successful in 3m43s
using upload-artifact v3 instead of v4
trying to make gitea artifacts work is pain in ass
2025-01-09 18:49:20 +01:00

76 lines
2.0 KiB
YAML

# This is part of WHY2
# Copyright (C) 2022 Václav Šmejkal
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
name: Build WHY2-chat
on:
push:
branches: [ development ]
workflow_dispatch:
schedule:
- cron: '40 22 12 4 2'
jobs:
test-why2:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest ]
include:
- os: ubuntu-latest
client: ./out/why2-chat-client
server: ./out/why2-chat-server
configure: ./configure.sh
steps:
- name: Checkout repository
uses: actions/checkout@v2
with:
ref: development
- if: matrix.os == 'ubuntu-latest'
name: Update packages
run: |
sudo apt-get update
# sudo apt-get upgrade
- name: Permissions
run: chmod +x ${{ matrix.configure }}
- name: Preparation
run: sudo ./${{ matrix.configure }}
- name: Set up Rust # Normally works with configure.sh, but gitea has some beef with cargo idk
uses: dtolnay/rust-toolchain@stable
- name: Install WHY2
run: make install
- name: Build Chat
run: make build_chat
- name: Upload Client
uses: actions/upload-artifact@v3
with:
name: WHY2 Chat Client
path: ${{ matrix.client }}
- name: Upload Server
uses: actions/upload-artifact@v3
with:
name: WHY2 Chat Server
path: ${{ matrix.server }}