Compare commits

...

64 Commits

Author SHA1 Message Date
Tobi 32aa6bd378 🔒 kein SSL direkt in der Anwendung verwenden 7 years ago
Tobi b94e0a3de7
🎉 EVABackend .NET Core Projekt initialisiert 7 years ago
Levin Faber b79e566d18 Merge branch 'f/gitlab-ci-pipelines-einrichten' into 'develop' 7 years ago
Levin Faber 02a5e125a2 Update .gitlab-ci.yml 7 years ago
Levin Faber ad6a2404d7 Update .gitlab-ci.yml 7 years ago
Levin Faber 233aa04817 Update .gitlab-ci.yml 7 years ago
Levin Faber 6e63b48163 Update .gitlab-ci.yml 7 years ago
Levin Faber 0b14603366 Update .gitlab-ci.yml 7 years ago
Levin Faber cd887b4fb6 Update .gitlab-ci.yml 7 years ago
Levin Faber 7d439075b6 Update .gitlab-ci.yml 7 years ago
Levin Faber 895a6376b7 Update .gitlab-ci.yml 7 years ago
Levin Faber cd5d32af4d Update .gitlab-ci.yml 7 years ago
Levin Faber 743e32885b Update .gitlab-ci.yml 7 years ago
Levin Faber e6aa36948f Update .gitlab-ci.yml 7 years ago
Levin Faber 786af31d9f
🚚 File permissions 7 years ago
Levin Faber 0eeaeb077d Update .gitlab-ci.yml, Docker/config/restart-host.sh files 7 years ago
Levin Faber b515e5a7a7 Update .gitlab-ci.yml 7 years ago
Levin Faber 93fd8d871e Update .gitlab-ci.yml, Docker/Dockerfile_FE_Host files 7 years ago
Levin Faber 1fde640178 Update .gitlab-ci.yml 7 years ago
Levin Faber f985a69de9 Update .gitlab-ci.yml 7 years ago
Levin Faber ba0ed4a900 Update .gitlab-ci.yml 7 years ago
Levin Faber 4d3422b39d Update .gitlab-ci.yml 7 years ago
Levin Faber 4ccc812f35 Update .gitlab-ci.yml 7 years ago
Levin Faber 3509439dfb Update .gitlab-ci.yml 7 years ago
Levin Faber 6fa231ac3c Update .gitlab-ci.yml 7 years ago
Levin Faber a6f323c8eb Update .gitlab-ci.yml 7 years ago
Levin Faber 479a4d2d81 Update .gitlab-ci.yml 7 years ago
Levin Faber 92bb8351dc Update .gitlab-ci.yml 7 years ago
Levin Faber ac1c31beb7 Update .gitlab-ci.yml 7 years ago
Levin Faber f777c10353 Update .gitlab-ci.yml 7 years ago
Levin Faber abcd2e95fd Update .gitlab-ci.yml 7 years ago
Levin Faber 3e34d3cf1a Update .gitlab-ci.yml 7 years ago
Levin Faber d0a85eb60c Update .gitlab-ci.yml 7 years ago
Levin Faber 2625465071 Update .gitlab-ci.yml 7 years ago
Levin Faber ff38e43576 Update .gitlab-ci.yml 7 years ago
Levin Faber bc4629ea67 Update .gitlab-ci.yml 7 years ago
Levin Faber ff4d67bfe1 Update .gitlab-ci.yml 7 years ago
Levin Faber 849140bd54 Update .gitlab-ci.yml 7 years ago
Levin Faber 1535bb0e21 Update .gitlab-ci.yml 7 years ago
Levin Faber 95ea0e935a Update .gitlab-ci.yml 7 years ago
Levin Faber 30929c60f7 Update .gitlab-ci.yml 7 years ago
Levin Faber f0014a083d 👷 Add new file 7 years ago
Levin Faber 23fb24972e Merge branch 'develop' into 'f/gitlab-ci-pipelines-einrichten' 7 years ago
Levin Faber 819eda375b Merge branch 'f/docker-fe' into 'develop' 7 years ago
Levin Faber e878d571ea
🐳 Added Dockerfile for Build 7 years ago
Levin Faber 63acad363a Merge branch 'f/1-frontend-react-initialisieren' into 'develop' 7 years ago
u14461 3d70291fa9 🎉 React App initialisiert 7 years ago
Levin Faber 6c3fc58051 📝 Update README.md 7 years ago
Levin Faber 49f8e987f7 📝 Update README.md 7 years ago
Tobi e9a84f69a4 Merge branch 'f/docker-fe' into 'develop' 7 years ago
Levin Faber 9f7ba498f5
🐳 Added Dockerfiles, FE Placeholder 7 years ago
Levin Faber 80f04bad40 📝 Update README.md 7 years ago
Levin Faber a60f4338ab 📝 Update README.md 7 years ago
Levin Faber bfe064c04a
Merge branch 'develop' of gitlab.com:fia72-dev/eva_lernsituation into develop 7 years ago
Levin Faber 64666e06eb
🚚 Moved Dokuments, added Frontend and Backend Folder 7 years ago
Tobi 7c66efedae
📝 Vorlage Protokoll angepasst 7 years ago
Tobi 99c0ad580f 📝 Rollenverteilung angepasst 7 years ago
Tobi bdb63ed920 📝 Namen der Teilnehmer korrigiert 7 years ago
Levin Faber 661be5e9b5
📝 Protocol and Roles 7 years ago
Levin Faber e06404fc30
📝 Protokoll Template 7 years ago
Levin Faber b54b4bf845
🚚 Added Folder 7 years ago
Levin Faber b59b103236
📝 Updated Folder structure 7 years ago
Levin Faber 3faa816ab5
📝 Updated Folder structure 7 years ago
Levin Faber 8422cd200f Update README.md 7 years ago
  1. 58
      .gitlab-ci.yml
  2. 0
      Backend/.gitkeep
  3. 9
      Backend/EVABackend/.dockerignore
  4. 348
      Backend/EVABackend/.gitignore
  5. 25
      Backend/EVABackend/EVABackend.sln
  6. 45
      Backend/EVABackend/EVABackend/Controllers/ValuesController.cs
  7. 20
      Backend/EVABackend/EVABackend/Dockerfile
  8. 20
      Backend/EVABackend/EVABackend/EVABackend.csproj
  9. 24
      Backend/EVABackend/EVABackend/Program.cs
  10. 27
      Backend/EVABackend/EVABackend/Properties/launchSettings.json
  11. 47
      Backend/EVABackend/EVABackend/Startup.cs
  12. 9
      Backend/EVABackend/EVABackend/appsettings.Development.json
  13. 8
      Backend/EVABackend/EVABackend/appsettings.json
  14. 15
      Docker/Dockerfile_FE_Builder
  15. 5
      Docker/Dockerfile_FE_Host
  16. 14
      Docker/config/nginx.conf
  17. 7
      Docker/config/restart-host.sh
  18. 23
      Frontend/.gitignore
  19. 0
      Frontend/.gitkeep
  20. 5
      Frontend/README.md
  21. 12
      Frontend/dist/index.html
  22. 12667
      Frontend/package-lock.json
  23. 31
      Frontend/package.json
  24. BIN
      Frontend/public/favicon.ico
  25. 15
      Frontend/public/index.html
  26. 15
      Frontend/public/manifest.json
  27. 10
      Frontend/src/components/App.js
  28. 6
      Frontend/src/index.js
  29. 14
      Frontend/src/style/index.css
  30. 32
      README.md
  31. 0
      _Dokumente/Ausgangsmaterial/LS _MS_Ausgangslage.docx
  32. 0
      _Dokumente/Ausgangsmaterial/LS_MS_Aktivitaeten_und_Dokumente.pdf
  33. 0
      _Dokumente/Ausgangsmaterial/LS_MS_Ausgangslage.pdf
  34. 0
      _Dokumente/Ausgangsmaterial/LS_MS_Beispiel_Lastenheft.pdf
  35. 0
      _Dokumente/Ausgangsmaterial/LS_MS_Laufzettel_v2.pdf
  36. 0
      _Dokumente/Ausgangsmaterial/LS_MS_Material_Kundengespräch_01.docx
  37. 0
      _Dokumente/Ausgangsmaterial/LS_MS_Material_Kundengespräch_01.pdf
  38. 0
      _Dokumente/Ausgangsmaterial/LS_MS_PaperPrototyping.pdf
  39. 0
      _Dokumente/Ausgangsmaterial/LS_MS_Pflichtenheft.pdf
  40. 0
      _Dokumente/Ausgangsmaterial/LS_MS__Beispiel_Pflichtenheft.pdf
  41. 0
      _Dokumente/Ausgangsmaterial/P01_Lernsituation_MS_1.0_FIA7x.ppt
  42. 0
      _Dokumente/Ausgangsmaterial/Pflichtenheftvorlage.doc
  43. 0
      _Dokumente/Ausgangsmaterial/Pflichtenheftvorlage.pdf
  44. 0
      _Dokumente/Ausgangsmaterial/Projektmanagement Kompendium.pdf
  45. 11
      _Dokumente/Ausgearbeitete Dokumente/Rollenverteilung.md
  46. 0
      _Dokumente/Protokolle/.gitkeep
  47. 21
      _Dokumente/Protokolle/2019-05-08_Protokoll.md
  48. 12
      _Dokumente/Protokolle/Protokoll_Template.md

