|
7 | 7 | - 'v*' |
8 | 8 | pull_request: |
9 | 9 | jobs: |
10 | | - install_test: |
11 | | - name: Run installation of kolibri-server in docker image |
| 10 | + build: |
| 11 | + name: Build kolibri-server .deb package |
12 | 12 | runs-on: ubuntu-latest |
| 13 | + steps: |
| 14 | + - name: Checkout codebase |
| 15 | + uses: actions/checkout@v4 |
| 16 | + - name: Install build dependencies |
| 17 | + run: make install-build-deps |
| 18 | + - name: Install Kolibri |
| 19 | + run: make install-kolibri |
| 20 | + - name: Build .deb package |
| 21 | + run: | |
| 22 | + make deb |
| 23 | + cp ../kolibri-server_*.deb ./kolibri-server.deb |
| 24 | + - name: Upload .deb artifact |
| 25 | + uses: actions/upload-artifact@v4 |
| 26 | + with: |
| 27 | + name: kolibri-server-deb |
| 28 | + path: kolibri-server.deb |
| 29 | + install_test: |
| 30 | + name: Install on ${{ matrix.target-image }} (${{ matrix.runner }}) |
| 31 | + needs: build |
| 32 | + runs-on: ${{ matrix.runner }} |
| 33 | + container: ${{ matrix.target-image }} |
13 | 34 | strategy: |
14 | | - max-parallel: 5 |
| 35 | + max-parallel: 10 |
15 | 36 | matrix: |
16 | | - target-image: ['ubuntu:20.04', 'ubuntu:22.04', 'debian:bullseye', 'debian:bookworm'] |
| 37 | + target-image: ['ubuntu:20.04', 'ubuntu:22.04', 'ubuntu:24.04', 'debian:bullseye', 'debian:bookworm'] |
| 38 | + runner: ['ubuntu-latest', 'ubuntu-24.04-arm'] |
17 | 39 | steps: |
18 | 40 | - name: Checkout codebase |
19 | 41 | uses: actions/checkout@v4 |
20 | | - - name: Set up QEMU |
21 | | - uses: docker/setup-qemu-action@v3 |
22 | | - - name: Set up Docker Buildx |
23 | | - uses: docker/setup-buildx-action@v3 |
24 | | - - name: Run installation on ${{ matrix.target-image }} |
25 | | - uses: docker/build-push-action@v6 |
| 42 | + - name: Setup environment |
| 43 | + run: | |
| 44 | + apt-get update |
| 45 | + apt-get install -y gpg tzdata |
| 46 | + rm -f /etc/localtime |
| 47 | + ln -s /usr/share/zoneinfo/America/New_York /etc/localtime |
| 48 | + dpkg-reconfigure -f noninteractive tzdata |
| 49 | + - name: Setup Kolibri PPA |
| 50 | + run: ./test/setup_ppa.sh |
| 51 | + - name: Configure debconf selections |
| 52 | + run: | |
| 53 | + echo "kolibri kolibri/init boolean false" | debconf-set-selections |
| 54 | + echo "kolibri kolibri/user string kolibri" | debconf-set-selections |
| 55 | + echo "kolibri-server kolibri-server/port select 8080" | debconf-set-selections |
| 56 | + echo "kolibri-server kolibri-server/zip_content_port select 8081" | debconf-set-selections |
| 57 | + - name: Download .deb artifact |
| 58 | + uses: actions/download-artifact@v4 |
26 | 59 | with: |
27 | | - build-args: | |
28 | | - TARGET_IMAGE=${{ matrix.target-image }} |
29 | | - context: ./ |
30 | | - file: ./test/Dockerfile |
31 | | - platforms: linux/amd64,linux/arm64 |
32 | | - push: false |
33 | | - target: test |
34 | | - provenance: false |
| 60 | + name: kolibri-server-deb |
| 61 | + - name: Install kolibri-server |
| 62 | + run: apt-get update && apt-get install -y ./kolibri-server.deb |
0 commit comments