-
Notifications
You must be signed in to change notification settings - Fork 18
48 lines (48 loc) · 1.36 KB
/
build_workflow.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
name: Build workflow
run-name: Build workflow
on:
workflow_dispatch:
push:
branches:
- master
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
runs-on: ubuntu-latest
env:
TEST_REDIS: redis://redis:6379
container:
image: debian:bullseye
services:
redis:
image: redis
postgres:
image: postgres
steps:
-
name: Prepare Environment
run: |
apt-get update && apt-get install -y --no-install-recommends libssl-dev cpanminus make gcc openssl zlib1g-dev pkg-config git libpq-dev apt-transport-https ca-certificates
git config --global --add safe.directory "$GITHUB_WORKSPACE"
-
name: Checkout Code
uses: actions/checkout@v4
-
name: Install Perl Dependencies
run: |
cpanm --quiet --notest Dist::Zilla Dist::Zilla::App::Command::cover Devel::Cover::Report::Codecov
cpanm --quiet --notest $(dzil authordeps --missing)
cpanm -n --installdeps .
cpanm --quiet --notest $(dzil listdeps --author --missing)
-
name: Run Smoke Test
run: dzil smoke --release --author
-
name: Run Coverage Test
run: dzil cover -test -report codecov
-
name: Run extended author test
run: dzil xtest