58
.gitlab-ci.yml

@ -0,0 +1,58 @@
stages:
- build
build_frontend:
stage: build
tags:
- docker
image: registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build
before_script:
- eval $(ssh-agent -s)
- ssh-add <(echo "${DEPLOY_ENV_KEY}")
- mkdir -p ~/.ssh
- '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
- cp -r Frontend/src/ /workdir/src/
- cp -r Frontend/public/ /workdir/public/
script:
- pwd
- ls -la
- cd /workdir
- npm run build
- ls -la /workdir/build
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "mkdir -p /home/$DEPLOY_ENV_USER/serve"
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "rm -rf /home/$DEPLOY_ENV_USER/serve/*"
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "mkdir -p /home/$DEPLOY_ENV_USER/serve/$CI_COMMIT_REF_NAME"
- rsync --progress -av -e ssh /workdir/build/* $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET:/home/$DEPLOY_ENV_USER/serve/
build_docker_host:
stage: build
tags:
- docker-builder
before_script:
- eval $(ssh-agent -s)
- ssh-add <(echo "${DEPLOY_ENV_KEY}")
- mkdir -p ~/.ssh
- echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
- docker info
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
script:
- docker build -f Docker/Dockerfile_FE_Host -t registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve .
- docker push registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve
- ls -la Docker/config/restart-host.sh
- rsync --progress -av -e ssh Docker/config/restart-host.sh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET:/home/$DEPLOY_ENV_USER/restart-host.sh
- ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "./restart-host.sh"
when: manual
build_docker_builder:
stage: build
tags:
- docker-builder
before_script:
- docker info
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
script:
- docker build -f Docker/Dockerfile_FE_Builder -t registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build .
- docker push registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build
when: manual

0
Backend/.gitkeep

9
Backend/EVABackend/.dockerignore

@ -0,0 +1,9 @@
.dockerignore
.env
.git
.gitignore
.vs
.vscode
*/bin
*/obj
**/.toolstarget

