33 Commits

Author SHA1 Message Date
1a301100b7 hotfix-2.0.2 2018-05-13 00:36:05 +02:00
b3894fedc9 hotfix-2.0.2 2018-05-13 00:33:39 +02:00
d2f7a45d6c hotfix-2.0.2 2018-05-13 00:30:53 +02:00
cdd40d5195 Merge branch 'feature-check-update' into develop 2018-05-13 00:05:14 +02:00
a2517232a1 add feature check_update 2018-05-13 00:05:02 +02:00
66372fadcc add update check 2018-05-13 00:02:09 +02:00
263587222e spelling 2018-05-12 23:44:00 +02:00
57b2383ef3 spelling 2018-05-12 23:12:17 +02:00
c9116e1cfd Merge branch 'release-2.0.0' 2018-05-12 23:06:43 +02:00
3a3083cda8 Merge branch 'release-2.0.0' into develop
release-2.0.0
2018-05-12 23:06:09 +02:00
ab4622e37a release-2.0.0 2018-05-12 23:05:54 +02:00
baa3dcf419 merge dev 2018-05-12 22:58:51 +02:00
1134235acd clean 2018-05-12 22:56:13 +02:00
727cf6ed3c Merge branch 'feature-debian-packages' into develop
lintian improvements
2018-05-12 22:41:08 +02:00
d63d13fe80 del dummy func 2018-05-12 22:40:41 +02:00
b0ce2cfa16 lintian improvements 2018-05-12 22:37:35 +02:00
cee0bd03ca Merge branch 'feature-debian-packages' into develop
add feauture build-deb
2018-05-12 20:20:08 +02:00
8885e4881f autogen beautysh 2018-05-12 20:19:38 +02:00
7aadb795ff autogen irreführende namen geändert 2018-05-12 20:19:12 +02:00
80d2ad753d debian init 2018-05-12 19:54:34 +02:00
e5edbb3f8d Merge branch 'fix-standalone_executable' into develop
fix-standalone_executable
2018-05-11 00:04:43 +02:00
2513b645c1 standalone executable 2018-05-11 00:04:02 +02:00
401abf1f4b Merge branch 'hotfix-1.9.3' into develop
hotfix-1.9.3
2018-05-10 22:47:55 +02:00
fcf59dc1d9 spelling 2018-05-10 18:28:49 +02:00
aa57178d15 spelling 2018-05-10 13:41:01 +02:00
01a0709563 add Docu 2018-05-10 12:26:22 +02:00
50ddcac6f6 Update License 2018-05-07 02:44:22 +02:00
c28eaa1a38 Merge pull request #17 from 6543/changes-on-server
2018-04-05
2018-04-27 12:07:02 +02:00
ab55ed8b3d 2018-04-05 2018-04-27 12:04:05 +02:00
365cb8a069 Merge pull request #14 from 6543/clean
del unfinished things
2018-04-26 18:28:03 +02:00
9d907e9028 del unfinished things 2018-04-26 18:26:28 +02:00
5a86bb3237 Merge pull request #13 from 6543/clean
clean repo
2018-04-26 18:25:09 +02:00
3321ce059a done 2018-04-26 18:23:42 +02:00
33 changed files with 208 additions and 113 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
/build /build
/release

1
DEBIAN/conffiles Normal file
View File

@ -0,0 +1 @@
/etc/remaster/config.sample.cfg

12
DEBIAN/control Normal file
View File

@ -0,0 +1,12 @@
Package: remaster
Source: remaster
Version: 2.0.2
Architecture: all
Maintainer: 6543 <6543@obermui.de>
Installed-Size: <SIZE>
Depends: squashfs-tools, xorriso, wget, sed (>= 4.2), sendemail, bash (>= 4.3)
Suggests: nfs-kernel-server, isc-dhcp-server
Section: utils
Priority: optional
Homepage: https://github.com/6543/remaster
Description: The aim of this Project is to create a daemon for a server, witch update live systems.

1
DEBIAN/postinst Executable file
View File

@ -0,0 +1 @@
#!/bin/sh

