diff --git a/.github/workflows/ubuntu-tests.yaml b/.github/workflows/ubuntu-tests.yaml new file mode 100644 index 000000000..f1f5795f5 --- /dev/null +++ b/.github/workflows/ubuntu-tests.yaml @@ -0,0 +1,66 @@ +name: ubuntu-tests + +on: + pull_request: + branches: + - main + schedule: + - cron: '0 0 * * *' + +jobs: + ubuntu-jammy-tests: + runs-on: ubuntu-22.04 + + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + submodules: true + + - name: Install deb packages + run: | + sudo apt-get update + sudo apt-get install \ + bash-completion \ + bats \ + golang \ + meson \ + podman \ + shellcheck \ + skopeo + + - name: Checkout shadow + uses: actions/checkout@v3 + with: + path: shadow-maint/shadow + ref: 4.13 + repository: shadow-maint/shadow.git + submodules: true + + - name: Install deb packages for shadow + run: | + sudo apt-get update + sudo apt-get install \ + autoconf \ + libpam0g-dev + + - name: Set up build directory for shadow + run: | + autoreconf --force --install --verbose + ./configure --disable-account-tools-setuid --disable-silent-rules --with-libpam --with-yescrypt + working-directory: shadow-maint/shadow + + - name: Build shadow + run: make + working-directory: shadow-maint/shadow + + - name: Install shadow + run: sudo make install + working-directory: shadow-maint/shadow + + - name: Download Go modules + run: go mod download -x + working-directory: src + + - name: Set up build directory + run: meson setup --fatal-meson-warnings builddir