ci(flatpak): use local exceptions (#3679)
This commit is contained in:
parent
3c6374fa7a
commit
385471fb0a
5 changed files with 33 additions and 65 deletions
49
.github/workflows/CI.yml
vendored
49
.github/workflows/CI.yml
vendored
|
|
@ -227,52 +227,23 @@ jobs:
|
||||||
- name: Lint Flatpak
|
- name: Lint Flatpak
|
||||||
working-directory: build
|
working-directory: build
|
||||||
run: |
|
run: |
|
||||||
|
exceptions_file="${{ github.workspace }}/packaging/linux/flatpak/exceptions.json"
|
||||||
|
|
||||||
echo "Linting flatpak manifest"
|
echo "Linting flatpak manifest"
|
||||||
flatpak run --command=flatpak-builder-lint org.flatpak.Builder \
|
flatpak run --command=flatpak-builder-lint org.flatpak.Builder \
|
||||||
manifest ${APP_ID}.yml > _flatpak-lint-exceptions_manifest.json || true
|
--exceptions \
|
||||||
|
--user-exceptions "${exceptions_file}" \
|
||||||
|
manifest \
|
||||||
|
${APP_ID}.yml
|
||||||
|
|
||||||
echo "Linting flatpak repo"
|
echo "Linting flatpak repo"
|
||||||
# TODO: add arg
|
# TODO: add arg
|
||||||
# --mirror-screenshots-url=https://dl.flathub.org/media \
|
# --mirror-screenshots-url=https://dl.flathub.org/media \
|
||||||
flatpak run --command=flatpak-builder-lint org.flatpak.Builder \
|
flatpak run --command=flatpak-builder-lint org.flatpak.Builder \
|
||||||
repo repo > _flatpak-lint-exceptions_repo.json || true
|
--exceptions \
|
||||||
|
--user-exceptions "${exceptions_file}" \
|
||||||
checks=(manifest repo)
|
repo \
|
||||||
exit_code=0
|
repo
|
||||||
|
|
||||||
# check if files are equal
|
|
||||||
for check in "${checks[@]}"; do
|
|
||||||
echo "Validating $check"
|
|
||||||
|
|
||||||
# load baseline and result files
|
|
||||||
baseline="${{ github.workspace }}/packaging/linux/flatpak/flatpak-lint-baseline_${check}.json"
|
|
||||||
result="_flatpak-lint-exceptions_${check}.json"
|
|
||||||
|
|
||||||
# Extract errors from both JSON files
|
|
||||||
readarray -t result_errors < <(jq -r '.errors[]' "$result")
|
|
||||||
readarray -t baseline_errors < <(jq -r '.errors[]' "$baseline")
|
|
||||||
|
|
||||||
# Loop through result errors and check against baseline errors
|
|
||||||
for error in "${result_errors[@]}"; do
|
|
||||||
if printf '%s\n' "${baseline_errors[@]}" | grep -q -F "$error"; then
|
|
||||||
echo "::warning:: '$error'"
|
|
||||||
else
|
|
||||||
echo "::error:: '$error'"
|
|
||||||
exit_code=1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
done
|
|
||||||
|
|
||||||
# if exit code is not 0, print results
|
|
||||||
if [ $exit_code -ne 0 ]; then
|
|
||||||
echo "Manifest lint results:"
|
|
||||||
cat _flatpak-lint-exceptions_manifest.json
|
|
||||||
echo "Repo lint results:"
|
|
||||||
cat _flatpak-lint-exceptions_repo.json
|
|
||||||
fi
|
|
||||||
|
|
||||||
# exit with the correct code
|
|
||||||
exit $exit_code
|
|
||||||
|
|
||||||
- name: Package Flathub repo archive
|
- name: Package Flathub repo archive
|
||||||
# copy files required to generate the Flathub repo
|
# copy files required to generate the Flathub repo
|
||||||
|
|
|
||||||
|
|
@ -1,13 +1,22 @@
|
||||||
# Overview
|
<div align="center">
|
||||||
|
<img src="https://raw.githubusercontent.com/LizardByte/Sunshine/master/sunshine.png" />
|
||||||
|
<h1 align="center">Sunshine</h1>
|
||||||
|
<h4 align="center">Self-hosted game stream host for Moonlight.</h4>
|
||||||
|
</div>
|
||||||
|
|
||||||
[](https://flathub.org/apps/dev.lizardbyte.app.Sunshine)
|
<div align="center">
|
||||||
[](https://flathub.org/apps/dev.lizardbyte.app.Sunshine)
|
<a href="https://flathub.org/apps/dev.lizardbyte.app.Sunshine"><img src="https://img.shields.io/flathub/downloads/dev.lizardbyte.app.Sunshine?style=for-the-badge&logo=flathub" alt="Flathub installs"></a>
|
||||||
|
<a href="https://flathub.org/apps/dev.lizardbyte.app.Sunshine"><img src="https://img.shields.io/flathub/v/dev.lizardbyte.app.Sunshine?style=for-the-badge&logo=flathub" alt="Flathub Version"></a>
|
||||||
|
</div>
|
||||||
|
|
||||||
LizardByte has the full documentation hosted on [Read the Docs](https://docs.lizardbyte.dev/projects/sunshine).
|
## ℹ️ About
|
||||||
|
|
||||||
## About
|
|
||||||
|
|
||||||
Sunshine is a self-hosted game stream host for Moonlight.
|
Sunshine is a self-hosted game stream host for Moonlight.
|
||||||
|
|
||||||
|
LizardByte has the full documentation hosted on [Read the Docs](https://docs.lizardbyte.dev/projects/sunshine)
|
||||||
|
|
||||||
|
* [Stable](https://docs.lizardbyte.dev/projects/sunshine/latest/)
|
||||||
|
* [Beta](https://docs.lizardbyte.dev/projects/sunshine/master/)
|
||||||
|
|
||||||
This repo is synced from the upstream [Sunshine](https://github.com/LizardByte/Sunshine) repo.
|
This repo is synced from the upstream [Sunshine](https://github.com/LizardByte/Sunshine) repo.
|
||||||
Please report issues and contribute to the upstream repo.
|
Please report issues and contribute to the upstream repo.
|
||||||
|
|
|
||||||
8
packaging/linux/flatpak/exceptions.json
Normal file
8
packaging/linux/flatpak/exceptions.json
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"dev.lizardbyte.app.Sunshine": [
|
||||||
|
"appstream-missing-screenshots",
|
||||||
|
"appstream-screenshots-not-mirrored-in-ostree",
|
||||||
|
"external-gitmodule-url-found",
|
||||||
|
"finish-args-flatpak-spawn-access"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
"errors": [
|
|
||||||
"finish-args-flatpak-spawn-access"
|
|
||||||
],
|
|
||||||
"info": [
|
|
||||||
"finish-args-flatpak-spawn-access: finish-args has a talk-name access for org.freedesktop.Flatpak"
|
|
||||||
],
|
|
||||||
"message": "Please consult the documentation at https://docs.flathub.org/docs/for-app-authors/linter"
|
|
||||||
}
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
{
|
|
||||||
"errors": [
|
|
||||||
"appstream-missing-screenshots",
|
|
||||||
"finish-args-flatpak-spawn-access"
|
|
||||||
],
|
|
||||||
"info": [
|
|
||||||
"appstream-missing-screenshots: Catalogue file has no screenshots. Please check if screenshot URLs are reachable",
|
|
||||||
"finish-args-flatpak-spawn-access: finish-args has a talk-name access for org.freedesktop.Flatpak"
|
|
||||||
],
|
|
||||||
"message": "Please consult the documentation at https://docs.flathub.org/docs/for-app-authors/linter"
|
|
||||||
}
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue