Compare commits

...

16 Commits

Author SHA1 Message Date
bcfbf90be2 more CI 2024-03-07 15:25:21 -05:00
63922c3880 more CI 2024-03-07 15:23:06 -05:00
35570a119d more CI 2024-03-07 15:02:33 -05:00
b877b6141d sleep longer for releases 2024-03-07 14:44:52 -05:00
62f23d360d sleep longer for releases 2024-03-07 14:32:53 -05:00
c78614fea5 sleep longer for releases 2024-03-07 14:30:06 -05:00
44cc27b968 sleep for releases 2024-03-07 14:24:24 -05:00
274748d08b Add checksums to release body 2024-03-07 14:18:19 -05:00
b4840b7355 Add checksums to release body 2024-03-07 14:11:37 -05:00
6072b8552e skip unpacking artifacts, only checkout changelog 2024-03-07 13:48:05 -05:00
7c0070cd15 skip unpacking artifacts, only checkout changelog 2024-03-07 13:43:09 -05:00
8083c6c652 skip unpacking artifacts, only checkout changelog 2024-03-07 13:40:26 -05:00
d9d13fac70 check out repo prior to release 2024-03-07 13:33:50 -05:00
75049fa08e fix plugin build 2024-03-07 13:25:50 -05:00
113caaa922 Attempt release upload in CI 2024-03-07 13:19:19 -05:00
bf1b923750 redownload artifacts from ant.yml in release release.yml 2024-03-07 13:12:50 -05:00
3 changed files with 62 additions and 247 deletions

View File

