add gitea action
Some checks failed
Deploy minis-data-old / build (push) Failing after 15s

This commit is contained in:
walamana 2024-08-07 17:37:00 +02:00
parent a9d6dfe5c5
commit 1beae94045
22 changed files with 179776 additions and 254 deletions

1
.dockerignore Normal file
View File

@ -0,0 +1 @@
node_modules

View File

@ -0,0 +1,20 @@
name: "Deploy minis-data-old"
on:
push:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@3
# - name: Login to Gitea Container Registry
# run: echo $CR_PAT | docker login git.walamana.de -u $GITEA_USERNAME --password-stdin
- name: Build Docker image
run: docker build -t minis-data-old .

14
Dockerfile Normal file
View File

@ -0,0 +1,14 @@
FROM node:10-alpine
RUN mkdir -p /home/node/app/node_modules && chown -R node:node /home/node/app
WORKDIR /home/node/app
COPY package*.json ./
USER node
RUN npm install
COPY --chown=node:node . .
EXPOSE 8383
CMD ["node", "app.js"]

1
app.js
View File

@ -48,6 +48,7 @@ con.connect(err => {
if (err) {
console.log("Cant connect to MySQL database");
console.log(err);
console.log(config.database)
cause = err;
}
console.log("Connected to database!");

43
docker-compose.yaml Normal file
View File

@ -0,0 +1,43 @@
name: minis-data-old
networks:
minis-data-old: {}
services:
db:
image: mariadb:latest
restart: always
container_name: mariadb
environment:
MARIADB_USER: minis
MARIADB_PASSWORD: minis
MARIADB_DATABASE: minis
MARIADB_RANDOM_ROOT_PASSWORD: 1
networks:
- minis-data-old
volumes:
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
ports:
- "3306:3306"
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
start_period: 10s
interval: 10s
timeout: 5s
retries: 3
app:
image: minis-data-old
restart: always
ports:
- "8383:8383"
networks:
- minis-data-old
depends_on:
db:
condition: service_healthy
restart: true
environment:
DB_HOST: mariadb
DB_USER: minis
DB_PASSWORD: minis
DB_DATABASE: minis

102
init.sql Normal file
View File

@ -0,0 +1,102 @@
-- MySQL dump 10.19 Distrib 10.3.39-MariaDB, for debian-linux-gnu (x86_64)
--
-- Host: localhost Database: minis
-- ------------------------------------------------------
-- Server version 10.3.39-MariaDB-0+deb10u1
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Table structure for table `anwesenheit`
--
DROP TABLE IF EXISTS `anwesenheit`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `anwesenheit` (
`USERNAME` varchar(100) NOT NULL,
`gottesdienst_ID` int(11) NOT NULL,
`ANWESENHEIT` int(11) NOT NULL,
UNIQUE KEY `unique_entry` (`USERNAME`,`gottesdienst_ID`),
KEY `USERNAME` (`USERNAME`),
KEY `gottesdienst_ID` (`gottesdienst_ID`) USING BTREE,
CONSTRAINT `anwesenheit_ibfk_3` FOREIGN KEY (`USERNAME`) REFERENCES `ministranten` (`USERNAME`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `anwesenheit_ibfk_4` FOREIGN KEY (`gottesdienst_ID`) REFERENCES `gottesdienst` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `gottesdienst`
--
DROP TABLE IF EXISTS `gottesdienst`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `gottesdienst` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`NAME` varchar(200) DEFAULT NULL,
`DATUM` datetime NOT NULL,
`ANWESENHEIT` time NOT NULL,
`PROBE` datetime DEFAULT NULL,
`ORT` varchar(500) DEFAULT NULL,
`gruppe_ID` int(11) NOT NULL,
`FESTGESETZT` tinyint(1) NOT NULL DEFAULT 0,
PRIMARY KEY (`ID`),
KEY `gruppe_ID` (`gruppe_ID`),
CONSTRAINT `gottesdienst_ibfk_1` FOREIGN KEY (`gruppe_ID`) REFERENCES `gruppe` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=670 DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `gruppe`
--
DROP TABLE IF EXISTS `gruppe`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `gruppe` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`START` date NOT NULL,
`END` date NOT NULL,
PRIMARY KEY (`ID`),
KEY `ID` (`ID`)
) ENGINE=InnoDB AUTO_INCREMENT=81 DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `ministranten`
--
DROP TABLE IF EXISTS `ministranten`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `ministranten` (
`USERNAME` varchar(100) NOT NULL,
`VORNAME` varchar(100) NOT NULL,
`NACHNAME` varchar(100) NOT NULL,
`PASSWORT` varchar(100) NOT NULL,
`EMAIL` varchar(200) DEFAULT NULL,
`USER_TOKEN` varchar(200) NOT NULL,
PRIMARY KEY (`USERNAME`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2024-08-07 11:43:48

694
package-lock.json generated

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
public/favicon.ico Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

16
public/index.html Executable file
View File

@ -0,0 +1,16 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Miniportal</title>
<base href="/beta/">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta charset="utf-8">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<link href="https://fonts.googleapis.com/css?family=Roboto:400,700" rel="stylesheet">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
</head>
<body>
<mini-root></mini-root>
<script type="text/javascript" src="https://minis.walamana.de/beta/runtime.js"></script><script type="text/javascript" src="https://minis.walamana.de/beta/polyfills.js"></script><script type="text/javascript" src="https://minis.walamana.de/beta/styles.js"></script><script type="text/javascript" src="https://minis.walamana.de/beta/vendor.js"></script><script type="text/javascript" src="https://minis.walamana.de/beta/main.js"></script></body>
</html>

1674
public/main.js Executable file

File diff suppressed because one or more lines are too long

1
public/main.js.map Executable file

File diff suppressed because one or more lines are too long

10748
public/polyfills.js Executable file

File diff suppressed because it is too large Load Diff

1
public/polyfills.js.map Executable file

File diff suppressed because one or more lines are too long

154
public/runtime.js Executable file
View File

@ -0,0 +1,154 @@
/******/ (function(modules) { // webpackBootstrap
/******/ // install a JSONP callback for chunk loading
/******/ function webpackJsonpCallback(data) {
/******/ var chunkIds = data[0];
/******/ var moreModules = data[1];
/******/ var executeModules = data[2];
/******/
/******/ // add "moreModules" to the modules object,
/******/ // then flag all "chunkIds" as loaded and fire callback
/******/ var moduleId, chunkId, i = 0, resolves = [];
/******/ for(;i < chunkIds.length; i++) {
/******/ chunkId = chunkIds[i];
/******/ if(installedChunks[chunkId]) {
/******/ resolves.push(installedChunks[chunkId][0]);
/******/ }
/******/ installedChunks[chunkId] = 0;
/******/ }
/******/ for(moduleId in moreModules) {
/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
/******/ modules[moduleId] = moreModules[moduleId];
/******/ }
/******/ }
/******/ if(parentJsonpFunction) parentJsonpFunction(data);
/******/
/******/ while(resolves.length) {
/******/ resolves.shift()();
/******/ }
/******/
/******/ // add entry modules from loaded chunk to deferred list
/******/ deferredModules.push.apply(deferredModules, executeModules || []);
/******/
/******/ // run deferred modules when all chunks ready
/******/ return checkDeferredModules();
/******/ };
/******/ function checkDeferredModules() {
/******/ var result;
/******/ for(var i = 0; i < deferredModules.length; i++) {
/******/ var deferredModule = deferredModules[i];
/******/ var fulfilled = true;
/******/ for(var j = 1; j < deferredModule.length; j++) {
/******/ var depId = deferredModule[j];
/******/ if(installedChunks[depId] !== 0) fulfilled = false;
/******/ }
/******/ if(fulfilled) {
/******/ deferredModules.splice(i--, 1);
/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
/******/ }
/******/ }
/******/ return result;
/******/ }
/******/
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // object to store loaded and loading chunks
/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ // Promise = chunk loading, 0 = chunk loaded
/******/ var installedChunks = {
/******/ "runtime": 0
/******/ };
/******/
/******/ var deferredModules = [];
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "https://minis.walamana.de/beta/";
/******/
/******/ var jsonpArray = window["webpackJsonp"] = window["webpackJsonp"] || [];
/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
/******/ jsonpArray.push = webpackJsonpCallback;
/******/ jsonpArray = jsonpArray.slice();
/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
/******/ var parentJsonpFunction = oldJsonpFunction;
/******/
/******/
/******/ // run deferred modules from other chunks
/******/ checkDeferredModules();
/******/ })
/************************************************************************/
/******/ ([]);
//# sourceMappingURL=runtime.js.map

1
public/runtime.js.map Executable file

File diff suppressed because one or more lines are too long

566
public/styles.js Executable file

File diff suppressed because one or more lines are too long

1
public/styles.js.map Executable file

File diff suppressed because one or more lines are too long

165992
public/vendor.js Executable file

File diff suppressed because one or more lines are too long

1
public/vendor.js.map Executable file

File diff suppressed because one or more lines are too long