348
Backend/EVABackend/.gitignore vendored

@ -0,0 +1,348 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
# User-specific files
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Mono auto generated files
mono_crash.*
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/
# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# Visual Studio 2017 auto generated files
Generated\ Files/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUNIT
*.VisualState.xml
TestResult.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# Benchmark Results
BenchmarkDotNet.Artifacts/
# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
# StyleCop
StyleCopReport.xml
# Files built by Visual Studio
*_i.c
*_p.c
*_h.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*_wpftmp.csproj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# Visual Studio Trace Files
*.e2e
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# JustCode is a .NET coding add-in
.JustCode
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json
# Visual Studio code coverage results
*.coverage
*.coveragexml
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/
# NuGet Packages
*.nupkg
# NuGet Symbol Packages
*.snupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx
*.appxbundle
*.appxupload
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!?*.[Cc]ache/
# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs
# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk
# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak
# SQL Server files
*.mdf
*.ldf
*.ndf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser
*- [Bb]ackup.rdl
*- [Bb]ackup ([0-9]).rdl
*- [Bb]ackup ([0-9][0-9]).rdl
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# Paket dependency manager
.paket/paket.exe
paket-files/
# FAKE - F# Make
.fake/
# CodeRush personal settings
.cr/personal
# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc
# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config
# Tabs Studio
*.tss
# Telerik's JustMock configuration file
*.jmconfig
# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs
# OpenCover UI analysis results
OpenCover/
# Azure Stream Analytics local run output
ASALocalRun/
# MSBuild Binary and Structured Log
*.binlog
# NVidia Nsight GPU debugger configuration file
*.nvuser
# MFractors (Xamarin productivity tool) working folder
.mfractor/
# Local History for Visual Studio
.localhistory/
# BeatPulse healthcheck temp database
healthchecksdb
# Backup folder for Package Reference Convert tool in Visual Studio 2017
MigrationBackup/

