Preliminary preparations for deployment are set up

This commit is contained in:
Christian Wolf 2019-06-13 11:02:39 +02:00
parent 28494f6142
commit c95b3c31a6
17 changed files with 219 additions and 21 deletions

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
/clubs.tar.gz
/slt-update.xml

47
Makefile Normal file
View File

@ -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)

0
releases/.dummy Normal file
View File

BIN
releases/clubs-0.0.1.tar.gz Normal file

Binary file not shown.

1
res/postfix.template Normal file
View File

@ -0,0 +1 @@
</updates>

2
res/prefix.template Normal file
View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<updates>

16
res/update.template Normal file
View File

@ -0,0 +1,16 @@
<update>
<name>SLT Vereinsverwaltung</name>
<description>Vereinsportal des saarländischen Tanzsportverbands</description>
<element>com_clubs</element>
<type>component</type>
<client>0</client>
<version>__VERSION__</version>
<downloads>
<downloadurl type="full" format="__FORMAT__">__DOWNLOAD_URL__</downloadurl>
</downloads>
<tags>
<tag>stable</tag>
</tags>
<maintainer>Christian Wolf</maintainer>
<targetplatform name="joomla" version=".*"/>
</update>

23
scripts/create-release.sh Executable file
View File

@ -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"

23
scripts/create-update-xml.sh Executable file
View File

@ -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

1
serial/major Normal file
View File

@ -0,0 +1 @@
0

1
serial/minor Normal file
View File

@ -0,0 +1 @@
0

1
serial/release Normal file
View File

@ -0,0 +1 @@
1

View File

@ -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`)
);

View File

@ -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`;

View File

View File

@ -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');

View File

@ -5,7 +5,7 @@
type="component"> type="component">
<!-- SOLLTE, Der Annzeige-Name in Joomla --> <!-- SOLLTE, Der Annzeige-Name in Joomla -->
<name>Vereinsmanagement</name> <name>SLT Vereinsmanagement</name>
<title>Vereinsportal des saarländischen Tanzsportverbands</title> <title>Vereinsportal des saarländischen Tanzsportverbands</title>
<!--SOLLTE Erstellungsdatum --> <!--SOLLTE Erstellungsdatum -->
@ -46,11 +46,20 @@
<menu>Vereinsmanagement</menu> <menu>Vereinsmanagement</menu>
<submenu> <submenu>
<!-- <menu link='link' view='v'>Test</menu> --> <!-- <menu link='link' view='v'>Test</menu> -->
<menu link='index.php?option=com_clubs&view=clubs'>Vereine</menu>
<menu link='index.php?option=com_clubs&view=users'>Personen</menu>
<menu link='index.php?option=com_clubs&view=positions'>Posten</menu>
<menu link='index.php?option=com_clubs&view=offers'>Trainingsangebote</menu>
</submenu> </submenu>
<files from='admin'> <files from='admin'>
<folder>abstract</folder>
<folder>common</folder>
<folder>controllers</folder>
<folder>res</folder>
<folder>sql</folder>
<folder>views</folder>
<filename>clubs.php</filename> <filename>clubs.php</filename>
<filename>controller.php</filename> <filename>controller.php</filename>
<folder>sql</folder>
</files> </files>
</administration> </administration>
@ -66,7 +75,7 @@
</uninstall> </uninstall>
<update> <update>
<schemas> <schemas>
<schemapath type='mysql'>sql/updates/mysql</schemapath> <schemapath type='mysql'>sql/mysql/updates</schemapath>
</schemas> </schemas>
</update> </update>