@ -1,5 +1,7 @@
name: Release name: Release
#on: [push]
on: on:
push: push:
# Sequence of patterns matched against refs/tags # Sequence of patterns matched against refs/tags
@ -9,237 +11,62 @@ on:
jobs: jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
permissions:
steps: contents: write
- name: dependencies
run: sudo apt install gettext golang-go git ant
- 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: install crx3
run: go install github.com/mediabuyerbot/go-crx3/crx3@latest
- name: install dzip
run: go install github.com/delicb/dzip@latest
- name: install amo-version
run: go install github.com/eyedeekay/amo-version@a4f4119eac453a14d6b6184b656320eb72b5da3c
- name: install manifest-json-version
run: go install github.com/eyedeekay/manifest-json-version@latest
- run: git clone https://github.com/i2p/i2p.i2p ../i2p.i2p
- run: cd ../i2p.i2p && ant builddep
- name: build with Ant
run: |
export PATH=$PATH:$(go env GOPATH)/bin
ant distclean jpackage debian
- name: Upload Firefox Profile Strict
uses: actions/upload-artifact@v4
with:
name: i2p.firefox.base.profile-${{ github.sha }}.zip
path: ./src/i2p.firefox.base.profile.zip
- name: Upload Firefox Profile Usability
uses: actions/upload-artifact@v4
with:
name: i2p.firefox.usability.profile-${{ github.sha }}.zip
path: ./src/i2p.firefox.usability.profile.zip
- name: Upload Chromium Profile Strict
uses: actions/upload-artifact@v4
with:
name: i2p.chromium.base.profile-${{ github.sha }}.zip
path: ./src/i2p.chromium.base.profile.zip
- name: Upload Chromium Profile Usability
uses: actions/upload-artifact@v4
with:
name: i2p.chromium.usability.profile-${{ github.sha }}.zip
path: ./src/i2p.chromium.usability.profile.zip
- name: Upload i2pfirefox.jar
uses: actions/upload-artifact@v4
with:
name: i2pfirefox-${{ github.sha }}.jar
path: ./src/build/i2pfirefox.jar
- name: Upload i2pfirefox-plugin.jar
uses: actions/upload-artifact@v4
with:
name: i2pfirefox-plugin-${{ github.sha }}.jar
path: ./src/build/i2pfirefox-plugin.jar
- name: Upload i2pbrowser.tar.gz
uses: actions/upload-artifact@v4
with:
name: i2pbrowser-${{ github.sha }}.tar.gz
path: ./i2pbrowser.tar.gz
- name: Upload i2pbrowser.deb
uses: actions/upload-artifact@v4
with:
name: i2pbrowser_${{ github.sha }}_amd64.deb
path: ./i2pbrowser_1.0.0_amd64.deb
- name: build plugin with Ant
run: |
export PATH=$PATH:$(go env GOPATH)/bin
ant distclean pluginzip
- name: Upload i2pfirefox.zip (unsigned plugin)
uses: actions/upload-artifact@v4
with:
name: i2pfirefox-${{ github.sha }}.zip
path: ./plugin.zip
- name: Run release upload script
run: |
./preprelease.sh
./release.sh
buildrpm:
runs-on: ubuntu-latest
container: fedora
steps:
- name: dependencies
run: sudo yum install -y gettext golang-go git ant jq wget curl gpg xz ca-certificates rpm-build
- uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
- run: echo [Adoptium] >> /etc/yum.repos.d/adoptium.repo
- run: echo name=Adoptium >> /etc/yum.repos.d/adoptium.repo
- run: . /etc/os-release; echo baseurl=https://packages.adoptium.net/artifactory/rpm/fedora/$VERSION_ID/x86_64/ >> /etc/yum.repos.d/adoptium.repo
- run: echo enabled=1 >> /etc/yum.repos.d/adoptium.repo
- run: echo gpgcheck=1 >> /etc/yum.repos.d/adoptium.repo
- run: echo gpgkey=https://packages.adoptium.net/artifactory/api/gpg/key/public >> /etc/yum.repos.d/adoptium.repo
- run: dnf clean all && rm -r /var/cache/dnf && dnf upgrade -y && dnf update -y
- run: dnf install -y temurin-21-jdk
- name: Generate override.properties
run: |
rm -f override.properties
echo "build.built-by=GitHub Actions" >> override.properties
echo "noExe=true" >> override.properties
- name: install crx3
run: go install github.com/mediabuyerbot/go-crx3/crx3@latest
- name: install dzip
run: go install github.com/delicb/dzip@latest
- name: install amo-version
run: go install github.com/eyedeekay/amo-version@a4f4119eac453a14d6b6184b656320eb72b5da3c
- name: install manifest-json-version
run: go install github.com/eyedeekay/manifest-json-version@latest
- run: git clone https://github.com/i2p/i2p.i2p ../i2p.i2p
- run: cd ../i2p.i2p && ant builddep
- name: build with Ant
run: |
export PATH=$PATH:$(go env GOPATH)/bin
ant distclean jpackage fedora
find . -name '*.rpm'
- name: Upload i2pbrowser.rpm
uses: actions/upload-artifact@v4
with:
name: i2pbrowser-${{ github.sha }}.x86_64.rpm
path: ./i2pbrowser-1.0.0-1.x86_64.rpm
buildwin:
runs-on: windows-latest
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with: with:
java-version: '21' sparse-checkout: |
distribution: 'temurin' CHANGES.md
- uses: actions/setup-go@v5 sparse-checkout-cone-mode: false
with: - name: sleep 15 minutes
go-version: '1.21'
- name : Generate override.properties
run: | run: |
bash -c 'rm -f override.properties' echo "sleeping 15 minutes to wait for artifacts"
bash -c 'echo "build.built-by=GitHub Actions" >> override.properties' sleep 1m
bash -c 'echo "noExe=true" >> override.properties' echo "sleeping 14 minutes to wait for artifacts"
- name: install crx3 sleep 1m
run: go install github.com/mediabuyerbot/go-crx3/crx3@latest echo "sleeping 13 minutes to wait for artifacts"
- name: install dzip sleep 1m
run: go install github.com/delicb/dzip@latest echo "sleeping 12 minutes to wait for artifacts"
- name: install amo-version sleep 1m
run: go install github.com/eyedeekay/amo-version@a4f4119eac453a14d6b6184b656320eb72b5da3c echo "sleeping 11 minutes to wait for artifacts"
- name: install manifest-json-version sleep 1m
run: go install github.com/eyedeekay/manifest-json-version@latest echo "sleeping 10 minutes to wait for artifacts"
- run: git clone https://github.com/i2p/i2p.i2p ../i2p.i2p sleep 1m
- run: cd ../i2p.i2p && ant builddep echo "sleeping 9 minutes to wait for artifacts"
- name: build exe with Ant sleep 1m
run: | echo "sleeping 8 minutes to wait for artifacts"
ant windows sleep 1m
bash -c 'ls *.exe' echo "sleeping 7 minutes to wait for artifacts"
- name: Upload Firefox Profile EXE Installer sleep 1m
uses: actions/upload-artifact@v4 echo "sleeping 6 minutes to wait for artifacts"
sleep 1m
echo "sleeping 5 minutes to wait for artifacts"
sleep 1m
echo "sleeping 4 minutes to wait for artifacts"
sleep 1m
echo "sleeping 3 minutes to wait for artifacts"
sleep 1m
echo "sleeping 2 minutes to wait for artifacts"
sleep 1m
echo "sleeping 1 minutes to wait for artifacts"
sleep 1m
- name: Download artifacts
id: download-artifact
uses: dawidd6/action-download-artifact@v3
with: with:
name: i2pbrowser-1.0.0-${{ github.sha }}.exe skip_unpack: true
path: ./i2pbrowser-1.0.0.exe workflow: ant.yml
- name: build msi with Ant if_no_artifact_found: fail
run: | - run: echo "" | tee -a CHANGES.md
ant windows-msi - run: echo "## Checksums" | tee -a CHANGES.md
bash -c 'ls *.msi' - run: echo "" | tee -a CHANGES.md
- name: Upload Firefox Profile MSI Installer - run: echo "```" | tee -a CHANGES.md
uses: actions/upload-artifact@v4 - run: sha256sum * | tee -a CHANGES.md
- run: echo "```" | tee -a CHANGES.md
- run: echo "" | tee -a CHANGES.md
- name: Upload artifacts
uses: ncipollo/release-action@v1
with: with:
name: i2pbrowser-1.0.0-${{ github.sha }}.msi artifacts: "*"
path: ./i2pbrowser-1.0.0.msi bodyFile: "CHANGES.md"
- name: build portable zip with Ant
run: |
ant windows-portable
bash -c 'ls *.zip'
- name: Upload Firefox Profile Portable Zip
uses: actions/upload-artifact@v4
with:
name: i2pbrowser-portable-${{ github.sha }}.zip
path: ./i2pbrowser-portable.zip
buildmac:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
- uses: actions/setup-go@v5
with:
go-version: '1.21'
- name : Generate override.properties
run: |
bash -c 'rm -f override.properties'
bash -c 'echo "build.built-by=GitHub Actions" >> override.properties'
bash -c 'echo "noExe=true" >> override.properties'
- name: install crx3
run: go install github.com/mediabuyerbot/go-crx3/crx3@latest
- name: install dzip
run: go install github.com/delicb/dzip@latest
- name: install amo-version
run: go install github.com/eyedeekay/amo-version@a4f4119eac453a14d6b6184b656320eb72b5da3c
- name: install manifest-json-version
run: go install github.com/eyedeekay/manifest-json-version@latest
- run: git clone https://github.com/i2p/i2p.i2p ../i2p.i2p
- run: cd ../i2p.i2p && ant builddep
- name: build dmg with Ant
run: |
ant macos
bash -c 'ls *.dmg'
- name: Upload Firefox Profile DMG Installer
uses: actions/upload-artifact@v4
with:
name: i2pbrowser-1.0.0-${{ github.sha }}.dmg
path: ./i2pbrowser-1.0.0.dmg
- name: build pkg with Ant
run: |
ant macos-pkg
bash -c 'ls *.pkg'
- name: Upload Firefox Profile PKG Installer
uses: actions/upload-artifact@v4
with:
name: i2pbrowser-1.0.0-${{ github.sha }}.pkg
path: ./i2pbrowser-1.0.0.pkg