25
Backend/EVABackend/EVABackend.sln

@ -0,0 +1,25 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.28803.156
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EVABackend", "EVABackend\EVABackend.csproj", "{35629A48-394C-4EE6-B853-1B92641B9FED}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{35629A48-394C-4EE6-B853-1B92641B9FED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{35629A48-394C-4EE6-B853-1B92641B9FED}.Debug|Any CPU.Build.0 = Debug|Any CPU
{35629A48-394C-4EE6-B853-1B92641B9FED}.Release|Any CPU.ActiveCfg = Release|Any CPU
{35629A48-394C-4EE6-B853-1B92641B9FED}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {9D649B10-EA35-49B9-BCB5-A989D21D6832}
EndGlobalSection
EndGlobal

45
Backend/EVABackend/EVABackend/Controllers/ValuesController.cs

@ -0,0 +1,45 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
namespace EVABackend.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class ValuesController : ControllerBase
{
// GET api/values
[HttpGet]
public ActionResult<IEnumerable<string>> Get()
{
return new string[] { "value1", "value2" };
}
// GET api/values/5
[HttpGet("{id}")]
public ActionResult<string> Get(int id)
{
return "value";
}
// POST api/values
[HttpPost]
public void Post([FromBody] string value)
{
}
// PUT api/values/5
[HttpPut("{id}")]
public void Put(int id, [FromBody] string value)
{
}
// DELETE api/values/5
[HttpDelete("{id}")]
public void Delete(int id)
{
}
}
}

20
Backend/EVABackend/EVABackend/Dockerfile

@ -0,0 +1,20 @@
FROM mcr.microsoft.com/dotnet/core/aspnet:2.1-stretch-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/core/sdk:2.1-stretch AS build
WORKDIR /src
COPY ["EVABackend/EVABackend.csproj", "EVABackend/"]
RUN dotnet restore "EVABackend/EVABackend.csproj"
COPY . .
WORKDIR "/src/EVABackend"
RUN dotnet build "EVABackend.csproj" -c Release -o /app
FROM build AS publish
RUN dotnet publish "EVABackend.csproj" -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "EVABackend.dll"]

20
Backend/EVABackend/EVABackend/EVABackend.csproj

@ -0,0 +1,20 @@
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp2.1</TargetFramework>
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
<UserSecretsId>81a3ba40-5295-4382-9a09-5339b5d22d08</UserSecretsId>
</PropertyGroup>
<ItemGroup>
<Folder Include="wwwroot\" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.1.8" />
<PackageReference Include="Microsoft.VisualStudio.Azure.Containers.Tools.Targets" Version="1.7.8" />
</ItemGroup>
</Project>

24
Backend/EVABackend/EVABackend/Program.cs

@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Logging;
namespace EVABackend
{
public class Program
{
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>();
}
}

27
Backend/EVABackend/EVABackend/Properties/launchSettings.json

@ -0,0 +1,27 @@
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:50570",
"sslPort": 0
}
},
"$schema": "http://json.schemastore.org/launchsettings.json",
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "api/values",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"Docker": {
"commandName": "Docker",
"launchBrowser": true,
"launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/api/values",
"httpPort": 50571
}
}
}

47
Backend/EVABackend/EVABackend/Startup.cs

@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpsPolicy;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
namespace EVABackend
{
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseMvc();
}
}
}

9
Backend/EVABackend/EVABackend/appsettings.Development.json

@ -0,0 +1,9 @@
{
"Logging": {
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
}
}

8
Backend/EVABackend/EVABackend/appsettings.json

@ -0,0 +1,8 @@
{
"Logging": {
"LogLevel": {
"Default": "Warning"
}
},
"AllowedHosts": "*"
}

15
Docker/Dockerfile_FE_Builder

@ -0,0 +1,15 @@
# Tag: frontend-build
FROM node:10.8-stretch
RUN apt update
RUN apt install -y rsync
RUN mkdir -p /workdir
COPY Frontend/package.json /workdir/package.json
COPY Frontend/package-lock.json /workdir/package-lock.json
WORKDIR /workdir
RUN pwd && ls -la
run npm install

