6
6
7
7
jobs :
8
8
run-tests :
9
+ strategy :
10
+ matrix :
11
+ os : ["ubuntu:22.04", "almalinux:9"]
9
12
runs-on : ubuntu-latest
13
+ container :
14
+ image : ${{ matrix.os }}
10
15
steps :
11
- # Checkout opensource COBOL
12
- - name : Checkout opensource COBOL 4j
13
- uses : actions/checkout@v2
14
16
15
- - name : Install dependencies
17
+ - name : Install dependencies on Ubuntu 22.04
18
+ if : matrix.os == 'ubuntu:22.04'
16
19
run : |
17
- sudo apt-get update
18
- sudo apt-get install default-jdk
19
- sudo apt-get install -y build-essential bison flex gettext texinfo
20
+ apt-get update -y
21
+ apt-get install -y default-jdk
22
+ apt-get install -y build-essential bison flex gettext texinfo automake autoconf libtool
23
+
24
+ - name : Install dependencies on AlmaLinux 9
25
+ if : matrix.os == 'almalinux:9'
26
+ run : |
27
+ dnf -y update
28
+ dnf install -y java-17-openjdk-devel gcc gcc-c++ make bison flex automake autoconf libtool diffutils gettext
29
+
30
+ - name : Checkout opensource COBOL 4j
31
+ uses : actions/checkout@v2
20
32
21
33
- name : Install opensource COBOL 4j
22
34
run : |
25
37
export CLASSPATH=":$HOME/.java_lib/sqlite.jar"
26
38
./configure --prefix=/usr/
27
39
make
28
- sudo make install
29
- cp libcobj/build/libcobj.jar ~/.java_lib
30
- export CLASSPATH="$HOME/.java_lib/libcobj.jar:$HOME/.java_lib/sqlite.jar"
40
+ make install
41
+ export CLASSPATH=":/usr/lib/opensourcecobol4j/libcobj.jar:$HOME/.java_lib/sqlite.jar"
31
42
32
43
- name : Make test scripts
33
44
run : |
@@ -37,55 +48,55 @@ jobs:
37
48
38
49
- name : Run tests "command-line-options"
39
50
run : |
40
- export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
51
+ export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
41
52
cd tests/
42
53
./command-line-options
43
54
cd ../
44
55
45
56
- name : Run tests "misc"
46
57
run : |
47
- export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
58
+ export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
48
59
cd tests/
49
60
./misc
50
61
cd ../
51
62
52
63
- name : Run tests "data-rep"
53
64
run : |
54
- export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
65
+ export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
55
66
cd tests/
56
67
./data-rep || true
57
68
cd ../
58
69
59
70
- name : Run tests "i18n_sjis"
60
71
run : |
61
- export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
72
+ export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
62
73
cd tests/
63
74
./i18n_sjis || true
64
75
65
76
- name : Run tests "jp-compat"
66
77
run : |
67
- export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
78
+ export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
68
79
cd tests/
69
80
./jp-compat || true
70
81
cd ../
71
82
72
83
# - name: Run tests "run"
73
84
# run: |
74
- # export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
85
+ # export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
75
86
# cd tests/
76
87
# ./run || true
77
88
# cd ../
78
89
79
90
- name : Run tests "syntax"
80
91
run : |
81
- export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
92
+ export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
82
93
cd tests/
83
94
./syntax || true
84
95
cd ../
85
96
86
97
- name : Run NIST test
87
98
run : |
88
- export CLASSPATH=":$HOME/.java_lib /libcobj.jar:$HOME/.java_lib/sqlite.jar"
99
+ export CLASSPATH=":/usr/lib/opensourcecobol4j /libcobj.jar:$HOME/.java_lib/sqlite.jar"
89
100
cd tests/cobol85/
90
101
make test
91
102
@@ -94,8 +105,34 @@ jobs:
94
105
export CLASSPATH=":$HOME/.java_lib/sqlite.jar"
95
106
./configure --prefix=/usr/ --with-vbisam --enable-utf8
96
107
make
97
- sudo make install
98
- cp libcobj/build/libcobj.jar ~/.java_lib
99
- export CLASSPATH=":$HOME/.java_lib/libcobj.jar:$HOME/.java_lib/sqlite.jar"
108
+ make install
109
+ export CLASSPATH=":/usr/lib/opensourcecobol4j/libcobj.jar:$HOME/.java_lib/sqlite.jar"
100
110
./i18n_utf8 || true
101
111
cd ../
112
+
113
+ static_analysis :
114
+ runs-on : ubuntu-latest
115
+ steps :
116
+ # Checkout opensource COBOL
117
+ - name : Checkout opensource COBOL 4j
118
+ uses : actions/checkout@v2
119
+
120
+ - name : Install dependencies
121
+ run : |
122
+ sudo apt-get install default-jdk
123
+
124
+ # Download google-java-format and PMD
125
+ - name : Install dependencies
126
+ run : |
127
+ curl -L -o google-java-format.jar https://github.com/google/google-java-format/releases/download/v1.15.0/google-java-format-1.15.0-all-deps.jar
128
+ curl -L -o pmd-bin-6.52.0.zip https://github.com/pmd/pmd/releases/download/pmd_releases%2F6.52.0/pmd-bin-6.52.0.zip
129
+ unzip pmd-bin-6.52.0.zip
130
+
131
+ - name : Check format with google-java-format
132
+ run : |
133
+ export PATH_GOOGLE_JAVA_FORMAT=${PWD}/google-java-format.jar
134
+ ./check-format
135
+
136
+ - name : Run PMD
137
+ run : |
138
+ pmd-bin-6.52.0/bin/run.sh pmd -d ${PWD}/libcobj/src -R ${PWD}/.github/ruleset.xml -f text || true
0 commit comments