14 group: ${{ github.workflow }}-${{ github.ref }}
15 cancel-in-progress: true
18 # Lint changed templates.
21 runs-on: ubuntu-latest
24 image: 'ghcr.io/void-linux/void-buildroot-musl:20240526R1'
26 PATH: '/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin:/usr/local/bin:/tmp/bin'
27 LICENSE_LIST: common/travis/license.lst
30 - name: Prepare container
32 # switch to repo-ci mirror
33 mkdir -p /etc/xbps.d && cp /usr/share/xbps.d/*-repository-*.conf /etc/xbps.d/
34 sed -i 's|repo-default|repo-ci|g' /etc/xbps.d/*-repository-*.conf
35 # Sync and upgrade once, assume error comes from xbps update
36 xbps-install -Syu || xbps-install -yu xbps
37 # Upgrade again (in case there was a xbps update)
39 # install tools needed for lints
40 xbps-install -y grep curl git
41 - name: Clone and checkout
42 uses: classabbyamp/treeless-checkout-action@v1
43 - name: Create hostrepo and prepare masterdir
45 ln -s "$(pwd)" /hostrepo &&
46 common/travis/set_mirror.sh &&
47 common/travis/prepare.sh &&
48 common/travis/fetch-xtools.sh
49 - run: common/travis/changed_templates.sh
53 common/travis/xlint.sh || rv=1
54 common/travis/verify-update-check.sh || rv=1
57 # Build changed packages.
60 runs-on: ubuntu-latest
61 if: "!contains(github.event.pull_request.title, '[ci skip]') && !contains(github.event.pull_request.body, '[ci skip]')"
64 image: ghcr.io/void-linux/void-buildroot-${{ matrix.config.libc }}:20240526R1
65 options: --platform ${{ matrix.config.platform }}
67 PATH: '/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin:/usr/local/bin:/tmp/bin'
68 ARCH: '${{ matrix.config.arch }}'
69 BOOTSTRAP: '${{ matrix.config.host }}'
70 TEST: '${{ matrix.config.test }}'
77 - { arch: x86_64, host: x86_64, libc: glibc, platform: linux/amd64, test: 1 }
78 - { arch: i686, host: i686, libc: glibc, platform: linux/386, test: 1 }
79 - { arch: aarch64, host: x86_64, libc: glibc, platform: linux/amd64, test: 0 }
80 - { arch: armv7l, host: x86_64, libc: glibc, platform: linux/amd64, test: 0 }
81 - { arch: x86_64-musl, host: x86_64-musl, libc: musl, platform: linux/amd64, test: 1 }
82 - { arch: armv6l-musl, host: x86_64-musl, libc: musl, platform: linux/amd64, test: 0 }
83 - { arch: aarch64-musl, host: x86_64-musl, libc: musl, platform: linux/amd64, test: 0 }
86 - name: Prepare container
88 # switch to repo-ci mirror
89 mkdir -p /etc/xbps.d && cp /usr/share/xbps.d/*-repository-*.conf /etc/xbps.d/
90 sed -i 's|repo-default|repo-ci|g' /etc/xbps.d/*-repository-*.conf
91 # Sync and upgrade once, assume error comes from xbps update
92 xbps-install -Syu || xbps-install -yu xbps
93 # Upgrade again (in case there was a xbps update)
96 - name: Clone and checkout
98 PATH: '/usr/libexec/chroot-git:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin:/usr/local/bin:/tmp/bin'
99 uses: classabbyamp/treeless-checkout-action@v1
100 - name: Create hostrepo and prepare masterdir
102 ln -s "$(pwd)" /hostrepo &&
103 common/travis/set_mirror.sh &&
104 common/travis/prepare.sh &&
105 common/travis/fetch-xtools.sh
106 - name: Find changed templates
108 PATH: '/usr/libexec/chroot-git:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin:/usr/local/bin:/tmp/bin'
109 run: common/travis/changed_templates.sh
111 - name: Build and check packages
116 "$here/common/travis/build.sh" "$BOOTSTRAP" "$ARCH" "$TEST"
124 "$here/common/travis/show_files.sh" "$BOOTSTRAP" "$ARCH"
127 - name: Compare to previous
132 "$here/common/travis/xpkgdiff.sh" "$BOOTSTRAP" "$ARCH"
135 - name: Check file conflicts
136 if: matrix.config.arch == 'x86_64' # the arch indexed in xlocate
138 PATH: '/usr/libexec/chroot-git:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin:/usr/local/bin:/tmp/bin'
140 if [ -s /tmp/templates ]; then
142 common/scripts/lint-conflicts $HOME/hostdir/binpkgs
145 - name: Verify repository state
150 "$here/common/travis/check-install.sh" "$BOOTSTRAP" "$ARCH"