From c95b3c31a6e5a38913138032b33ff9046971424a Mon Sep 17 00:00:00 2001 From: Christian Wolf Date: Thu, 13 Jun 2019 11:02:39 +0200 Subject: [PATCH] Preliminary preparations for deployment are set up --- .gitignore | 3 + Makefile | 47 +++++++++++++++ releases/.dummy | 0 releases/clubs-0.0.1.tar.gz | Bin 0 -> 28765 bytes res/postfix.template | 1 + res/prefix.template | 2 + res/update.template | 16 ++++++ scripts/create-release.sh | 23 ++++++++ scripts/create-update-xml.sh | 23 ++++++++ serial/major | 1 + serial/minor | 1 + serial/release | 1 + src/admin/sql/mysql/install.sql | 80 ++++++++++++++++++++++++++ src/admin/sql/mysql/uninstall.sql | 9 +++ src/admin/sql/mysql/updates/0.0.1.sql | 0 src/admin/sql/updates/mysql/0.0.1.sql | 18 ------ src/clubs.xml | 15 ++++- 17 files changed, 219 insertions(+), 21 deletions(-) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 releases/.dummy create mode 100644 releases/clubs-0.0.1.tar.gz create mode 100644 res/postfix.template create mode 100644 res/prefix.template create mode 100644 res/update.template create mode 100755 scripts/create-release.sh create mode 100755 scripts/create-update-xml.sh create mode 100644 serial/major create mode 100644 serial/minor create mode 100644 serial/release create mode 100644 src/admin/sql/mysql/install.sql create mode 100644 src/admin/sql/mysql/uninstall.sql create mode 100644 src/admin/sql/mysql/updates/0.0.1.sql delete mode 100644 src/admin/sql/updates/mysql/0.0.1.sql diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..751b666 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/clubs.tar.gz +/slt-update.xml + diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..327d4c9 --- /dev/null +++ b/Makefile @@ -0,0 +1,47 @@ + +# UPDATE_PATH=/srv/slt-update +PACKAGES = clubs.tar.gz + +export DL_PREFIX=https://slt.wolf-stuttgart.net/update/com_clubs + +RSYNC_OPTIONS=-rltDz --delete --delete-delay --delete-excluded --exclude '.gitignore' --exclude '.dummy' +RSYNC_USER=christian +RSYNC_HOST=hh.wolf-stuttgart.net +DL_PATH=/srv/http/slt/update/com_clubs + +all: package + +package: $(PACKAGES) + +.PHONY: clubs.tar.gz +clubs.tar.gz: + tar czf $@ -C src . + +.PHONY: release +release: clubs.tar.gz + ./scripts/create-release.sh + +.PHONY: release-force +release-force: clubs.tar.gz + ./scripts/create-release.sh -f + +.PHONY: upload +upload: release + $(MAKE) reupload + +.PHONY: slt-update.xml +slt-update.xml: + ./scripts/create-update-xml.sh + +.PHONY: reupload +reupload: slt-update.xml + @echo Pushing files + @rsync $(RSYNC_OPTIONS) releases/ $(RSYNC_USER)@$(RSYNC_HOST):$(DL_PATH)/files -v + + @echo Pushing XML configuration + @rsync $(RSYNC_OPTIONS) slt-update.xml $(RSYNC_USER)@$(RSYNC_HOST):$(DL_PATH) + +# +# .PHONY: update +# update: $(PACKAGES) +# cp slt.xml slt1.tar.gz $(UPDATE_PATH) diff --git a/releases/.dummy b/releases/.dummy new file mode 100644 index 0000000..e69de29 diff --git a/releases/clubs-0.0.1.tar.gz b/releases/clubs-0.0.1.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..7adda59a6bbd79e6b2fa78f27a2291dac05ed807 GIT binary patch literal 28765 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

