Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
exercises
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
advanced_computer_architecture
exercises
Commits
651deea7
Commit
651deea7
authored
Apr 11, 2016
by
Christoph Gerum
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add missing files
parent
1f1d8ae0
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
109 additions
and
0 deletions
+109
-0
.gitignore
.gitignore
+6
-0
develop_server.sh
develop_server.sh
+103
-0
No files found.
.gitignore
0 → 100644
View file @
651deea7
*.md
*.pyc
*~
*.pid
output/
\ No newline at end of file
develop_server.sh
0 → 100755
View file @
651deea7
#!/usr/bin/env bash
##
# This section should match your Makefile
##
PY
=
${
PY
:-
python
}
PELICAN
=
${
PELICAN
:-
pelican
}
PELICANOPTS
=
BASEDIR
=
$(
pwd
)
INPUTDIR
=
$BASEDIR
/content
OUTPUTDIR
=
$BASEDIR
/output
CONFFILE
=
$BASEDIR
/pelicanconf.py
###
# Don't change stuff below here unless you are sure
###
SRV_PID
=
$BASEDIR
/srv.pid
PELICAN_PID
=
$BASEDIR
/pelican.pid
function
usage
(){
echo
"usage:
$0
(stop) (start) (restart) [port]"
echo
"This starts Pelican in debug and reload mode and then launches"
echo
"an HTTP server to help site development. It doesn't read"
echo
"your Pelican settings, so if you edit any paths in your Makefile"
echo
"you will need to edit your settings as well."
exit
3
}
function
alive
()
{
kill
-0
$1
>
/dev/null 2>&1
}
function
shut_down
(){
PID
=
$(
cat
$SRV_PID
)
if
[[
$?
-eq
0
]]
;
then
if
alive
$PID
;
then
echo
"Stopping HTTP server"
kill
$PID
else
echo
"Stale PID, deleting"
fi
rm
$SRV_PID
else
echo
"HTTP server PIDFile not found"
fi
PID
=
$(
cat
$PELICAN_PID
)
if
[[
$?
-eq
0
]]
;
then
if
alive
$PID
;
then
echo
"Killing Pelican"
kill
$PID
else
echo
"Stale PID, deleting"
fi
rm
$PELICAN_PID
else
echo
"Pelican PIDFile not found"
fi
}
function
start_up
(){
local
port
=
$1
echo
"Starting up Pelican and HTTP server"
shift
$PELICAN
--debug
--autoreload
-r
$INPUTDIR
-o
$OUTPUTDIR
-s
$CONFFILE
$PELICANOPTS
&
pelican_pid
=
$!
echo
$pelican_pid
>
$PELICAN_PID
cd
$OUTPUTDIR
$PY
-m
pelican.server
$port
&
srv_pid
=
$!
echo
$srv_pid
>
$SRV_PID
cd
$BASEDIR
sleep
1
if
!
alive
$pelican_pid
;
then
echo
"Pelican didn't start. Is the Pelican package installed?"
return
1
elif
!
alive
$srv_pid
;
then
echo
"The HTTP server didn't start. Is there another service using port"
$port
"?"
return
1
fi
echo
'Pelican and HTTP server processes now running in background.'
}
###
# MAIN
###
[[
(
$#
-eq
0
)
||
(
$#
-gt
2
)
]]
&&
usage
port
=
''
[[
$#
-eq
2
]]
&&
port
=
$2
if
[[
$1
==
"stop"
]]
;
then
shut_down
elif
[[
$1
==
"restart"
]]
;
then
shut_down
start_up
$port
elif
[[
$1
==
"start"
]]
;
then
if
!
start_up
$port
;
then
shut_down
fi
else
usage
fi
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment