Add CI.
This commit is contained in:
@@ -1,6 +1,2 @@
|
|||||||
[build]
|
[build]
|
||||||
rustflags = [ "-C", "link-arg=-fuse-ld=lld", ]
|
rustflags = [ "-C", "link-arg=-fuse-ld=lld", ]
|
||||||
|
|
||||||
[env]
|
|
||||||
QMAKE="/opt/Qt/6.7.3/gcc_64/bin/qmake6"
|
|
||||||
LD_LIBRARY_PATH="/opt/Qt/6.7.3/gcc_64/lib"
|
|
||||||
|
|||||||
20
.github/actions/setup-qt/action.yml
vendored
Normal file
20
.github/actions/setup-qt/action.yml
vendored
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
name: "Setup Qt"
|
||||||
|
description: "Install clide dependencies"
|
||||||
|
inputs:
|
||||||
|
qt-version:
|
||||||
|
description: "Qt version to install"
|
||||||
|
required: true
|
||||||
|
|
||||||
|
runs:
|
||||||
|
using: "composite"
|
||||||
|
steps:
|
||||||
|
- name: Install apt packages
|
||||||
|
run: |
|
||||||
|
sudo apt update -y
|
||||||
|
sudo apt install -y build-essential cmake curl libgl1-mesa-dev python3 python3-pip
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Install Qt
|
||||||
|
uses: jurplel/install-qt-action@v4
|
||||||
|
with:
|
||||||
|
version: ${{ inputs.qt-version }}
|
||||||
67
.github/workflows/build.yaml
vendored
Normal file
67
.github/workflows/build.yaml
vendored
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
name: Build
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- '**'
|
||||||
|
tags:
|
||||||
|
- 'v*'
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
env:
|
||||||
|
QT_VERSION: 6.7.3
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
Build:
|
||||||
|
name: Build
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v6
|
||||||
|
|
||||||
|
- name: Setup Qt
|
||||||
|
uses: ./.github/actions/setup-qt
|
||||||
|
with:
|
||||||
|
qt-version: ${{ env.QT_VERSION }}
|
||||||
|
|
||||||
|
- name: Build libclide
|
||||||
|
run: |
|
||||||
|
cargo b -p libclide --release
|
||||||
|
- name: Build clide
|
||||||
|
run: |
|
||||||
|
cargo b --release
|
||||||
|
|
||||||
|
Test:
|
||||||
|
name: Test
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v6
|
||||||
|
|
||||||
|
- name: Setup Qt
|
||||||
|
uses: ./.github/actions/setup-qt
|
||||||
|
with:
|
||||||
|
qt-version: ${{ env.QT_VERSION }}
|
||||||
|
|
||||||
|
- name: Test libclide
|
||||||
|
run: |
|
||||||
|
cargo test -p libclide
|
||||||
|
- name: Test clide
|
||||||
|
run: |
|
||||||
|
cargo test
|
||||||
|
|
||||||
|
Lint:
|
||||||
|
name: Lint
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v6
|
||||||
|
|
||||||
|
- name: Setup Qt
|
||||||
|
uses: ./.github/actions/setup-qt
|
||||||
|
with:
|
||||||
|
qt-version: ${{ env.QT_VERSION }}
|
||||||
|
|
||||||
|
- name: Lint libclide
|
||||||
|
run: |
|
||||||
|
cargo clippy --manifest-path libclide/Cargo.toml -- -D warnings
|
||||||
|
- name: Lint clide
|
||||||
|
run: |
|
||||||
|
cargo clippy -- -D warnings
|
||||||
@@ -1,5 +1,7 @@
|
|||||||
# CLIDE
|
# CLIDE
|
||||||
|
|
||||||
|
[](https://git.shaunreed.com/shaunrd0/clide/workflows/build.yml)
|
||||||
|
|
||||||
CLIDE is an extendable command-line driven development environment written in Rust using the Qt UI framework that supports both full and headless Linux environments.
|
CLIDE is an extendable command-line driven development environment written in Rust using the Qt UI framework that supports both full and headless Linux environments.
|
||||||
The GUI is written in QML compiled through Rust using the cxx-qt crate, while the TUI was implemented using the ratatui crate.
|
The GUI is written in QML compiled through Rust using the cxx-qt crate, while the TUI was implemented using the ratatui crate.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user