Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: anthonyraymond/joal
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 1.0.3
Choose a base ref
...
head repository: anthonyraymond/joal
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Loading
Showing 390 changed files with 20,030 additions and 2,470 deletions.
14 changes: 14 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
.git
.github
.idea
.mvn
readme-assets
resources
scripts
target
.gitignore
Dockerfile
LICENSE
publish.sh
README.md
THANKS.md
124 changes: 124 additions & 0 deletions .github/workflows/test-deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
name: Test & deploy

on:
push:
branches: [ master ]
tags:
- '**'
pull_request:
branches: [ master ]
workflow_dispatch:

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2

- name: Set up JDK 11
uses: actions/setup-java@v2
with:
java-version: '11'
distribution: 'adopt'

- name: Cache
uses: actions/cache@v2.1.6
with:
path: /home/runner/.m2/repository
key: ${{ runner.os }}-${{ hashFiles('pom.xml') }}

- name: Build with Maven
run: mvn -B test --file pom.xml

github-release:
needs: test
if: startsWith(github.ref, 'refs/tags/') # run this step only when tagged
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2

- name: Set up JDK 11
uses: actions/setup-java@v2
with:
java-version: '11'
distribution: 'adopt'

- name: Cache
uses: actions/cache@v2.1.6
with:
path: /home/runner/.m2/repository
key: ${{ runner.os }}-${{ hashFiles('pom.xml') }}

- name: Build with Maven
run: mvn -B package --file pom.xml -DskipTests=true

- name: Create release archive
run: |
mkdir packager-tmp && cp -r resources/* ./packager-tmp && cp target/*.jar ./packager-tmp
cd ./packager-tmp && tar -czvf joal.tar.gz * && mv ./joal.tar.gz ../ && cd ..
- name: Create Github release
uses: ncipollo/release-action@v1.8.6
with:
allowUpdates: true
artifactErrorsFailBuild: true
artifacts: "joal.tar.gz"
draft: true
token: ${{ secrets.GITHUB_TOKEN }}

docker:
needs: test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Prepare
id: prep
run: |
DOCKER_IMAGE=${{ secrets.DOCKER_USERNAME }}/${GITHUB_REPOSITORY#*/}
VERSION=latest
SHORTREF=${GITHUB_SHA::8}
# If this is git tag, use the tag name as a docker tag
if [[ $GITHUB_REF == refs/tags/* ]]; then
VERSION=${GITHUB_REF#refs/tags/}
else
VERSION=${SHORTREF}
fi
TAGS="${DOCKER_IMAGE}:${VERSION}"
# If the VERSION looks like a version number, assume that
# this is the most recent version of the image and also
# tag it 'latest'.
if [[ $VERSION =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
TAGS="$TAGS,${DOCKER_IMAGE}:latest"
fi
# Set output parameters.
echo ::set-output name=tags::${TAGS}
echo ::set-output name=docker_image::${DOCKER_IMAGE}
- name: Set up QEMU
uses: docker/setup-qemu-action@master
with:
platforms: all

- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@master

- name: Login to DockerHub
if: ${{ github.event_name != 'pull_request' && startsWith(github.ref, 'refs/tags/') }}
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Build
uses: docker/build-push-action@v2
with:
builder: ${{ steps.buildx.outputs.name }}
context: .
file: ./Dockerfile
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: ${{ startsWith(github.ref, 'refs/tags/') }}
tags: ${{ steps.prep.outputs.tags }}
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -2,7 +2,9 @@ target/
!.mvn/wrapper/maven-wrapper.jar
dependency-reduced-pom.xml
jack-of-all-trades.iml
t411-log.txt
resources/torrents/*.torrent
deploy.sh
scripts/bittorrent-client-update-detector/tempSource/**

### STS ###
.apt_generated
1 change: 1 addition & 0 deletions .mvn/wrapper/maven-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.5.0/apache-maven-3.5.0-bin.zip
28 changes: 28 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Builder image with jdk
FROM maven:3.8.3-eclipse-temurin-11 AS build

WORKDIR /build

COPY . /build/

RUN mvn -B --quiet package -DskipTests=true \
&& mkdir /artifact \
&& mv /build/target/jack-of-all-trades-*.jar /artifact/joal.jar


# Actual joal image with jre only
FROM eclipse-temurin:11.0.13_8-jre

LABEL name="joal"
LABEL maintainer="joal.contact@gmail.com"
LABEL url="https://github.com/anthonyraymond/joal"
LABEL vcs-url="https://github.com/anthonyraymond/joal"

WORKDIR /joal/

COPY --from=build /artifact/joal.jar /joal/joal.jar

VOLUME /data

ENTRYPOINT ["java", "-jar", "/joal/joal.jar"]
CMD ["--joal-conf=/data"]
22 changes: 0 additions & 22 deletions Dockerfile.arm

This file was deleted.

Binary file added JOAL.psd
Binary file not shown.
Loading