5
Docker/Dockerfile_FE_Host

@ -0,0 +1,5 @@
# Tag: frontend-serve
FROM nginx
COPY Docker/config/nginx.conf /etc/nginx/nginx.conf

14
Docker/config/nginx.conf

@ -0,0 +1,14 @@
events {
worker_connections 1024;
}
http {
server {
listen 80;
root /usr/share/nginx/html;
location / {
autoindex on;
}
}
}

7
Docker/config/restart-host.sh

@ -0,0 +1,7 @@
#! /bin/bash
docker login -u gitlab+deploy-token-66068 -p vD23SzzitUn8y8xGknKz registry.gitlab.com
docker stop eva_frontend_serve
docker rm eva_frontend_serve
docker rmi registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve
docker run -d -p 8083:80 -v /home/gitlab/serve:/usr/share/nginx/html:ro --name "eva_frontend_serve" registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve

23
Frontend/.gitignore vendored

@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*

0
Frontend/.gitkeep

5
Frontend/README.md

@ -0,0 +1,5 @@
# React App für die EVA_Lernsituatuin
# Pakages
- Material UI

12
Frontend/dist/index.html vendored

@ -0,0 +1,12 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Temporäre Seite</title>
</head>
<body>
Hallo bitte geh weg.
</body>
</html>

12667
Frontend/package-lock.json generated

File diff suppressed because it is too large Load Diff

31
Frontend/package.json

@ -0,0 +1,31 @@
{
"name": "temp",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^16.8.6",
"react-dom": "^16.8.6",
"react-scripts": "3.0.0"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}

BIN
Frontend/public/favicon.ico

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

15
Frontend/public/index.html

@ -0,0 +1,15 @@
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8" />
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<title>Lernsituation</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
</body>
</html>

15
Frontend/public/manifest.json

