Update Eclipse classpath #153
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Tests | |
on: [push, pull_request] | |
jobs: | |
wait-for-build: | |
name: Waiting for build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Wait for build | |
uses: lewagon/[email protected] | |
with: | |
ref: ${{ github.ref }} | |
check-name: 'Building LDAP SDK' | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
wait-interval: 30 | |
if: github.event_name == 'push' | |
- name: Wait for build | |
uses: lewagon/[email protected] | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
check-name: 'Building LDAP SDK' | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
wait-interval: 30 | |
if: github.event_name == 'pull_request' | |
maven-test: | |
name: Maven Test | |
runs-on: ubuntu-latest | |
steps: | |
- name: Clone repository | |
uses: actions/checkout@v4 | |
- name: Set up Java | |
uses: actions/setup-java@v4 | |
with: | |
java-version: '17' | |
distribution: 'adopt' | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y maven ant | |
# get dependencies from Maven | |
mvn --batch-mode dependency:copy-dependencies | |
- name: Build with Maven | |
run: mvn --batch-mode package | |
- name: Build with Ant | |
run: | | |
SLF4J_LIB=$(find . -name "slf4j-api-*.jar" -print -quit) | |
echo "SLF4J_LIB: $SLF4J_LIB" | |
JSS_LIB=$(find . -name "jss-base-*.jar" -print -quit) | |
echo "JSS_LIB: $JSS_LIB" | |
./build.sh \ | |
--slf4j-lib=$SLF4J_LIB \ | |
--jss-lib=$JSS_LIB \ | |
dist | |
- name: Compare ldapjdk.jar | |
run: | | |
jar tvf java-sdk/ldapjdk/target/ldapjdk.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| grep -v '^META-INF/maven/' \ | |
| tee maven.out | |
jar tvf ~/build/ldapjdk/packages/ldapjdk.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| tee ant.out | |
diff maven.out ant.out | |
- name: Compare ldapbeans.jar | |
run: | | |
jar tvf java-sdk/ldapbeans/target/ldapbeans.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| grep -v '^META-INF/maven/' \ | |
| tee maven.out | |
jar tvf ~/build/ldapjdk/packages/ldapbeans.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| tee ant.out | |
diff maven.out ant.out | |
- name: Compare ldapfilter.jar | |
run: | | |
jar tvf java-sdk/ldapfilter/target/ldapfilter.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| grep -v '^META-INF/maven/' \ | |
| tee maven.out | |
jar tvf ~/build/ldapjdk/packages/ldapfilt.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| tee ant.out | |
diff maven.out ant.out | |
- name: Compare ldapsp.jar | |
run: | | |
jar tvf java-sdk/ldapsp/target/ldapsp.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| grep -v '^META-INF/maven/' \ | |
| tee maven.out | |
jar tvf ~/build/ldapjdk/packages/ldapsp.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| tee ant.out | |
diff maven.out ant.out | |
- name: Compare ldaptools.jar | |
run: | | |
jar tvf java-sdk/ldaptools/target/ldaptools.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| grep -v '^META-INF/maven/' \ | |
| tee maven.out | |
jar tvf ~/build/ldapjdk/packages/ldaptools.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| grep -v '/$' \ | |
| tee ant.out | |
diff maven.out ant.out | |
# TODO: Run examples | |
rpm-test: | |
name: RPM Test | |
needs: wait-for-build | |
runs-on: ubuntu-latest | |
env: | |
SHARED: /tmp/workdir/ldapjdk | |
steps: | |
- name: Clone repository | |
uses: actions/checkout@v4 | |
- name: Retrieve LDAP SDK images | |
uses: actions/cache@v4 | |
with: | |
key: ldapjdk-images-${{ github.sha }} | |
path: ldapjdk-images.tar | |
- name: Load LDAP SDK images | |
run: docker load --input ldapjdk-images.tar | |
- name: Set up LDAP SDK container | |
run: | | |
tests/bin/runner-init.sh ldapjdk | |
env: | |
IMAGE: ldapjdk-builder | |
HOSTNAME: ldapjdk.example.com | |
- name: Install RPMs | |
run: | | |
docker exec ldapjdk bash -c "dnf localinstall -y build/RPMS/*.rpm" | |
- name: Build with Maven | |
run: | | |
docker exec ldapjdk mvn --batch-mode package | |
- name: Compare ldapjdk.jar | |
run: | | |
docker exec ldapjdk \ | |
jar tvf /usr/share/java/ldapjdk/ldapjdk.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee rpm.out | |
docker exec ldapjdk \ | |
jar tvf java-sdk/ldapjdk/target/ldapjdk.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee maven.out | |
diff rpm.out maven.out | |
- name: Compare ldapbeans.jar | |
run: | | |
docker exec ldapjdk \ | |
jar tvf /usr/share/java/ldapjdk/ldapbeans.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee rpm.out | |
docker exec ldapjdk \ | |
jar tvf java-sdk/ldapbeans/target/ldapbeans.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee maven.out | |
diff rpm.out maven.out | |
- name: Compare ldapfilter.jar | |
run: | | |
docker exec ldapjdk \ | |
jar tvf /usr/share/java/ldapjdk/ldapfilter.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee rpm.out | |
docker exec ldapjdk \ | |
jar tvf java-sdk/ldapfilter/target/ldapfilter.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee maven.out | |
diff rpm.out maven.out | |
- name: Compare ldapsp.jar | |
run: | | |
docker exec ldapjdk \ | |
jar tvf /usr/share/java/ldapjdk/ldapsp.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee rpm.out | |
docker exec ldapjdk \ | |
jar tvf java-sdk/ldapsp/target/ldapsp.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee maven.out | |
diff rpm.out maven.out | |
- name: Compare ldaptools.jar | |
run: | | |
docker exec ldapjdk \ | |
jar tvf /usr/share/java/ldapjdk/ldaptools.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee rpm.out | |
docker exec ldapjdk \ | |
jar tvf java-sdk/ldaptools/target/ldaptools.jar \ | |
| awk '{print $8;}' \ | |
| sort \ | |
| tee maven.out | |
diff rpm.out maven.out | |
- name: Install RPMInspect | |
run: | | |
docker exec ldapjdk dnf copr enable -y copr.fedorainfracloud.org/dcantrell/rpminspect | |
docker exec ldapjdk dnf install -y rpminspect rpminspect-data-fedora | |
- name: Run RPMInspect on SRPM and RPMs | |
run: | | |
docker exec ldapjdk ./tests/bin/rpminspect.sh |