-
-
Notifications
You must be signed in to change notification settings - Fork 23
107 lines (88 loc) · 3.64 KB
/
neon.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
name: KDE Neon (Stable)
on:
push:
branches: [ master ]
paths-ignore: [ '**.md', '**.png' ]
pull_request:
branches: [ master ]
paths: [ '**', '!**/**.md', '!**/**.png', '!**/**.yml', '**/neon.yml' ]
workflow_dispatch:
schedule:
- cron: "0 0 * * *"
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
DEB_NAME: kwin4_effect_shapecorners
jobs:
neon:
# The CMake configure and build commands are platform agnostic and should work equally
# well on Windows or Mac. You can convert this to a matrix build if you need
# cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-24.04
permissions:
# required for all workflows
security-events: write
# required to fetch internal or private CodeQL packs
packages: read
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Refresh Ubuntu Packages
run: sudo apt-get update
- name: Add PPA support
run: sudo apt-get install -y --no-install-recommends software-properties-common gpg-agent
- name: Add Neon Repository
run: |
wget -qO - 'http://archive.neon.kde.org/public.key' | sudo apt-key add -
sudo add-apt-repository -y 'deb http://archive.neon.kde.org/user noble main'
- name: Install Dependencies
run: |
sudo apt-get -y install --no-install-recommends cmake g++ gettext extra-cmake-modules qt6-base-dev-tools libkf6configwidgets-dev libkf6kcmutils-dev kwin-dev
sudo apt-get -y install --no-install-recommends dpkg-dev file
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: c-cpp
build-mode: manual
- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
run: cmake . -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build
# Build your program with the given configuration
run: cmake --build . --config ${{env.BUILD_TYPE}} -j
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:c-cpp"
- name: Package
run: |
cpack -V -G DEB
DEB_FILE=artifacts/${DEB_NAME}_${GITHUB_JOB}.deb
mkdir artifacts
mv ${DEB_NAME}.deb ${DEB_FILE}
echo "DEB_FILE=${DEB_FILE}" >> $GITHUB_ENV
- name: Upload Workflow Artifact
uses: actions/upload-artifact@v4.4.3
with:
name: ${{ env.DEB_NAME }}
path: ${{ env.DEB_FILE }}
compression-level: 0
if-no-files-found: error
- name: Upload Release Asset
if: github.ref == 'refs/heads/master'
uses: nicklasfrahm/scp-action@main
with:
direction: upload
host: ${{ secrets.SOURCEFORGE_HOST }}
username: ${{ secrets.SOURCEFORGE_USERNAME }}
key: ${{ secrets.SOURCEFORGE_KEY }}
fingerprint: ${{ secrets.SOURCEFORGE_HOST_FINGERPRINT }}
source: ${{ env.DEB_FILE }}
target: /home/frs/project/kde-rounded-corners/nightly/neon/${{ env.DEB_NAME }}_${{ github.job }}.deb
# - name: Test
# working-directory: ${{github.workspace}}/build
# # Execute tests defined by the CMake configuration.
# # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
# run: ctest -C ${{env.BUILD_TYPE}}