This repository has been archived by the owner on Mar 5, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
snapcraft.yaml
129 lines (126 loc) · 3.23 KB
/
snapcraft.yaml
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
name: xtrabackup
base: core20 # core22 has openssl-3.x.x and xtrabackup require openssl-1.1.x
summary: Open source backup tool for InnoDB and XtraDB
description: |
Open source backup tool for InnoDB and XtraDB
grade: stable # must be 'stable' to release into candidate/stable channels
confinement: strict
adopt-info: xtrabackup
environment:
LD_LIBRARY_PATH: $SNAP/lib:$SNAP/usr/lib:$SNAP/usr/lib/x86_64-linux-gnu
PATH: $SNAP/bin:$PATH
LC_ALL: C
apps:
xtrabackup:
command: usr/bin/xtrabackup
plugs:
- network
- removable-media
- home
- mysql-data
xbcloud:
command: usr/bin/xbcloud
plugs:
- network
- removable-media
- home
xbcloud-osenv:
command: usr/bin/xbcloud_osenv
plugs:
- network
- removable-media
- home
xbcrypt:
command: usr/bin/xbcrypt
plugs:
- network
- removable-media
- home
xbstream:
command: usr/bin/xbstream
plugs:
- network
- removable-media
- home
plugs:
mysql-data:
interface: system-files
write:
- /var/lib/mysql
parts:
xtrabackup:
plugin: cmake
source: https://github.com/percona/percona-xtrabackup.git
source-type: git
source-tag: "percona-xtrabackup-8.0.30-23"
cmake-parameters:
- -DCMAKE_INSTALL_PREFIX=/usr
- -DINSTALL_LAYOUT=DEB
- -DBUILD_CONFIG=xtrabackup_release
- -DCMAKE_BUILD_TYPE=Release
- -DWITH_MAN_PAGES=OFF
- -DIGNORE_AIO_CHECK=ON
- -DWITH_AUTHENTICATION_FIDO=OFF
- -DWITH_AUTHENTICATION_KERBEROS=OFF
- -DWITH_AUTHENTICATION_LDAP=OFF
- -DINSTALL_MYSQLTESTDIR= # empty to avoid install
- -DINSTALL_MANDIR=
- -DWITH_BOOST=$SNAPCRAFT_PART_BUILD/../../boost/src
after: [boost]
override-pull: |
git clone --branch percona-xtrabackup-8.0.30-23 --depth 1 \
https://github.com/percona/percona-xtrabackup.git .
git submodule update --init
override-build: |
cd $SNAPCRAFT_PART_SRC
git checkout .
patch -s -p1 < $SNAPCRAFT_PROJECT_DIR/xtrabackup_snap_path.patch
cd $SNAPCRAFT_PART_BUILD
snapcraftctl build
snapcraftctl set-version "8.0.30-23"
override-prime: |
snapcraftctl prime
rm -rf $SNAPCRAFT_PRIME/usr/share
rm -rf $SNAPCRAFT_PRIME/usr/include
rm -rf $SNAPCRAFT_PRIME/man1
rm -rf $SNAPCRAFT_PRIME/man8
build-packages:
- bison
- cmake
- g++
- gcc
- libcurl4
- libcurl4-gnutls-dev
- libev-dev
- libgcrypt20-dev
- libncurses5-dev
- libprocps-dev
- libssl-dev
- pkg-config
- xxd
stage-packages:
- libasn1-8-heimdal
- libbrotli1
- libcurl3-gnutls
- libev4
- libgssapi3-heimdal
- libhcrypto4-heimdal
- libheimbase1-heimdal
- libheimntlm0-heimdal
- libhx509-5-heimdal
- libkrb5-26-heimdal
- libldap-2.4-2
- libnghttp2-14
- libpsl5
- libroken18-heimdal
- librtmp1
- libsasl2-2
- libssh-4
- libwind0-heimdal
boost:
plugin: dump
source-type: tar
source: https://boostorg.jfrog.io/artifactory/main/release/1.77.0/source/boost_1_77_0.tar.bz2
override-build: ":" # Do nothing
build-packages:
- bzip2