diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 088246b..afb4f2e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,44 +30,9 @@ jobs: distribution: 'temurin' - name: Setup Gradle uses: gradle/gradle-build-action@v2 - - name: Set Gradle executable - run: chmod +x gradlew - - name: Compile Task-Tracker-Entities - run: | - cd Task-Tracker-Entities && - ln -s ../gradle && - ln -s ../gradlew && - ./gradlew check && - ./gradlew publishToMavenLocal - - name: Compile Task-Tracker-Entities-Impl - run: | - cd Task-Tracker-Entities-Impl && - ln -s ../gradle && - ln -s ../gradlew && - ./gradlew check && - ./gradlew publishToMavenLocal - - name: Compile Task-Tracker-Usecases - run: | - cd Task-Tracker-Usecases && - ln -s ../gradle && - ln -s ../gradlew && - ./gradlew check && - ./gradlew publishToMavenLocal - - name: Compile Task-Tracker-Usecases-SQLite-Impl - run: | - cd Task-Tracker-Usecases-SQLite-Impl && - ln -s ../gradle && - ln -s ../gradlew && - ./gradlew check && - ./gradlew publishToMavenLocal - - name: Compile Task-Tracker-Usecases-CLI - run: | - cd Task-Tracker-CLI && - ln -s ../gradle && - ln -s ../gradlew && - ./gradlew check && - ./gradlew assembleDist + - name: Build with Gradle + run: ./build.sh - uses: actions/upload-artifact@v3 with: name: distribution - path: ./Task-Tracker-CLI/build/distributions/*.zip \ No newline at end of file + path: ./Task-Tracker-CLI/build/distributions/*.zip diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4340656 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,3 @@ +FROM gradle:8-jdk17 +WORKDIR /dev/mnt +CMD ["./build.sh"] \ No newline at end of file diff --git a/README.md b/README.md index c72f067..2db541b 100644 --- a/README.md +++ b/README.md @@ -1 +1,18 @@ # Task-Tracker-App + +The app is designed to work with the [Task-Tracker-Device](https://github.com/Task-Tracker-Systems/Task-Tracker-Device). + +## Build + +### Local +Run the gradle build in each directory or use the `build.sh` file. + +### Docker +Shell +```Powershell +docker build -t task-tracker-systems/task-tracker-app:1 . +docker run --rm -v ${PWD}:/dev/mnt task-tracker-systems/task-tracker-app:1 +``` + +### Github +Latest build is available through [Github Actions](https://github.com/Task-Tracker-Systems/Task-Tracker-App/actions) \ No newline at end of file diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..168ddb6 --- /dev/null +++ b/build.sh @@ -0,0 +1,50 @@ +#!/bin/sh +cd Task-Tracker-Entities +if [ ! -d "gradle" ]; then + ln -s ../gradle +fi +if [ ! -e "gradlew" ]; then + ln -s ../gradlew +fi +./gradlew check +./gradlew publishToMavenLocal + +cd ../Task-Tracker-Entities-Impl +if [ ! -d "gradle" ]; then + ln -s ../gradle +fi +if [ ! -e "gradlew" ]; then + ln -s ../gradlew +fi +./gradlew check +./gradlew publishToMavenLocal + +cd ../Task-Tracker-Usecases +if [ ! -d "gradle" ]; then + ln -s ../gradle +fi +if [ ! -e "gradlew" ]; then + ln -s ../gradlew +fi +./gradlew check +./gradlew publishToMavenLocal + +cd ../Task-Tracker-Usecases-SQLite-Impl +if [ ! -d "gradle" ]; then + ln -s ../gradle +fi +if [ ! -e "gradlew" ]; then + ln -s ../gradlew +fi +./gradlew check +./gradlew publishToMavenLocal + +cd ../Task-Tracker-CLI +if [ ! -d "gradle" ]; then + ln -s ../gradle +fi +if [ ! -e "gradlew" ]; then + ln -s ../gradlew +fi +./gradlew check +./gradlew assembleDist diff --git a/gradlew b/gradlew old mode 100644 new mode 100755