Skip to content

Commit 62143a5

Browse files
committed
Initial commit for smarkwal/japicc:2.4.
1 parent e859ce2 commit 62143a5

5 files changed

Lines changed: 87 additions & 2 deletions

File tree

Dockerfile

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
FROM alpine AS builder
2+
3+
# install git, make, and perl
4+
RUN apk update && \
5+
apk upgrade && \
6+
apk add git make perl
7+
8+
# clone and install JAPICC 2.4
9+
RUN git clone --depth 1 --branch 2.4 https://github.com/lvc/japi-compliance-checker.git /opt/japi-compliance-checker
10+
RUN cd /opt/japi-compliance-checker && \
11+
make install prefix=/usr
12+
13+
FROM alpine
14+
15+
# install perl and openjdk11
16+
RUN apk update && \
17+
apk upgrade && \
18+
apk add perl openjdk11
19+
20+
# copy JAPICC from builder
21+
COPY --from=builder /usr/bin/japi-compliance-checker /usr/bin/japi-compliance-checker
22+
COPY --from=builder /usr/share/japi-compliance-checker /usr/share/japi-compliance-checker
23+
24+
# prepare working directory
25+
WORKDIR /japicc
26+
27+
ENTRYPOINT ["/usr/bin/japi-compliance-checker"]

README.md

Lines changed: 49 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,49 @@
1-
# japicc-docker
2-
Docker images with Java API Compliance Checker
1+
# Docker images for Java API Compliance Checker (JAPICC)
2+
3+
**DISCLAIMER: I am not involved in the JAPICC project. These Docker images have been created for the sole purpose to simplify the use of JAPICC in my private and professional life.**
4+
5+
Docker images on Docker Hub: https://hub.docker.com/repository/docker/smarkwal/japicc
6+
7+
## About JAPICC 2.4
8+
9+
```
10+
Java API Compliance Checker (JAPICC) 2.4
11+
Copyright (C) 2018 Andrey Ponomarenko's ABI Laboratory
12+
License: LGPLv2.1+ <http://www.gnu.org/licenses/>
13+
This program is free software: you can redistribute it and/or modify it.
14+
15+
Written by Andrey Ponomarenko.
16+
```
17+
18+
Project website: https://lvc.github.io/japi-compliance-checker/
19+
20+
Source code: https://github.com/lvc/japi-compliance-checker
21+
22+
## Tags
23+
24+
**2.4**, **latest**
25+
26+
JAPICC 2.4 based on Alpine Linux 3.15.0 with Perl 5.34.0 and OpenJDK 11.0.14.
27+
28+
## How to run these Docker images
29+
30+
Create an executable script `japicc.sh` with the following content:
31+
32+
```
33+
#!/bin/bash
34+
35+
docker run --rm -v "$(pwd):/japicc" smarkwal/japicc "$@"
36+
```
37+
38+
Now run JAPICC by passing options to the script. For example:
39+
40+
```
41+
./japicc.sh -old commons-io-2.10.0.jar -new commons-io-2.11.0.jar -report-path commons-io.html
42+
```
43+
44+
To get help:
45+
46+
```
47+
./japicc.sh --help
48+
```
49+

build.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/bin/bash
2+
3+
docker build --no-cache --tag smarkwal/japicc:2.4 .
4+
docker tag smarkwal/japicc:2.4 smarkwal/japicc:latest

japicc.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#!/bin/bash
2+
3+
docker run --rm -v "$(pwd):/japicc" smarkwal/japicc:2.4 "$@"

push.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/bin/bash
2+
3+
docker push smarkwal/japicc:2.4
4+
docker push smarkwal/japicc:latest

0 commit comments

Comments
 (0)