@ -0,0 +1,15 @@
{
"short_name": "Lernsituation",
"name": "EVA_Lernsituation",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

10
Frontend/src/components/App.js

@ -0,0 +1,10 @@
import React, { Component } from "react";
class App extends Component {
state = {};
render() {
return <></>;
}
}
export default App;

6
Frontend/src/index.js

@ -0,0 +1,6 @@
import React from "react";
import ReactDOM from "react-dom";
import "./style/index.css";
import App from "./components/App";
ReactDOM.render(<App />, document.getElementById("root"));

14
Frontend/src/style/index.css

@ -0,0 +1,14 @@
body {
margin: 0;
padding: 0;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen",
"Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue",
sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
code {
font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New",
monospace;
}

32
README.md

@ -4,11 +4,39 @@
* Levin Faber
* Alexej Komnik
* Tobias Schifffarth
* Tobias Schiffarth
* Kai Senkowski
## Organisation
* ALLE Dokumente werden im [Gitlab](https://gitlab.com/fia72-dev/eva_lernsituation) abgelegt
* Alle Dokumente werden im [Gitlab](https://gitlab.com/fia72-dev/eva_lernsituation) abgelegt
* Kommunikation erfolgt über [Slack](https://dullidivision.slack.com)
* Es wird nach dem Wasserfallmodell entwickelt
## Kommunikationsplan
* Alle Dokumente werden im [Gitlab](https://gitlab.com/fia72-dev/eva_lernsituation) abgelegt
* Kommunikation erfolgt über [Slack](https://dullidivision.slack.com) oder mündlich in Meetings (es werden Protokolle erstellt)
* Das Arbeiten erfolgt in der Schule und bei Bedarf nach Absprache Remote
* Es wird pro Arbeitstag ein Meeting gehalten, in welchem der aktuelle Status besprochen wird ("Jour fixe")
* Alle offiziellen Kommuniktionen werden von einem am Anfang des Meetings bestimmten Mitarbeiter dokumentiert _(Ordner /Dokumente/Protokolle. Hier liegt eine Vorlage)_
* Die Einhaltung der Kommunikationsrichtlinien wird vom Teamleiter überwacht
## Konzepte
### Infrastruktur
* Alles wird in Dockercontainern deployed
* Server können von Tobi und Levin bereitgestellt werden
* Auf beiden ist eine Docker Installation vorhanden
* Das gebaute FE wird von einem NGINX geserved (registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve)
* // Todo backend @Tobi
### Deployment
* Deployed wird über GitLab Pipelines

0
Dokumente_LS_Musikschule/LS _MS_Ausgangslage.docx → _Dokumente/Ausgangsmaterial/LS _MS_Ausgangslage.docx

0
Dokumente_LS_Musikschule/LS_MS_Aktivitaeten_und_Dokumente.pdf → _Dokumente/Ausgangsmaterial/LS_MS_Aktivitaeten_und_Dokumente.pdf

0
Dokumente_LS_Musikschule/LS_MS_Ausgangslage.pdf → _Dokumente/Ausgangsmaterial/LS_MS_Ausgangslage.pdf

0
Dokumente_LS_Musikschule/LS_MS_Beispiel_Lastenheft.pdf → _Dokumente/Ausgangsmaterial/LS_MS_Beispiel_Lastenheft.pdf

0
Dokumente_LS_Musikschule/LS_MS_Laufzettel_v2.pdf → _Dokumente/Ausgangsmaterial/LS_MS_Laufzettel_v2.pdf

0
Dokumente_LS_Musikschule/LS_MS_Material_Kundengespräch_01.docx → _Dokumente/Ausgangsmaterial/LS_MS_Material_Kundengespräch_01.docx

0
Dokumente_LS_Musikschule/LS_MS_Material_Kundengespräch_01.pdf → _Dokumente/Ausgangsmaterial/LS_MS_Material_Kundengespräch_01.pdf

0
Dokumente_LS_Musikschule/LS_MS_PaperPrototyping.pdf → _Dokumente/Ausgangsmaterial/LS_MS_PaperPrototyping.pdf

0
Dokumente_LS_Musikschule/LS_MS_Pflichtenheft.pdf → _Dokumente/Ausgangsmaterial/LS_MS_Pflichtenheft.pdf

0
Dokumente_LS_Musikschule/LS_MS__Beispiel_Pflichtenheft.pdf → _Dokumente/Ausgangsmaterial/LS_MS__Beispiel_Pflichtenheft.pdf

0
Dokumente_LS_Musikschule/P01_Lernsituation_MS_1.0_FIA7x.ppt → _Dokumente/Ausgangsmaterial/P01_Lernsituation_MS_1.0_FIA7x.ppt

0
Dokumente_LS_Musikschule/Pflichtenheftvorlage.doc → _Dokumente/Ausgangsmaterial/Pflichtenheftvorlage.doc

0
Dokumente_LS_Musikschule/Pflichtenheftvorlage.pdf → _Dokumente/Ausgangsmaterial/Pflichtenheftvorlage.pdf

0
Dokumente_LS_Musikschule/Projektmanagement Kompendium.pdf → _Dokumente/Ausgangsmaterial/Projektmanagement Kompendium.pdf

11
_Dokumente/Ausgearbeitete Dokumente/Rollenverteilung.md

@ -0,0 +1,11 @@
# Rollenverteilung
* Teamleitung ( Levin, Alexej )
* Aufgbenverteilung
* Kommuniktion Organisieren (intern und mit Kunden)
* Probleme lösen (intern und extern)
* Übernimmt Controlling Aufgaben
* Prozessbeobachtung ( Tobi )
* Diverse Geschehen beobachten und chronologisch dokumentieren
* Entwickler ( alle )
* Entwicklung

0
_Dokumente/Protokolle/.gitkeep

21
_Dokumente/Protokolle/2019-05-08_Protokoll.md

@ -0,0 +1,21 @@
# 2019-05-08 Protokoll
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_
## Agenda
* Rollenverteilung
* Kommunikationsplan besprechen
* Was ist unser erstes Todo
* Brainstroming
* Fragenkatalog erstellen
## Ergebnisse
* Im Vorlauf wurde ein Projektportfolio auf GitLab eingerichtet
* Ein Rollenplan wurde erstellt
* Der KP wurde besprochen
* Erstes ToDo ist: MindMap erstellen
*
## Actios
[-] Punkt 1

12
_Dokumente/Protokolle/Protokoll_Template.md

@ -0,0 +1,12 @@
# 2019-xx-xx Protokoll
_Teilnehmer: Levin Faber, Alexej Komnik, Tobias Schiffarth, Kai Senkowski_
## Agenda
* Punkt 1
## Ergebnisse
* Punkt 1
## Aufgaben
[-] Punkt 1
Loading…
Cancel
Save