forked from canonical/core-base
-
Notifications
You must be signed in to change notification settings - Fork 0
/
snapcraft.yaml
103 lines (100 loc) · 2.96 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
name: core24
# version: "24"
adopt-info: bootstrap
summary: Runtime environment based on Ubuntu 23.10
description: |
The base snap based on the Ubuntu 23.10 release.
confinement: strict
type: base
# This one is to trick snapcraft to not use legacy code
build-base: devel
grade: devel
assumes: [snapd2.55.5]
parts:
probert-deb:
plugin: nil
build-packages:
- apt-utils
- devscripts
source: https://github.com/canonical/probert.git
source-type: git
# following branch server/jammy
source-commit: 253acbe1480fba69d12d6e72f53412da79e27410
override-pull: |
"${CRAFT_PROJECT_DIR}/build-package.sh" pull
override-build: |
"${CRAFT_PROJECT_DIR}/build-package.sh" build
override-stage: |
"${CRAFT_PROJECT_DIR}/build-package.sh" stage
prime:
- -local-debs
consoleconf-deb:
build-packages:
- apt-utils
- devscripts
plugin: nil
source: https://github.com/canonical/subiquity.git
source-type: git
# following branch server/jammy
source-commit: d2fe66f1b624274f2b1ff53bcbbc093cc9ebfca2
override-pull: |
"${CRAFT_PROJECT_DIR}/build-package.sh" pull
override-build: |
"${CRAFT_PROJECT_DIR}/build-package.sh" build
override-stage: |
"${CRAFT_PROJECT_DIR}/build-package.sh" stage
prime:
- -local-debs
base:
plugin: nil
source: keyrings
build-packages:
- wget
build-environment:
# When 24.04 is finally released:
#- RELEASE: "24.04"
#- BASE: ubuntu-base-${RELEASE}-base-${CRAFT_TARGET_ARCH}.tar.gz
#- DIR_URL: https://cdimage.ubuntu.com/ubuntu-base/releases/${RELEASE}/release
- BASE: mantic-base-${CRAFT_TARGET_ARCH}.tar.gz
- DIR_URL: https://cdimage.ubuntu.com/ubuntu-base/daily/current
- URL: ${DIR_URL}/${BASE}
- SHA256: ${DIR_URL}/SHA256SUMS
- SIG: ${SHA256}.gpg
override-pull: |
craftctl default
wget "${SHA256}" "${SIG}" "${URL}"
gpg --no-default-keyring \
--keyring ./cd-image-keying.gpg \
--verify SHA256SUMS.gpg SHA256SUMS
awk -v "file=${BASE}" '$2=="*"file' SHA256SUMS | sha256sum -c
override-build: |
mkdir -p "${CRAFT_PART_INSTALL}/base"
tar -x --xattrs-include=* -f "${BASE}" -C "${CRAFT_PART_INSTALL}/base"
override-stage: |
rm -rf "${CRAFT_STAGE}/base"
craftctl default
override-prime: |
# Do nothing
splash-theme:
plugin: dump
source: https://github.com/snapcore/plymouth-theme-ubuntu-core.git
source-type: git
organize:
ubuntu-core: usr/share/plymouth/themes/ubuntu-core
bootstrap:
after:
- probert-deb
- consoleconf-deb
- base
plugin: make
source: .
build-packages:
- shellcheck
- distro-info
override-pull: |
craftctl set version="$(/bin/date +%Y%m%d)"
craftctl default
override-prime: |
craftctl default
# ensure build-in tests are run
cd ${CRAFT_PART_SRC} && make test TESTDIR=${CRAFT_PRIME}