mirror of
https://github.com/fish-shell/fish-shell.git
synced 2026-06-27 12:11:15 -03:00
Add Alpine to github actions CI
Restores Alpine CI as removed in these commits: -ff0afd14c2(Remove Cirrus CI, 2026-05-28) -f48166ff36(update-dependencies: remove things used for Cirrus, 2026-05-29) -dc9668c8a4(Remove unused workflow to build docker images, 2026-05-30) See following commits for the rest. Part of #12626
This commit is contained in:
7
.github/workflows/test.yml
vendored
7
.github/workflows/test.yml
vendored
@@ -10,6 +10,13 @@ permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
alpine:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2, build_tools/update-dependencies.sh
|
||||
- run:
|
||||
docker/docker_run_tests.sh docker/alpine.Dockerfile
|
||||
|
||||
ubuntu:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
45
docker/alpine.Dockerfile
Normal file
45
docker/alpine.Dockerfile
Normal file
@@ -0,0 +1,45 @@
|
||||
# Version set by updatecli.d/docker.yml
|
||||
FROM alpine:3.23
|
||||
LABEL org.opencontainers.image.source=https://github.com/fish-shell/fish-shell
|
||||
|
||||
ENV LANG=C.UTF-8
|
||||
ENV LC_ALL=C.UTF-8
|
||||
|
||||
RUN apk add --no-cache \
|
||||
bash \
|
||||
cargo \
|
||||
g++ \
|
||||
gettext-dev \
|
||||
git \
|
||||
libintl \
|
||||
musl-dev \
|
||||
pcre2-dev \
|
||||
py3-pexpect \
|
||||
py3-pip \
|
||||
python3 \
|
||||
rust \
|
||||
sudo \
|
||||
tmux
|
||||
|
||||
RUN addgroup -g 1000 fishuser
|
||||
|
||||
RUN adduser \
|
||||
--disabled-password \
|
||||
--gecos "" \
|
||||
--home "/home/fishuser" \
|
||||
--ingroup fishuser \
|
||||
--uid 1000 \
|
||||
fishuser
|
||||
|
||||
RUN mkdir -p /home/fishuser/fish-build \
|
||||
&& mkdir /fish-source \
|
||||
&& chown -R fishuser:fishuser /home/fishuser /fish-source
|
||||
|
||||
USER fishuser
|
||||
WORKDIR /home/fishuser
|
||||
|
||||
COPY fish_run_tests.sh /
|
||||
|
||||
ENV FISH_CHECK_LINT=false
|
||||
|
||||
CMD /fish_run_tests.sh
|
||||
@@ -54,8 +54,9 @@ docker build \
|
||||
"$workspace_root"/docker/context/
|
||||
|
||||
# Run tests in it, allowing them to fail without failing this script.
|
||||
# shellcheck disable=SC2046 # for the isatty snippet
|
||||
# shellcheck disable=SC2086 # $DOCKER_EXTRA_ARGS should have globbing and splitting applied.
|
||||
docker run -it \
|
||||
docker run -i $(isatty 0 && printf %s -t) \
|
||||
--mount type=bind,source="$workspace_root",target=/fish-source,readonly \
|
||||
$DOCKER_EXTRA_ARGS \
|
||||
"$IMG_TAGNAME"
|
||||
|
||||
@@ -1,6 +1,13 @@
|
||||
name: "Update Linux docker images"
|
||||
|
||||
sources:
|
||||
alpine_latest_version:
|
||||
kind: dockerimage
|
||||
spec:
|
||||
image: alpine
|
||||
tagfilter: "^[0-9]+\\.[0-9]+$"
|
||||
versionfilter:
|
||||
kind: semver
|
||||
ubuntu_latest_lts_version:
|
||||
kind: shell
|
||||
spec:
|
||||
@@ -17,6 +24,14 @@ sources:
|
||||
tail -1
|
||||
|
||||
targets:
|
||||
update_alpine_dockerfile:
|
||||
name: "Update Alpine Linux version"
|
||||
sourceid: alpine_latest_version
|
||||
kind: file
|
||||
spec:
|
||||
file: docker/alpine.Dockerfile
|
||||
matchpattern: "FROM alpine:.*"
|
||||
replacepattern: 'FROM alpine:{{ source "alpine_latest_version" }}'
|
||||
ubuntu_latest_version_dockerfile:
|
||||
name: "Update oldest non-EOL Ubuntu Linux version"
|
||||
sourceid: ubuntu_latest_lts_version
|
||||
|
||||
Reference in New Issue
Block a user