1
DEBIAN/postrm Executable file
View File

@ -0,0 +1 @@
#!/bin/sh

1
DEBIAN/preinst Executable file
View File

@ -0,0 +1 @@
#!/bin/sh

1
DEBIAN/prerm Executable file
View File

@ -0,0 +1 @@
#!/bin/sh

View File

@ -1,77 +1,131 @@
#!/bin/bash #!/bin/bash
# at the moment only generate dir structure in /build # install | clean | debug | build-deb
#make ...
function clean() { function clean() {
echo "clear build" echo "clear build"
[ -d build ] && rm -v -R build [ -d build ] && rm -v -R build
mkdir build mkdir build
} }
function build() { function copy() {
echo "build ..." echo "copy files ..."
## skripte copieren ## # remaster
# remaster mkdir -p build/usr/bin/
mkdir -p build/usr/bin/ cp -v src/remaster.sh build/usr/bin/remaster
cp -v src/remaster.sh build/usr/bin/remaster chmod +x build/usr/bin/remaster
chmod +x build/usr/bin/remaster
# modules # modules
mkdir -p build/usr/lib/remaster/ mkdir -p build/usr/lib/remaster/
for i in proj func mods; do for i in proj func mods; do
mkdir -p build/usr/lib/remaster/$i mkdir -p build/usr/lib/remaster/$i
cp -v src/$i/* build/usr/lib/remaster/$i/ cp -v src/$i/* build/usr/lib/remaster/$i/
done done
# setting # setting
mkdir -p build/etc/remaster/ mkdir -p build/etc/remaster/
cp -v src/config.sample.cfg build/etc/remaster/config.sample.cfg cp -v src/config.sample.cfg build/etc/remaster/config.sample.cfg
#changelog
mkdir -p build/usr/share/doc/remaster
cp -v changes/remaster.md build/usr/share/doc/remaster/changelog
gzip --best build/usr/share/doc/remaster/changelog
} }
#config ... #config ...
function set_rootdir() { function set_rootdir() {
sed -i "s#<ROOTDIR>#$1#g" build/usr/bin/remaster sed -i "s#<ROOTDIR>#$1#g" build/usr/bin/remaster
for i in proj func mods; do for i in proj func mods; do
sed -i "s#<ROOTDIR>#$1#g" build/usr/lib/remaster/$i/* sed -i "s#<ROOTDIR>#$1#g" build/usr/lib/remaster/$i/*
done done
} }
function set_libdir() { function set_libdir() {
sed -i "s#<LIBDIR>#$1#g" build/usr/bin/remaster sed -i "s#<LIBDIR>#$1#g" build/usr/bin/remaster
for i in proj func mods; do for i in proj func mods; do
sed -i "s#<LIBDIR>#$1#g" build/usr/lib/remaster/$i/* sed -i "s#<LIBDIR>#$1#g" build/usr/lib/remaster/$i/*
done done
} }
#modes #modes
function debug() { function debug() {
clean clean
build
set_rootdir "`pwd`/build" #prebuild
set_libdir "`pwd`/build/usr/lib/remaster" copy
set_rootdir "`pwd`/build"
set_libdir "`pwd`/build/usr/lib/remaster"
} }
function install() { function install() {
clean #überprüfe auf root
build [ "`id -u`" != "0" ] && { echo "Error start as root"; exit 1; }
set_rootdir ""
set_libdir "/usr/lib/remaster" #lösche alltes build dir
#cp -f -r build/* / clean
#prebuild
copy
set_rootdir ""
set_libdir "/usr/lib/remaster"
#set owner
chown -r root:root build/
#install
cp -f -r build/* /
}
function build-deb() {
#überprüfe auf root
[ "`id -u`" != "0" ] && { echo "Error start as root"; exit 1; }
#lösche alltes build dir
clean
#prebuild
copy
set_rootdir ""
set_libdir "/usr/lib/remaster"
####
## changes for deb file
####
cp -v -r -f DEBIAN build/
#create md5sums
find ./build -type f -exec md5sum {} \; | grep -v './build/DEBIAN' | sed 's/\.\/build\///g' > build/DEBIAN/md5sums
chmod 0644 build/DEBIAN/md5sums
#set size
SIZE="`du --exclude=build/DEBIAN -c build/ | cut -f 1 | tail -n 1`"
sed -i "s/<SIZE>/$SIZE/g" build/DEBIAN/control
#set owner
chown -r root:root build/
##
#build deb
##
dpkg -b build/
version="`cat build/DEBIAN/control | grep Version | cut -d " " -f 2`"
arch="`cat build/DEBIAN/control | grep Arch | cut -d " " -f 2`"
[ -f "release/remaster_"$version"_"$arch".deb" ] && rm "release/remaster_"$version"_"$arch".deb"
mkdir -p release
mv -v "build.deb" "release/remaster_"$version"_"$arch".deb"
} }
case "$1" in case "$1" in
install) install)
install || exit 1 install || exit 1
;; ;;
clean) clean)
clean || exit 1 clean || exit 1
;; ;;
debug) debug)
debug || exit 1 debug || exit 1
;; ;;
build) copy)
build || exit 1 copy || exit 1
;; ;;
*) build-deb)
echo "Usage: install | clean | debug | build" build-deb || exit 1
exit 1 ;;
*)
echo "Usage: install | clean | debug | build-deb"
exit 1
esac esac

View File

@ -6,3 +6,15 @@
2018-05-10 - 1.9.3 2018-05-10 - 1.9.3
* hotfix-1.9.3 * hotfix-1.9.3
2018-05-12 - 2.0.0
* add feature build debian packages
* add Doc "Server Bedienung"
* split functions
* separate config into /etc/remaster/
2018-05-13 - 2.0.1
* Update-Prüfmechanismus #15
2018-05-13 - 2.0.2
* hotfix-2.0.2 ( create release folder if not exist )

View File

@ -3,3 +3,9 @@
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; } [ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
#beginn func #beginn func
#this func is standalone executable
[ -n "$1" ] && {
check_user
}

View File

@ -18,5 +18,9 @@ date=`date +%Y-%m-%d`
echo >> changes/remaster.md echo >> changes/remaster.md
echo $date - $version >> changes/remaster.md echo $date - $version >> changes/remaster.md
echo pleace update changes/remaster.md editor changes/remaster.md
}
[ -f "DEBIAN/control" ] && {
sed -i "s/Version:\ .\..\../Version:\ $version_sed/g" "DEBIAN/control"
} }

View File

@ -14,7 +14,7 @@ function check_dependency() {
return 0 return 0
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param check_dependency $@
$1
} }

17
src/func/check_update Executable file
View File

@ -0,0 +1,17 @@
#!/bin/bash
#remaster lib
[ -d "<LIBDIR>" ] || { echo "LIBDIR not exist"; exit 1; }
#check_update
function check_update() {
if curl https://raw.githubusercontent.com/6543/remaster/master/changes/remaster.md | diff - <(zcat <ROOTDIR>/usr/share/doc/remaster/changelog.gz ); then
echo 'REMASTER: Aktuell'
else
echo 'REMASTER: Warning: neue Version verfügbar'
fi
}
#this func is standalone executable
[ -n "$1" ] && {
check_update
}

View File

@ -11,7 +11,7 @@ function check_user() {
} }
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param check_user $@
$1
} }

View File

@ -16,7 +16,7 @@ function chroot_clean() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param chroot_clean $@
$1
} }

View File

@ -25,7 +25,7 @@ function chroot_initial() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param chroot_initial $@
$1
} }

View File

@ -16,7 +16,7 @@ function chroot_is_mounted() {
fi fi
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param chroot_is_mounted $@
$1
} }

View File

@ -23,7 +23,7 @@ function chroot_sh() {
chroot "$chroot_dir" /bin/bash --login -c ". /tmp/env.sh; $command" chroot "$chroot_dir" /bin/bash --login -c ". /tmp/env.sh; $command"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param chroot_sh $@
$1
} }

View File

@ -25,7 +25,7 @@ function chroot_umount() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param chroot_umount $@
$1
} }

View File

@ -53,13 +53,16 @@ function error_code() {
22) 22)
echo "wrong filesystem" echo "wrong filesystem"
;; ;;
all)
error_code
;;
*) *)
echo $'No Defined Error Code.\nPerhaps an Error ocure on a Command wich was started by this Skritp.' echo $'No Defined Error Code.\nPerhaps an Error ocure on a Command wich was started by this Skritp.'
;; ;;
esac esac
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param error_code $@
$1
} }

View File

@ -42,7 +42,7 @@ function filesystem_extract() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param filesystem_extract $@
$1
} }

View File

@ -9,7 +9,7 @@ function filesystem_get_type() {
echo ${fs_aTemp[9]} echo ${fs_aTemp[9]}
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param filesystem_get_type $@
$1
} }

View File

@ -31,7 +31,7 @@ function filesystem_pack() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param filesystem_pack $@
$1
} }

View File

@ -25,7 +25,7 @@ function iso_create() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param iso_create $@
$1
} }

View File

@ -46,7 +46,7 @@ function iso_extract() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param iso_extract $@
$1
} }

View File

@ -28,7 +28,7 @@ function on_exit() {
exit $1 exit $1
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param on_exit $@
$1
} }

View File

@ -13,7 +13,7 @@ function workspace_erase() {
echo "done" echo "done"
} }
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param workspace_erase $@
$1
} }

View File

@ -10,7 +10,7 @@
#this func is standalone executable
[ -n "$1" ] && { [ -n "$1" ] && {
echo param xrdp $@
$1
} }

View File

@ -35,8 +35,3 @@ function os_update() {
echo "done" echo "done"
} }
[ -n "$1" ] && {
echo param
$1
}

View File

@ -7,8 +7,3 @@
source <LIBDIR>/proj/ubuntu.16.04 source <LIBDIR>/proj/ubuntu.16.04
TEST2="na" TEST2="na"
[ -n "$1" ] && {
echo param
$1
}

View File

@ -7,8 +7,3 @@
#################################### ####################################
# . -> debian # . -> debian
source <LIBDIR>/proj/debian source <LIBDIR>/proj/debian
[ -n "$1" ] && {
echo param
$1
}

View File

@ -5,8 +5,3 @@
#ubuntu.16.04 #ubuntu.16.04
# . -> ubuntu -> debian # . -> ubuntu -> debian
source <LIBDIR>/proj/ubuntu source <LIBDIR>/proj/ubuntu
[ -n "$1" ] && {
echo param
$1
}

View File

@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
#@version 1.9.3 #@version 2.0.2
#@autor 6543@obermui.de #@autor 6543@obermui.de
#@date 2018-05-10 #@date 2018-05-13
#@licence GNUv3 #@licence GNUv3
##################################################################################### #####################################################################################
@ -90,6 +90,8 @@ function main_renew() {
check_dependency check_dependency
error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file" error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file"
check_update | tee -a "$log_file"
[ "$distro" != "" ] && distro="_$distro" [ "$distro" != "" ] && distro="_$distro"
# 2. Entpacke ISO # 2. Entpacke ISO
@ -237,6 +239,8 @@ function main_update_pxe() {
check_user check_user
error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file" error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file"
check_update | tee -a "$log_file"
check_dependency check_dependency
error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file" error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file"
@ -357,6 +361,8 @@ function main_update_iso() {
check_user check_user
error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file" error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file"
check_update | tee -a "$log_file"
check_dependency check_dependency
error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file" error_level="$?"; [ "$error_level" != "0" ] && on_exit $error_level >> "$log_file"
@ -465,11 +471,6 @@ function main_update_iso() {
on_exit 0 on_exit 0
} }
#remaster.sh update
function main_update() {
main_update_pxe
}
##################################################################################### #####################################################################################
################## F u n c t i o n s ################################################ ################## F u n c t i o n s ################################################
##################################################################################### #####################################################################################