-
Notifications
You must be signed in to change notification settings - Fork 6
92 lines (88 loc) · 3.91 KB
/
builds.yml
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
name: docker build
# on: [push]
on:
push:
paths:
- 'usr/bin/dist-installer-cli'
- '.github/workflows/builds.yml'
jobs:
changes:
runs-on: ubuntu-22.04
permissions:
pull-requests: read
outputs:
builds: ${{ steps.filter.outputs.builds }}
installer: ${{ steps.filter.outputs.installer }}
steps:
- uses: actions/checkout@v3
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
installer:
- 'usr/bin/dist-installer-cli'
builds:
- '.github/workflows/builds.yml'
build:
needs: changes
# if: ${{ (needs.changes.outputs.installer == 'true') }}
# if: ${{ (needs.changes.outputs.builds == 'true') }}
if: ${{ (needs.changes.outputs.installer == 'true' || needs.changes.outputs.builds == 'true') }}
## Github takes too long to set the current latest image, this is
## why we set it manually.
## https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-runners-and-hardware-resources
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
include:
- image: debian:oldstable
- image: debian:stable
- image: debian:testing
- image: ubuntu:latest
- image: linuxmintd/mint21.2-amd64:latest
- image: fedora:latest
container:
image: ${{ matrix.image }}
steps:
- uses: actions/checkout@v3
- name: System Basic Packages
run: |
if command -v apt-get; then
apt-get update -y && apt-get install -y shellcheck sudo adduser
elif command -v dnf; then
dnf update -y && dnf install -y ShellCheck sudo
else
exit 1
fi
- name: System information
run: |
cat /etc/os-release
uname -a
echo "${PATH}"
cat /etc/sudoers
ls /etc/sudoers.d
- name: Normal user with sudo privileges
run: |
if test -f /etc/debian_version; then
adduser --gecos "" --disabled-password user
usermod -aG sudo user
echo "%sudo ALL=(ALL) NOPASSWD: ALL" | tee /etc/sudoers.d/user
elif test -f /etc/fedora-release; then
adduser user
usermod -aG wheel user
echo "%wheel ALL=(ALL) NOPASSWD: ALL" | tee /etc/sudoers.d/user
else
exit 1
fi
- name: Run default dist-installer-cli
#run: su -s /bin/bash user -- usr/bin/dist-installer-cli --non-interactive --log-level=debug --no-boot --dev --ci
run: sudo -u user -- usr/bin/dist-installer-cli --non-interactive --log-level=debug --no-boot --dev --ci
- name: Run VirtualBox Installer - default repository
run: sudo -u user -- usr/bin/dist-installer-cli --non-interactive --log-level=debug --no-boot --dev --ci --virtualbox-only
- name: Run VirtualBox Installer - Oracle repository
run: sudo -u user -- usr/bin/dist-installer-cli --non-interactive --log-level=debug --no-boot --dev --ci --virtualbox-only --oracle-repo
- name: Run VirtualBox Installer - back to default repository
run: sudo -u user -- usr/bin/dist-installer-cli --non-interactive --log-level=debug --no-boot --dev --ci --virtualbox-only
- name: Run Installer ShellCheck
run: shellcheck usr/bin/dist-installer-cli