# Mostly copied from https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-ant # zlatinb name: Java CI on: [push] permissions: contents: read pages: write id-token: write jobs: build: runs-on: ubuntu-latest steps: - name: GetText run: sudo apt install gettext - uses: actions/checkout@v4 - name: Set up JDK 17 uses: actions/setup-java@v4 with: java-version: '17' distribution: 'temurin' - name : Generate override.properties run: | rm -f override.properties echo "build.built-by=GitHub Actions" >> override.properties echo "noExe=true" >> override.properties - name: build with Ant run: ant distclean pkg - name: Upload installer.jar uses: actions/upload-artifact@v4 with: name: I2P-install-${{ github.sha }}.jar path: install.jar javadoc-latest: runs-on: ubuntu-latest steps: - name: Setup Pages uses: actions/configure-pages@v4 - name: GetText run: sudo apt install gettext - uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: java-version: '21' distribution: 'temurin' - name : Generate override.properties run: | rm -f override.properties echo "build.built-by=GitHub Actions" >> override.properties echo "noExe=true" >> override.properties - name: test Debian build with Ant run: ant distclean - name: build javadoc with Ant run: ant distclean javadoc updater - name: zip javadoc and place update in javadoc zip run: cp i2pupdate.zip build/javadoc/i2pupdate.zip && zip -r javadoc.zip build/javadoc - name: Upload javadoc.zip uses: actions/upload-artifact@v4 with: name: I2P-javadoc-${{ github.sha }}.zip path: javadoc.zip - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: # Upload javadocs to github page path: 'build/javadoc' - name: Deploy javadoc and dev build to GitHub Pages id: deployment uses: actions/deploy-pages@v4 build-maven: runs-on: ubuntu-latest steps: - name: GetText run: sudo apt install gettext - uses: actions/checkout@v4 - name: Set up JDK 17 uses: actions/setup-java@v4 with: java-version: '17' distribution: 'temurin' - name : Generate override.properties run: | rm -f override.properties echo "build.built-by=GitHub Actions" >> override.properties echo "noExe=true" >> override.properties - name: build Maven dev build with Ant run: ./installer/resources/maven-dev-release.sh 1 - name: Upload servlet-i2p.jar uses: actions/upload-artifact@v4 with: name: servlet-i2p-${{ github.sha }}.jar path: pkg-mavencentral/servlet-i2p*.jar - name: Upload streaming.jar uses: actions/upload-artifact@v4 with: name: streaming-${{ github.sha }}.jar path: pkg-mavencentral/streaming*.jar - name: Upload mstreaming.jar uses: actions/upload-artifact@v4 with: name: mstreaming-${{ github.sha }}.jar path: pkg-mavencentral/mstreaming*.jar - name: Upload router.jar uses: actions/upload-artifact@v4 with: name: router-${{ github.sha }}.jar path: pkg-mavencentral/router*.jar - name: Upload i2p.jar uses: actions/upload-artifact@v4 with: name: i2p-${{ github.sha }}.jar path: pkg-mavencentral/i2p*.jar