Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/pkg
Path: blob/main/tests/frontend/autoupgrade.sh
2065 views
1
#! /usr/bin/env atf-sh
2
3
. $(atf_get_srcdir)/test_environment.sh
4
5
tests_init \
6
autoupgrade \
7
autoupgrade_multirepo
8
9
autoupgrade_body() {
10
atf_skip_on Linux Test fails on Linux
11
12
atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg1 pkg 1
13
atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg2 pkg 1_1
14
15
atf_check \
16
-o match:".*Installing.*\.\.\.$" \
17
-e empty \
18
-s exit:0 \
19
pkg register -M pkg1.ucl
20
21
atf_check \
22
-o ignore \
23
-e empty \
24
-s exit:0 \
25
pkg create -M ./pkg2.ucl
26
27
atf_check \
28
-o inline:"Creating repository in .: done\nPacking files for repository: done\n" \
29
-e empty \
30
-s exit:0 \
31
pkg repo .
32
33
mkdir repoconf
34
cat << EOF > repoconf/repo.conf
35
local: {
36
url: file:///$TMPDIR,
37
enabled: true
38
}
39
EOF
40
41
atf_check \
42
-o match:".*New version of pkg detected.*" \
43
-e ignore \
44
-s exit:0 \
45
pkg -o REPOS_DIR="$TMPDIR/repoconf" -o PKG_CACHEDIR="$TMPDIR" upgrade -y
46
}
47
48
autoupgrade_multirepo_head() {
49
atf_set "timeout" 40
50
}
51
52
autoupgrade_multirepo_body() {
53
atf_skip_on Linux Test fails on Linux
54
55
atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg1 pkg 1
56
atf_check -s exit:0 sh ${RESOURCEDIR}/test_subr.sh new_pkg pkg2 pkg 1.1
57
58
atf_check \
59
-o match:".*Installing.*\.\.\.$" \
60
-e empty \
61
-s exit:0 \
62
pkg register -M pkg1.ucl
63
64
mkdir repo1 repo2
65
66
atf_check \
67
-o ignore \
68
-e empty \
69
-s exit:0 \
70
pkg create -M ./pkg1.ucl -o repo1
71
72
atf_check \
73
-o ignore \
74
-e empty \
75
-s exit:0 \
76
pkg create -M ./pkg2.ucl -o repo2
77
78
atf_check \
79
-o ignore \
80
-e empty \
81
-s exit:0 \
82
pkg repo repo1
83
84
atf_check \
85
-o ignore \
86
-e empty \
87
-s exit:0 \
88
pkg repo repo2
89
90
mkdir repoconf
91
cat << EOF > repoconf/repo.conf
92
repo1: {
93
url: file:///$TMPDIR/repo1,
94
enabled: true
95
}
96
repo2: {
97
url: file:///$TMPDIR/repo2,
98
enabled: true
99
}
100
EOF
101
102
export REPOS_DIR="${TMPDIR}/repoconf"
103
atf_check \
104
-o ignore \
105
-s exit:0 \
106
pkg install -r repo1 -fy pkg-1
107
108
atf_check \
109
-o match:".*New version of pkg detected.*" \
110
-s exit:0 \
111
pkg upgrade -y
112
113
atf_check \
114
-o ignore \
115
-e empty \
116
-s exit:0 \
117
pkg upgrade -y
118
}
119
120
121