testing ci using external forgejo runner #84
@@ -1,89 +0,0 @@
|
|||||||
name: CI (Lint + Format Checks)
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request:
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
lint:
|
|
||||||
runs-on: alpine
|
|
||||||
container: node:20-alpine
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
|
|
||||||
- name: Install tools
|
|
||||||
run: |
|
|
||||||
apk add --no-cache \
|
|
||||||
bash \
|
|
||||||
git \
|
|
||||||
python3 \
|
|
||||||
py3-pip \
|
|
||||||
rust
|
|
||||||
edge_main="https://dl-cdn.alpinelinux.org/alpine/edge/main"
|
|
||||||
edge_community="https://dl-cdn.alpinelinux.org/alpine/edge/community"
|
|
||||||
apk add --no-cache -X "$edge_main" -X "$edge_community" qt6-qtdeclarative-dev-tools || \
|
|
||||||
apk add --no-cache -X "$edge_main" -X "$edge_community" qt6-qtdeclarative-dev || \
|
|
||||||
apk add --no-cache -X "$edge_main" -X "$edge_community" qt6-qtdeclarative || \
|
|
||||||
echo "::warning::qmllint not available"
|
|
||||||
|
|
||||||
- name: Python lint
|
|
||||||
run: |
|
|
||||||
python3 -m venv .venv
|
|
||||||
. .venv/bin/activate
|
|
||||||
pip install --no-cache-dir ruff
|
|
||||||
if ! ruff check .; then
|
|
||||||
echo "::warning::ruff reported issues"
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: JS lint
|
|
||||||
run: |
|
|
||||||
if [ -n "$(find . -name "*.js" -o -name "*.jsx" -o -name "*.ts" -o -name "*.tsx" -o -name "*.mjs" -o -name "*.cjs" -print -quit)" ]; then
|
|
||||||
if [ -f package.json ]; then
|
|
||||||
npm install --no-audit --no-fund
|
|
||||||
fi
|
|
||||||
if [ -f eslint.config.js ] || [ -f eslint.config.mjs ] || [ -f eslint.config.cjs ] || [ -f .eslintrc ] || [ -f .eslintrc.js ] || [ -f .eslintrc.cjs ] || [ -f .eslintrc.json ] || [ -f .eslintrc.yaml ] || [ -f .eslintrc.yml ]; then
|
|
||||||
if ! npx --yes eslint .; then
|
|
||||||
echo "::warning::eslint reported issues"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "No eslint config found"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "No JS/TS files found"
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: JS format (prettier)
|
|
||||||
run: |
|
|
||||||
if [ -n "$(find . -name "*.js" -o -name "*.jsx" -o -name "*.ts" -o -name "*.tsx" -o -name "*.mjs" -o -name "*.cjs" -print -quit)" ]; then
|
|
||||||
if ! npx --yes prettier --check "**/*.{js,jsx,ts,tsx,mjs,cjs}" --ignore-path .gitignore; then
|
|
||||||
echo "::warning::prettier reported issues"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "No JS/TS files found"
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Rust lint
|
|
||||||
run: |
|
|
||||||
if [ -f Cargo.toml ]; then
|
|
||||||
if ! cargo fmt --check; then
|
|
||||||
echo "::warning::rustfmt reported issues"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "No Rust project found"
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: QML lint
|
|
||||||
run: |
|
|
||||||
export PATH="$PATH:/usr/lib/qt6/bin:/usr/lib/qt6/libexec"
|
|
||||||
if command -v qmllint >/dev/null 2>&1; then
|
|
||||||
if [ -n "$(find . -name "*.qml" -print -quit)" ]; then
|
|
||||||
if ! find . -name "*.qml" -print0 | xargs -0 qmllint; then
|
|
||||||
echo "::warning::qmllint reported issues"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "No QML files found"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "No qmllint in PATH"
|
|
||||||
fi
|
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
name: Format (JS/TS)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
format:
|
||||||
|
runs-on: alpine
|
||||||
|
container: node:20-alpine
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Install tools
|
||||||
|
run: |
|
||||||
|
apk add --no-cache \
|
||||||
|
git
|
||||||
|
|
||||||
|
- name: Prettier
|
||||||
|
run: |
|
||||||
|
if [ -n "$(find . -name "*.js" -o -name "*.jsx" -o -name "*.ts" -o -name "*.tsx" -o -name "*.mjs" -o -name "*.cjs" -print -quit)" ]; then
|
||||||
|
if ! npx --yes prettier --check "**/*.{js,jsx,ts,tsx,mjs,cjs}" --ignore-path .gitignore; then
|
||||||
|
echo "::warning::prettier reported issues"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "No JS/TS files found"
|
||||||
|
fi
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
name: Lint (JS/TS)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint:
|
||||||
|
runs-on: alpine
|
||||||
|
container: node:20-alpine
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Install tools
|
||||||
|
run: |
|
||||||
|
apk add --no-cache \
|
||||||
|
git
|
||||||
|
|
||||||
|
- name: ESLint
|
||||||
|
run: |
|
||||||
|
if [ -n "$(find . -name "*.js" -o -name "*.jsx" -o -name "*.ts" -o -name "*.tsx" -o -name "*.mjs" -o -name "*.cjs" -print -quit)" ]; then
|
||||||
|
if [ -f package.json ]; then
|
||||||
|
npm install --no-audit --no-fund
|
||||||
|
fi
|
||||||
|
if [ -f eslint.config.js ] || [ -f eslint.config.mjs ] || [ -f eslint.config.cjs ] || [ -f .eslintrc ] || [ -f .eslintrc.js ] || [ -f .eslintrc.cjs ] || [ -f .eslintrc.json ] || [ -f .eslintrc.yaml ] || [ -f .eslintrc.yml ]; then
|
||||||
|
if ! npx --yes eslint .; then
|
||||||
|
echo "::warning::eslint reported issues"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "No eslint config found"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "No JS/TS files found"
|
||||||
|
fi
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
name: Lint (Python)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint:
|
||||||
|
runs-on: alpine
|
||||||
|
container: node:20-alpine
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Install tools
|
||||||
|
run: |
|
||||||
|
apk add --no-cache \
|
||||||
|
git \
|
||||||
|
python3 \
|
||||||
|
py3-pip
|
||||||
|
|
||||||
|
- name: Ruff
|
||||||
|
run: |
|
||||||
|
python3 -m venv .venv
|
||||||
|
. .venv/bin/activate
|
||||||
|
pip install --no-cache-dir ruff
|
||||||
|
if ! ruff check .; then
|
||||||
|
echo "::warning::ruff reported issues"
|
||||||
|
fi
|
||||||
@@ -0,0 +1,39 @@
|
|||||||
|
name: Lint (QML)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint:
|
||||||
|
runs-on: alpine
|
||||||
|
container: node:20-alpine
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Install tools
|
||||||
|
run: |
|
||||||
|
apk add --no-cache \
|
||||||
|
git
|
||||||
|
edge_main="https://dl-cdn.alpinelinux.org/alpine/edge/main"
|
||||||
|
edge_community="https://dl-cdn.alpinelinux.org/alpine/edge/community"
|
||||||
|
apk add --no-cache -X "$edge_main" -X "$edge_community" qt6-qtdeclarative-dev-tools || \
|
||||||
|
apk add --no-cache -X "$edge_main" -X "$edge_community" qt6-qtdeclarative-dev || \
|
||||||
|
apk add --no-cache -X "$edge_main" -X "$edge_community" qt6-qtdeclarative || \
|
||||||
|
echo "::warning::qmllint not available"
|
||||||
|
|
||||||
|
- name: QML lint
|
||||||
|
run: |
|
||||||
|
export PATH="$PATH:/usr/lib/qt6/bin:/usr/lib/qt6/libexec"
|
||||||
|
if command -v qmllint >/dev/null 2>&1; then
|
||||||
|
if [ -n "$(find . -name "*.qml" -print -quit)" ]; then
|
||||||
|
if ! find . -name "*.qml" -print0 | xargs -0 qmllint; then
|
||||||
|
echo "::warning::qmllint reported issues"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "No QML files found"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "No qmllint in PATH"
|
||||||
|
fi
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
name: Lint (Rust)
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
lint:
|
||||||
|
runs-on: alpine
|
||||||
|
container: node:20-alpine
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Install tools
|
||||||
|
run: |
|
||||||
|
apk add --no-cache \
|
||||||
|
git \
|
||||||
|
rust
|
||||||
|
|
||||||
|
- name: Rustfmt
|
||||||
|
run: |
|
||||||
|
if [ -f Cargo.toml ]; then
|
||||||
|
if ! cargo fmt --check; then
|
||||||
|
echo "::warning::rustfmt reported issues"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "No Rust project found"
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user