File: ws-container.install

package info (click to toggle)
cockpit 355-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 311,568 kB
  • sloc: javascript: 774,787; python: 40,655; ansic: 35,157; cpp: 11,141; sh: 3,512; makefile: 580; xml: 261
file content (45 lines) | stat: -rw-r--r-- 1,847 bytes parent folder | download | duplicates (2)
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
#!/bin/sh
# update cockpit packages and install scripts in the container
set -eu

# keep in sync with containers/ws/install.sh
PACKAGES="
kdump
networkmanager
packagekit
selinux
sosreport
storaged
system
"

for rpm in ws bridge $PACKAGES; do
    rpm2cpio /var/tmp/cockpit-$rpm-*.rpm | cpio -i --make-directories --directory=/var/tmp/install
done

# Sometimes the actual quay.io/cockpit/ws Fedora version lags behind containers/ws/Containerfile, i.e. in between
# moving the latter to a new Fedora version, and releasing Cockpit and landing it in Fedora. Then the Python version
# in the rpms does not match the actual Python version in the container. So remove any traces of the old Python
# deployment first, unpack the new rpms, and move our Python module into place.
ws_pyver=$(podman run --rm --entrypoint /usr/bin/python3 quay.io/cockpit/ws -c \
           'import sys; print("%d.%d" % sys.version_info[:2])')
ws_sitelib="/var/tmp/install/usr/lib/python${ws_pyver}"
if ! [ -d "$ws_sitelib" ]; then
    echo "Adjusting Python module location to $ws_sitelib" >&2
    mv --verbose /var/tmp/install/usr/lib/python3.* "$ws_sitelib" >&2
fi

podman run --name build-cockpit -i \
    -v /var/tmp/:/run/build:Z \
    quay.io/cockpit/ws sh -exc '
cp -a /run/build/install/* /
cp /run/build/containers/ws/label-* /run/build/containers/ws/default-bastion.conf /run/build/containers/ws/cockpit-auth-ssh-key /container/
# done in containers/ws/install.sh; this can be removed once that change is in our VM images
rm -f /usr/libexec/cockpit-session
'
podman commit --change CMD=/container/label-run build-cockpit localhost/cockpit/ws
podman rm -f build-cockpit

# move original quay.io image away, to make sure that our tests use the updated one
podman tag quay.io/cockpit/ws:latest quay.io/cockpit/original-ws:released
podman rmi quay.io/cockpit/ws:latest