View File

@ -1,3 +1,3 @@
#Build Number for ANT. Do not edit! #Build Number for ANT. Do not edit!
#Thu Mar 07 12:01:15 EST 2024 #Thu Mar 07 15:18:16 EST 2024
build.number=707 build.number=709

View File

@ -103,10 +103,12 @@ public class I2PBrowserPlugin extends I2PBrowser implements ClientApp {
} }
if (dtg != null) { if (dtg != null) {
_log.info("I2P Browser integrating with I2P tray manager"); _log.info("I2P Browser integrating with I2P tray manager");
lmhs = dtg.addMenu("Launch I2P Browser (Safe Mode)", new Starter(dtg)); lmhs =
dtg.addMenu("Launch I2P Browser (Safe Mode)", new Starter(dtg));
dtg.showMenu(lmhs); dtg.showMenu(lmhs);
dtg.enableMenu(lmhs); dtg.enableMenu(lmhs);
lmhf = dtg.addMenu("Launch I2P Browser (Flexible Mode)", new FlexStarter(dtg)); lmhf = dtg.addMenu("Launch I2P Browser (Flexible Mode)",
new FlexStarter(dtg));
dtg.showMenu(lmhf); dtg.showMenu(lmhf);
dtg.enableMenu(lmhf); dtg.enableMenu(lmhf);
} else { } else {
@ -181,7 +183,7 @@ public class I2PBrowserPlugin extends I2PBrowser implements ClientApp {
public class FlexStarter implements MenuCallback { public class FlexStarter implements MenuCallback {
private final MenuService _ms; private final MenuService _ms;
public Starter(MenuService ms) { _ms = ms; } public FlexStarter(MenuService ms) { _ms = ms; }
public void clicked(MenuHandle menu) { public void clicked(MenuHandle menu) {
// Thread t = new I2PAppThread(new StarterThread(), // Thread t = new I2PAppThread(new StarterThread(),
//"I2PBrowser-Launcher start", true); //"I2PBrowser-Launcher start", true);
@ -199,20 +201,6 @@ public class I2PBrowserPlugin extends I2PBrowser implements ClientApp {
} }
} }
public class StarterThread implements Runnable {
public void run() {
_log.info("I2P Browser starting up");
try {
I2PBrowser i2pBrowser = new I2PBrowser(profileDir.getAbsolutePath());
String[] args = {"http://proxy.i2p"};
i2pBrowser.launchFirefox(0, args);
} catch (Exception e) {
_log.error("Error starting I2P Browser", e);
}
_log.info("I2P Browser ran");
}
}
private synchronized void changeState(ClientAppState state) { private synchronized void changeState(ClientAppState state) {
if (_mgr != null) if (_mgr != null)
_mgr.notify(this, state, null, null); _mgr.notify(this, state, null, null);