Merge branch 'main' into dev

This commit is contained in:
2022-06-05 12:26:49 +02:00
12 changed files with 235 additions and 99 deletions

View File

@@ -1,14 +1,14 @@
# This is a basic workflow to help you get started with Actions
name: CI
name: Sync to bitbucket
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ main, dev ]
branches: [ main ]
pull_request:
branches: [ main, dev ]
branches: [ main ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
@@ -22,6 +22,7 @@ jobs:
env:
UPSTREAM: ssh://git@bitbucket.ase.in.tum.de:7999/EIST22T02/eist22t02-whattocool48.git
BITBUCKET_PUB_KEY: "[bitbucket.ase.in.tum.de]:7999,[131.159.89.140]:7999 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCO2i69e5LJibEDwVrwG9edX+xqeRB/Do+C8dNclgB5lFJjA5MlTFAZ4WewbLBeGXGAc5O64ckBlI82+FI1GwIkiKRoi/9qe+NGLmZFsjBRSz2fHLfKo/iEa8ytPP9E4iql1u7Rl+pnmY2claJ+ABQOt4XQgLWjYcIBHWpwhQ9tRjg73zUI/n/PKyEnODR14bEzJ/fBmTMgnm1ZdtSPViqLmByXgjgorCWPsRA3DrPsH3A9ncietUPj/qRbsWsPhiKK1yXXaKDHDgRD7ennVrwCAYG2hhTZEbZcjE8bbe9UY9WrRtoWLFKB/xDTn7pRv+ZxqXlcoP224we7J9s2ke1H"
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
@@ -40,8 +41,17 @@ jobs:
- name: Copy ssh public_key
run: echo "${{SECRETS.PUBLIC_KEY}}" > ~/.ssh/id_rsa.pub
- name: Pull upstream
- name: Add bitbucket to known SSH-HOST
run: echo ${{env.BITBUCKET_PUB_KEY}} >> ~/.ssh/known_hosts
- name: Pull origin
run: git fetch --unshallow
- name: Specify Identity in case of rebasing
run: git config --global user.email "organisation-name@github.com" && git config --global user.name "GitHub Action Runner"
- name: Fix merge conflicts if any
run: git pull --rebase upstream main
- name: Git push to other repo
run: git push upstream

31
.github/workflows/run-tests.yml vendored Normal file
View File

@@ -0,0 +1,31 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
name: Run Tests
on:
pull_request:
branches: [ "dev", "main" ]
jobs:
gradle:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
cache: 'gradle'
- name: Setup and execute Gradle 'test' task
uses: gradle/gradle-build-action@v2
with:
arguments: test

90
.gitignore vendored
View File

@@ -1,6 +1,92 @@
assignment/src/
assignment/resources/
.idea/
*.class
.idea
bin
build
/target/
/target/*
*.jar
*.war
*.ear
.gradle/
#################
# Eclipse .gitignore
# Source: https://github.com/github/gitignore/blob/master/Global/Eclipse.gitignore
.metadata
bin/
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.settings/
.loadpath
.recommenders
# Eclipse Core
.project
# External tool builders
.externalToolBuilders/
# Locally stored "Eclipse launch configurations"
*.launch
# PyDev specific (Python IDE for Eclipse)
*.pydevproject
# CDT-specific (C/C++ Development Tooling)
.cproject
# JDT-specific (Eclipse Java Development Tools)
.classpath
# Java annotation processor (APT)
.factorypath
# PDT-specific (PHP Development Tools)
.buildpath
# sbteclipse plugin
.target
# Tern plugin
.tern-project
# TeXlipse plugin
.texlipse
# STS (Spring Tool Suite)
.springBeans
# Code Recommenders
.recommenders/
#################
# Netbeans .gitignore
# Source: https://github.com/github/gitignore/blob/master/Global/NetBeans.gitignore
nbproject/private/
build/
nbbuild/
dist/
nbdist/
.nb-gradle/
#################
# IntelliJ .gitignore
# Source: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839-How-to-manage-projects-under-Version-Control-Systems
.idea
*.iws
*.iml
out
################
# Gradle
.gradle
!gradle/wrapper/gradle-wrapper.jar

View File

@@ -1,7 +1,13 @@
# EIST-Projekt 2022
#### main branch:
![main synced to bitbucket](https://github.com/cato447/EIST-Teamprojekt/actions/workflows/bitbucket-sync.yml/badge.svg)
![Main branch tests](https://github.com/cato447/EIST-Teamprojekt/actions/workflows/run-tests.yml/badge.svg)
#### dev branch:
![Dev branch tests](https://github.com/cato447/EIST-Teamprojekt/actions/workflows/run-tests.yml/badge.svg?branch=dev)
## whattocook
What to cook ist eine Webapp, die dem Nutzer die tägliche Frage: "Was koche ich heute?" abnehmen soll.
This webapp shows you meals you can cook from the ingredients you have at hand
Dazu werden aus den Zutaten im Kühlschrank des Nutzers Rezepte generiert, die dieser sofort nachmachen kann.
Zur Zeit ist der Nutzer noch selbst dafür verantwortlich alles im Kühlschrank selber ein und auszutragen. In späteren Versionen soll dem Nutzer hier die Arbeit abgenommen werden, sodass er sich voll und ganz auf seine Ziele konzentrieren kann.
> This repo uses an [action](https://github.com/babyygemperor) written by babyygemperor to sync the main branch to bitbucket

BIN
diagrams/ClassDiagram.PNG Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View File

@@ -0,0 +1 @@
{"id":"c09249cb-f5ff-4158-869d-595d7193bf90","title":"UseCaseDiagram","lastUpdate":"2022-06-04T07:15:04.008Z","diagramType":"UseCaseDiagram","model":{"version":"2.0.0","type":"UseCaseDiagram","size":{"width":1420,"height":900},"interactive":{"elements":[],"relationships":[]},"elements":[{"id":"265207df-b024-4537-b05d-ae2bcd4304f6","name":"User","type":"UseCaseActor","owner":null,"bounds":{"x":0,"y":300,"width":90,"height":140}},{"id":"c1660237-4f72-49a5-8e28-39a882e19e32","name":"WhatToCook","type":"UseCaseSystem","owner":null,"bounds":{"x":160,"y":0,"width":1110,"height":660}},{"id":"82b06ee8-645b-4015-8323-bdcbfba06e00","name":"Delete Item","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":850,"y":510,"width":200,"height":100}},{"id":"7dcb2094-7dbe-4ac8-b10f-e61eaab62b78","name":"View Items","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":510,"y":510,"width":200,"height":100}},{"id":"6933e639-051a-44e7-bc17-b4d805902ff6","name":"Create Item","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":500,"y":320,"width":200,"height":100}},{"id":"a9d47cd9-cfd2-41d3-a6e7-78e8c4d658a5","name":"Start Application","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":190,"y":320,"width":200,"height":100}},{"id":"799c4d99-4ec1-4c78-90bb-ecf13980a951","name":"Save Item","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":840,"y":320,"width":200,"height":100}},{"id":"2539166f-f9b6-4379-9a37-89d22e520960","name":"Search for a Item","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":510,"y":100,"width":200,"height":100}},{"id":"99a890ec-f7cc-4beb-bc41-282a030b10a0","name":"Search by Name","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":830,"y":30,"width":200,"height":100}},{"id":"cb48fa09-4858-4580-84c7-58001f8d8a4f","name":"Search by Id","type":"UseCase","owner":"c1660237-4f72-49a5-8e28-39a882e19e32","bounds":{"x":830,"y":150,"width":200,"height":100}}],"relationships":[{"id":"7b5e8013-c2cf-4ecc-967f-9ce713894f9d","name":"","type":"UseCaseAssociation","owner":null,"bounds":{"x":90,"y":370,"width":100,"height":1},"path":[{"x":0,"y":0},{"x":100,"y":0}],"source":{"direction":"Right","element":"265207df-b024-4537-b05d-ae2bcd4304f6"},"target":{"direction":"Left","element":"a9d47cd9-cfd2-41d3-a6e7-78e8c4d658a5"}},{"id":"e860f1ac-1a42-4134-86b3-dd6f24a3953d","name":"","type":"UseCaseInclude","owner":null,"bounds":{"x":390,"y":370,"width":120,"height":190},"path":[{"x":0,"y":0},{"x":120,"y":190}],"source":{"direction":"Right","element":"a9d47cd9-cfd2-41d3-a6e7-78e8c4d658a5"},"target":{"direction":"Left","element":"7dcb2094-7dbe-4ac8-b10f-e61eaab62b78"}},{"id":"9300498a-9640-4b81-82af-3ca472b15bd9","name":"","type":"UseCaseInclude","owner":null,"bounds":{"x":710,"y":560,"width":140,"height":1},"path":[{"x":0,"y":0},{"x":140,"y":0}],"source":{"direction":"Right","element":"7dcb2094-7dbe-4ac8-b10f-e61eaab62b78"},"target":{"direction":"Left","element":"82b06ee8-645b-4015-8323-bdcbfba06e00"}},{"id":"85a89157-45e6-4071-89a0-c2ce601eaebe","name":"","type":"UseCaseInclude","owner":null,"bounds":{"x":390,"y":370,"width":110,"height":1},"path":[{"x":0,"y":0},{"x":110,"y":0}],"source":{"direction":"Right","element":"a9d47cd9-cfd2-41d3-a6e7-78e8c4d658a5"},"target":{"direction":"Left","element":"6933e639-051a-44e7-bc17-b4d805902ff6"}},{"id":"231ecf23-f685-4607-a9af-d9bb46b6cb7e","name":"","type":"UseCaseInclude","owner":null,"bounds":{"x":700,"y":370,"width":140,"height":1},"path":[{"x":0,"y":0},{"x":140,"y":0}],"source":{"direction":"Right","element":"6933e639-051a-44e7-bc17-b4d805902ff6"},"target":{"direction":"Left","element":"799c4d99-4ec1-4c78-90bb-ecf13980a951"}},{"id":"f369d212-ecb9-4d18-9c11-91b403432b10","name":"","type":"UseCaseInclude","owner":null,"bounds":{"x":390,"y":150,"width":120,"height":220},"path":[{"x":0,"y":220},{"x":120,"y":0}],"source":{"direction":"Right","element":"a9d47cd9-cfd2-41d3-a6e7-78e8c4d658a5"},"target":{"direction":"Left","element":"2539166f-f9b6-4379-9a37-89d22e520960"}},{"id":"d7605707-4ce0-4628-b409-c27642753313","name":"","type":"UseCaseInclude","owner":null,"bounds":{"x":710,"y":80,"width":120,"height":70},"path":[{"x":0,"y":70},{"x":120,"y":0}],"source":{"direction":"Right","element":"2539166f-f9b6-4379-9a37-89d22e520960"},"target":{"direction":"Left","element":"99a890ec-f7cc-4beb-bc41-282a030b10a0"}},{"id":"aa1ae48c-e650-457c-8713-287c352e7acd","name":"","type":"UseCaseInclude","owner":null,"bounds":{"x":710,"y":150,"width":120,"height":50},"path":[{"x":0,"y":0},{"x":120,"y":50}],"source":{"direction":"Right","element":"2539166f-f9b6-4379-9a37-89d22e520960"},"target":{"direction":"Left","element":"cb48fa09-4858-4580-84c7-58001f8d8a4f"}}],"assessments":[]}}

BIN
diagrams/UseCaseDiagram.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

178
gradlew.bat vendored
View File

@@ -1,89 +1,89 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega