-
Notifications
You must be signed in to change notification settings - Fork 93
149 lines (133 loc) · 3.99 KB
/
Copy pathrelease_deb.yml
File metadata and controls
149 lines (133 loc) · 3.99 KB
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
name: Build Ubuntu Deb Release
on:
workflow_dispatch:
release:
types: [published]
permissions:
contents: write
jobs:
build:
strategy:
fail-fast: false
matrix:
distro_version: [latest, plucky]
include:
- distro_version: latest
container_image: ubuntu:latest
display_name: Ubuntu LTS (latest)
- distro_version: plucky
container_image: ubuntu:25.04
display_name: Ubuntu 25.04
name: ${{ matrix.display_name }} Package Build
runs-on: ubuntu-latest
container: ${{ matrix.container_image }}
steps:
- name: Install Linux Dependencies
if: runner.os == 'Linux'
run: >
apt-get update && apt-get install -y
build-essential
git
cmake
ninja-build
debhelper
devscripts
jq
lsb-release
libglew-dev
libxerces-c-dev
libpng-dev
swig
bison
flex
libtinygltf-dev
libgdal-dev
libgeotiff-dev
libhidapi-dev
libvtk9-dev
libopenscenegraph-dev
libassimp-dev
libtbb-dev
libjpeg-dev
libtiff-dev
libturbojpeg0-dev
libfftw3-dev
libarchive-dev
libswscale-dev
libavformat-dev
libavutil-dev
libboost-all-dev
libcgal-dev
libtinyxml2-dev
libavcodec-dev
libcfitsio-dev
libsnappy-dev
libproj-dev
libgdal-dev
libeigen3-dev
libsdl2-dev
libblas-dev
libvncserver-dev
libaudiofile-dev
libhdf5-dev
libnetcdf-dev
libnetcdf-c++4-dev
libcgns-dev
libalut-dev
libfreetype-dev
libomp-dev
nlohmann-json3-dev
qt6-base-dev
qt6-tools-dev
qt6-connectivity-dev
qt6-declarative-dev
qt6-multimedia-dev
qt6-networkauth-dev
qt6-quick3d-dev
qt6-sensors-dev
qt6-serialbus-dev
qt6-serialport-dev
qt6-speech-dev
qt6-svg-dev
qt6-virtualkeyboard-dev
qt6-wayland-dev
qt6-webengine-dev
qt6-websockets-dev
qt6-webview-dev
- name: Checkout repository
uses: actions/checkout@v4
with:
ref: ${{ github.ref }}
- name: Add safe directory
run: |
git config --global --add safe.directory /__w/covise/covise
- name: Sync and update submodules recursive
run: |
git submodule sync --recursive
git submodule update --init --recursive
- name: Copy debian dir to root src dir
run: |
cp -r $GITHUB_WORKSPACE/archive/debian $GITHUB_WORKSPACE/
- name: Update changelog with GitHub release info
run: |
# Get the release message (body) and the version from the tag
RELEASE_BODY=$(curl -s -H "Accept: application/vnd.github+json" \
https://api.github.com/repos/${{ github.repository }}/releases/tags/${{ github.ref_name }} \
| jq -r '.body')
VERSION=$(echo "${{ github.ref_name }}" | sed 's/^v//')
# Set maintainer info for the changelog entry
export DEBFULLNAME="${{ github.actor }}"
export DEBEMAIL="${{ github.actor }}@users.noreply.github.com"
dch --newversion "${VERSION}" --distribution "$(lsb_release -c -s)" "${RELEASE_BODY}"
- name: Build deb
run: |
. $GITHUB_WORKSPACE/.covise.sh && dpkg-buildpackage -uc -us -j$(nproc)
- name: Rename Deb
run: |
mv $GITHUB_WORKSPACE/../*.deb "covise-${{ github.ref_name }}-$(lsb_release -c -s).deb"
- name: Release Package
uses: softprops/action-gh-release@v1
with:
files: '*.deb'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}