Rd>ja~B^-g+n= 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 literal 0 HcmV?d00001 diff --git a/res/postfix.template b/res/postfix.template new file mode 100644 index 0000000..769fb5f --- /dev/null +++ b/res/postfix.template @@ -0,0 +1 @@ + diff --git a/res/prefix.template b/res/prefix.template new file mode 100644 index 0000000..ab72107 --- /dev/null +++ b/res/prefix.template @@ -0,0 +1,2 @@ + + diff --git a/res/update.template b/res/update.template new file mode 100644 index 0000000..007f149 --- /dev/null +++ b/res/update.template @@ -0,0 +1,16 @@ + + SLT Vereinsverwaltung + Vereinsportal des saarländischen Tanzsportverbands + com_clubs + component + 0 + __VERSION__ + + __DOWNLOAD_URL__ + + + stable + + Christian Wolf + + diff --git a/scripts/create-release.sh b/scripts/create-release.sh new file mode 100755 index 0000000..122d8a9 --- /dev/null +++ b/scripts/create-release.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +MAJOR=`cat serial/major` +MINOR=`cat serial/minor` +RELEASE=`cat serial/release` +TOTRELEASE="$MAJOR.$MINOR.$RELEASE" + +outname="releases/clubs-$TOTRELEASE.tar.gz" + +mkdir -p releases + +# First check if the named release exists already +if [ -f "$outname" ]; then + if [ "$1" = '-f' ]; then + echo "Overwriting existing file $outname." + else + echo "The file $outname existes already. Either remove the release from the folder manually or increase the release version." + echo "Aborting." + exit 1 + fi +fi + +cp clubs.tar.gz "$outname" diff --git a/scripts/create-update-xml.sh b/scripts/create-update-xml.sh new file mode 100755 index 0000000..42ad43a --- /dev/null +++ b/scripts/create-update-xml.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# DL_PREFIX="https://slt.wolf-stuttgart.net/update/template" + +cat res/prefix.template > slt-update.xml + +find releases -name clubs-\* | while read f +do + + VSTR=`echo "$f" | sed -E 's@releases/clubs-@@; s@^([0-9]+\.[0-9]+\.[0-9]+).*$@\1@'` + + FILE=`echo "$f" | sed 's@releases/@@'` + FORMAT=`echo "$f" | sed -E 's@^.*[0-9]+\.[0-9]+\.[0-9]+\.@@'` + + sed ' + s@__VERSION__@'"$VSTR"'@g; + s@__DOWNLOAD_URL__@'"$DL_PREFIX/files/$FILE"'@g; + s@__FORMAT__@'"$FORMAT"'@g + ' res/update.template >> slt-update.xml + +done + +cat res/postfix.template >> slt-update.xml diff --git a/serial/major b/serial/major new file mode 100644 index 0000000..573541a --- /dev/null +++ b/serial/major @@ -0,0 +1 @@ +0 diff --git a/serial/minor b/serial/minor new file mode 100644 index 0000000..573541a --- /dev/null +++ b/serial/minor @@ -0,0 +1 @@ +0 diff --git a/serial/release b/serial/release new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/serial/release @@ -0,0 +1 @@ +1 diff --git a/src/admin/sql/mysql/install.sql b/src/admin/sql/mysql/install.sql new file mode 100644 index 0000000..c58928a --- /dev/null +++ b/src/admin/sql/mysql/install.sql @@ -0,0 +1,80 @@ + +DROP TABLE IF EXISTS `#__club_clubs`; +CREATE TABLE `#__club_clubs` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + `address` tinytext NOT NULL, + `city` varchar(50) NOT NULL, + `homepage` varchar(100) DEFAULT NULL, + `mail` varchar(100) NOT NULL, + `iban` char(34) NOT NULL, + `bic` char(11) NOT NULL, + `charitable` tinyint(1) NOT NULL, + `president` int(10) NOT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_keys`; +CREATE TABLE `#__club_keys` ( + `privkey` text NOT NULL, + `publickey` text NOT NULL +); + +DROP TABLE IF EXISTS `#__club_offer_assocs`; +CREATE TABLE `#__club_offer_assocs` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `clubid` int(10) NOT NULL, + `offerid` int(10) NOT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_offers`; +CREATE TABLE `#__club_offers` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_places`; +CREATE TABLE `#__club_places` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `clubid` int(10) NOT NULL, + `name` varchar(100) NOT NULL, + `address` tinytext NOT NULL, + `area` int(10) DEFAULT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_positions`; +CREATE TABLE `#__club_positions` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `name` varchar(100) NOT NULL, + PRIMARY KEY (`id`) + +DROP TABLE IF EXISTS `#__club_user_assocs`; +CREATE TABLE `#__club_user_assocs` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `clubid` int(10) NOT NULL, + `userid` int(10) DEFAULT NULL, + `positionid` int(10) NOT NULL, + `admin` tinyint(1) NOT NULL DEFAULT 0, + `state` enum('regular','vacant','temporary') NOT NULL DEFAULT 'vacant', + `address` tinytext DEFAULT NULL, + `mail` varchar(100) DEFAULT NULL, + `phone` varchar(50) DEFAULT NULL, + PRIMARY KEY (`id`) +); + +DROP TABLE IF EXISTS `#__club_users`; +CREATE TABLE `#__club_users` ( + `id` int(10) NOT NULL AUTO_INCREMENT, + `user` varchar(30) NOT NULL, + `password` varchar(150) DEFAULT NULL, + `name` varchar(255) NOT NULL, + `address` tinytext NOT NULL, + `city` varchar(50) NOT NULL, + `mail` varchar(100) NOT NULL, + `phone` varchar(50) DEFAULT NULL, + `mobile` varchar(50) DEFAULT NULL, + PRIMARY KEY (`id`) +); diff --git a/src/admin/sql/mysql/uninstall.sql b/src/admin/sql/mysql/uninstall.sql new file mode 100644 index 0000000..61d1555 --- /dev/null +++ b/src/admin/sql/mysql/uninstall.sql @@ -0,0 +1,9 @@ + +DROP TABLE IF EXISTS `#__club_clubs`; +DROP TABLE IF EXISTS `#__club_keys`; +DROP TABLE IF EXISTS `#__club_offer_assocs`; +DROP TABLE IF EXISTS `#__club_offers`; +DROP TABLE IF EXISTS `#__club_places`; +DROP TABLE IF EXISTS `#__club_positions`; +DROP TABLE IF EXISTS `#__club_user_assocs`; +DROP TABLE IF EXISTS `#__club_users`; diff --git a/src/admin/sql/mysql/updates/0.0.1.sql b/src/admin/sql/mysql/updates/0.0.1.sql new file mode 100644 index 0000000..e69de29 diff --git a/src/admin/sql/updates/mysql/0.0.1.sql b/src/admin/sql/updates/mysql/0.0.1.sql deleted file mode 100644 index fd82b06..0000000 --- a/src/admin/sql/updates/mysql/0.0.1.sql +++ /dev/null @@ -1,18 +0,0 @@ -DROP TABLE IF EXISTS `#__club_keys`; -CREATE TABLE `#__club_keys` ( - `privkey` text NOT NULL, - `publickey` text NOT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - -INSERT INTO `#__club_keys` VALUES ('-----BEGIN PRIVATE KEY-----\nMIIEwAIBADANBgkqhkiG9w0BAQEFAASCBKowggSmAgEAAoIBAQDvZHhLHHqmfnnP\noj5Y7AtS0UvEN8XLzNdHj/0nHBVHrXDMNul8phbCaevuaXcYTZvb9JBTAO019Bnu\nCoj6KFrk0Cw/zcVgVHryguNCr2DeLaxAXyArfkKNZPuG/kTw1mxE6ebeR886JVU0\nfQpIi3zDGAHpXxaKO7EttnvQK8NRd4h5O5EI6dCnmMn/8xY/d5G7AsZKuAxq01ZB\nmmUrkRKrQtBTwUeJWhtfT+XjOa1n1FVIwmqz4O2sqbfm0pa6PX0BNT0CUp0RI1wN\nGmF6bh/WkQ8h3jmTamzZ2cQUwDnL7ByAJqexJrrPacRbE6EotCGODjuBXDSy02PJ\nZk0fThZpAgMBAAECggEBANJaU0WU8cUo73pekzBpwY11MYFqjJiHF0ffo0/hYmWI\nZsxbGBGak/cjQdhNvgOR9nlxTfxRnR7CrqI3iaNfIHdc4PTzqBL8SMid8HohRxoT\nwf8SV19AY9SAvnAhL4z8rUhky6PYL6RlN5iWoxmZz/hSOSPKlTDEQOztI6CJQ+hp\nUFEiOLq/TSWB1DYEu6qAQRyI5wcC1QMo+zB/zBwIuM3DsB2f6Xtj86kXzU/bGeDj\nNLbsCuhRbFyMgvcJ3z6KQTvREZOGkeF22HA+ZVH7bWf00PqCEjq2I/XFHZGK61X4\nWLgNOUmVZSmGv2Kd9UJaC8VffkBnrV3XFN1n97gcP4ECgYEA/Joaw3VrbWpKsquf\nMiTuMJVyvcV9fmVhWhPNuioCwWwBx2mjGz/texd/67KNWPr7r1IGCIBnYfs3Dy+k\nOo+lAWT7oaec24dH4vjiljWrvFvZXmkpTa6j8RSqhhIVTUFSnXBkvxkEzcnUMbxK\n6A4gdggSfcMpeo3DmjGqNWTXlbkCgYEA8pzgD2VFEYq4/fgDhxKeoWSt1UPJtPxT\n4iYPXWKGdWLsEKg36oYiRXSTdan5aRwiZUXpDoFJU8vVCfmdVb2qpwPp66LwYFax\nAYuA3aPTi9npT4nDOBygVGSTY0TsxmL5asndyxl99OdoskLmS3N2UzeWMy7prRTt\nWZL7uWnU3jECgYEA+8EHLYkIcXs/SYV823gtIKTCP9rlsSSPezxDjOgz6NyhhUKG\nejEjmcuZBarl7ynt0BU6yBxZbTD39h2wW2EwvgwMMlggIDda8R7GjZieOdN89/ht\nXuvQnwTO02KQcnfJQ/pxnnfr7sHZx1v3eAIkXh67dzYcT/WcXkBjeGWx65kCgYEA\n0WU8rY0GU+GbUPfic45Kg5nVvx/G1AKEk8etszf6PQ6oGKhXun8SzUeUjhWqQmIZ\n/badM/u6QizHLtjWRs5wn73tA4eaWEv6cg7ppmJjj20AxbltWNy8NJqp6x/uDDwY\ncWbRmx3hbKLd5h1/jteU5LYxWPPAk7ZgNNN7l8gUBcECgYEAzVVKQ5dn58iHkH1i\nB3UUnTrqPD/cn7WigcWn7A6vpxqbGARkAyIXV/xqLoD8pX1G7JhqFKArC+UJzUuC\n6hgL1Hq+OJXTaN2NzcvQaIvLzsOWQebFtNfFxi0tzAE0t2/JfuFxeam0WZunaNgg\nAabygognDdEZW9HBvCydJ5N8e+s=\n-----END PRIVATE KEY-----\n','-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA72R4Sxx6pn55z6I+WOwL\nUtFLxDfFy8zXR4/9JxwVR61wzDbpfKYWwmnr7ml3GE2b2/SQUwDtNfQZ7gqI+iha\n5NAsP83FYFR68oLjQq9g3i2sQF8gK35CjWT7hv5E8NZsROnm3kfPOiVVNH0KSIt8\nwxgB6V8WijuxLbZ70CvDUXeIeTuRCOnQp5jJ//MWP3eRuwLGSrgMatNWQZplK5ES\nq0LQU8FHiVobX0/l4zmtZ9RVSMJqs+DtrKm35tKWuj19ATU9AlKdESNcDRphem4f\n1pEPId45k2ps2dnEFMA5y+wcgCansSa6z2nEWxOhKLQhjg47gVw0stNjyWZNH04W\naQIDAQAB\n-----END PUBLIC KEY-----\n'); - - -DROP TABLE IF EXISTS `#__club_users`; -CREATE TABLE `#__club_users` ( - `id` int(10) NOT NULL AUTO_INCREMENT, - `user` varchar(30) NOT NULL, - `password` varchar(150) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8; - -INSERT INTO `#__club_users` VALUES (1,'chris','$2y$10$2/aeOfLlLwFx7JYXpaAOH.CG0ZtvkzTuK6nojvSIuOYlTbSd07CqC'); diff --git a/src/clubs.xml b/src/clubs.xml index 518fc17..84217ba 100644 --- a/src/clubs.xml +++ b/src/clubs.xml @@ -5,7 +5,7 @@ type="component"> - Vereinsmanagement + SLT Vereinsmanagement Vereinsportal des saarländischen Tanzsportverbands @@ -46,11 +46,20 @@

Vereinsmanagement + Vereine + Personen + Posten + Trainingsangebote + abstract + common + controllers + res + sql + views clubs.php controller.php - sql @@ -66,7 +75,7 @@ - sql/updates/mysql + sql/mysql/updates