1 |
commit: 7f952b13493b2177ca2bc4bc68f9d9ba39c9d40c |
2 |
Author: Fabian Groffen <grobian <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Feb 6 12:02:23 2022 +0000 |
4 |
Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Feb 6 12:02:23 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=7f952b13 |
7 |
|
8 |
.github: first attempt at build/test automation to replace Travis |
9 |
|
10 |
The Coverity task is disabled for I don't have access to the Github |
11 |
project to add the necessary secrets :( |
12 |
|
13 |
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org> |
14 |
|
15 |
.github/workflows/build-test-ci.yml | 99 +++++++++++++++++++++++++++++++++++++ |
16 |
1 file changed, 99 insertions(+) |
17 |
|
18 |
diff --git a/.github/workflows/build-test-ci.yml b/.github/workflows/build-test-ci.yml |
19 |
new file mode 100644 |
20 |
index 0000000..272eff8 |
21 |
--- /dev/null |
22 |
+++ b/.github/workflows/build-test-ci.yml |
23 |
@@ -0,0 +1,99 @@ |
24 |
+# GitHub actions workflow. |
25 |
+# https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions |
26 |
+ |
27 |
+name: Build+Test CI |
28 |
+ |
29 |
+on: |
30 |
+ push: |
31 |
+ branches: |
32 |
+ - master |
33 |
+ tags: |
34 |
+ - v* |
35 |
+ pull_request: |
36 |
+ types: |
37 |
+ - opened |
38 |
+ branches: |
39 |
+ - master |
40 |
+ |
41 |
+jobs: |
42 |
+ make-check-ubuntu-x64: |
43 |
+ strategy: |
44 |
+ matrix: |
45 |
+ os: |
46 |
+ - ubuntu-latest |
47 |
+ cc: |
48 |
+ - gcc |
49 |
+ - clang |
50 |
+ features: |
51 |
+ - --enable-qmanifest --enable-qtegrity |
52 |
+ - --disable-qmanifest --enable-qtegrity |
53 |
+ - --enable-qmanifest --disable-qtegrity |
54 |
+ - --disable-qmanifest --disable-qtegrity |
55 |
+ - "" |
56 |
+ runs-on: ${{ matrix.os }} |
57 |
+ env: |
58 |
+ CC: ${{ matrix.cc }} |
59 |
+ steps: |
60 |
+ - name: install deps |
61 |
+ run: > |
62 |
+ sudo apt-get install -y |
63 |
+ libgpgme11-dev gnupg2 liblz4-tool lzop zstd lzip brotli libb2-dev |
64 |
+ - uses: actions/checkout@v2 |
65 |
+ - name: configure variant ${{ matrix.features }} |
66 |
+ run: > |
67 |
+ ./configure |
68 |
+ --disable-maintainer-mode --disable-openmp |
69 |
+ ${{ matrix.features }} |
70 |
+ - name: make variant ${{ matrix.features }} |
71 |
+ run: make CFLAGS="-O3 -Wall -Werror -Wshadow -pipe" V=1 check |
72 |
+ |
73 |
+ make-check-macos-x64: |
74 |
+ strategy: |
75 |
+ matrix: |
76 |
+ os: |
77 |
+ - macos-latest |
78 |
+ cc: |
79 |
+ - clang |
80 |
+ runs-on: ${{ matrix.os }} |
81 |
+ env: |
82 |
+ CC: ${{ matrix.cc }} |
83 |
+ steps: |
84 |
+ - name: install deps |
85 |
+ run: brew install gpgme gnupg gnu-sed coreutils bash openssl |
86 |
+ - uses: actions/checkout@v2 |
87 |
+ - name: configure |
88 |
+ run: ./configure --disable-maintainer-mode --disable-openmp |
89 |
+ - name: make |
90 |
+ run: make CFLAGS="-O3 -Wall -Werror -Wshadow -pipe" V=1 check |
91 |
+ |
92 |
+# until we are able to set token on Github :( |
93 |
+# coverity: |
94 |
+# runs-on: ubuntu-latest |
95 |
+# steps: |
96 |
+# - uses: actions/checkout@v2 |
97 |
+# - name: configure |
98 |
+# run: > |
99 |
+# ./configure |
100 |
+# --disable-maintainer-mode --disable-openmp |
101 |
+# --enable-qmanifest --enable-qtegrity |
102 |
+# - uses: vapier/coverity-scan-action@v1 |
103 |
+# with: |
104 |
+# email: ${{ secrets.COVERITY_SCAN_EMAIL }} |
105 |
+# token: ${{ secrets.COVERITY_SCAN_TOKEN }} |
106 |
+ |
107 |
+ valgrind: |
108 |
+ runs-on: ubuntu-latest |
109 |
+ steps: |
110 |
+ - name: install deps |
111 |
+ run: > |
112 |
+ sudo apt-get install -y |
113 |
+ libgpgme11-dev gnupg2 liblz4-tool lzop zstd lzip brotli libb2-dev |
114 |
+ valgrind |
115 |
+ - uses: actions/checkout@v2 |
116 |
+ - name: configure |
117 |
+ run: > |
118 |
+ ./configure |
119 |
+ --disable-maintainer-mode --disable-openmp |
120 |
+ --enable-qmanifest --enable-qtegrity |
121 |
+ - name: make |
122 |
+ run: make CFLAGS="-g -pipe" Q_RUN_WITH_VALGRIND=1 V=1 check |