Permalink
Browse files

Getting things setup

  • Loading branch information...
1 parent 3ac582b commit d8375c0a1657e11a27281e09542750885c224708 @imaginator imaginator committed Mar 26, 2014
Showing with 361 additions and 0 deletions.
  1. +11 −0 .travis.yml
  2. +109 −0 Makefile
  3. +103 −0 develop_server.sh
  4. +60 −0 fabfile.py
  5. +1 −0 pelican.pid
  6. +42 −0 pelicanconf.py
  7. +24 −0 publishconf.py
  8. +1 −0 srv.pid
  9. +10 −0 xmpp.org-theme/.gitignore
  10. 0 { → xmpp.org-theme}/.mailmap
  11. 0 { → xmpp.org-theme}/AUTHORS.md
  12. 0 { → xmpp.org-theme}/CONTRIBUTING.md
  13. 0 { → xmpp.org-theme}/LICENSE
  14. 0 { → xmpp.org-theme}/README.md
  15. BIN { → xmpp.org-theme}/screenshot-article.png
  16. BIN { → xmpp.org-theme}/screenshot.png
  17. 0 { → xmpp.org-theme}/static/css/bootstrap.amelia.min.css
  18. 0 { → xmpp.org-theme}/static/css/bootstrap.cerulean.min.css
  19. 0 { → xmpp.org-theme}/static/css/bootstrap.cosmo.min.css
  20. 0 { → xmpp.org-theme}/static/css/bootstrap.cupid.min.css
  21. 0 { → xmpp.org-theme}/static/css/bootstrap.cyborg.min.css
  22. 0 { → xmpp.org-theme}/static/css/bootstrap.flatly.min.css
  23. 0 { → xmpp.org-theme}/static/css/bootstrap.journal.min.css
  24. 0 { → xmpp.org-theme}/static/css/bootstrap.lumen.min.css
  25. 0 { → xmpp.org-theme}/static/css/bootstrap.min.css
  26. 0 { → xmpp.org-theme}/static/css/bootstrap.readable-old.min.css
  27. 0 { → xmpp.org-theme}/static/css/bootstrap.readable.min.css
  28. 0 { → xmpp.org-theme}/static/css/bootstrap.simplex.min.css
  29. 0 { → xmpp.org-theme}/static/css/bootstrap.slate.min.css
  30. 0 { → xmpp.org-theme}/static/css/bootstrap.spacelab.min.css
  31. 0 { → xmpp.org-theme}/static/css/bootstrap.superhero.min.css
  32. 0 { → xmpp.org-theme}/static/css/bootstrap.united.min.css
  33. 0 { → xmpp.org-theme}/static/css/bootstrap.yeti.min.css
  34. 0 { → xmpp.org-theme}/static/css/font-awesome.css
  35. 0 { → xmpp.org-theme}/static/css/font-awesome.min.css
  36. 0 { → xmpp.org-theme}/static/css/html4css1.css
  37. 0 { → xmpp.org-theme}/static/css/pygments/autumn.css
  38. 0 { → xmpp.org-theme}/static/css/pygments/borland.css
  39. 0 { → xmpp.org-theme}/static/css/pygments/bw.css
  40. 0 { → xmpp.org-theme}/static/css/pygments/colorful.css
  41. 0 { → xmpp.org-theme}/static/css/pygments/default.css
  42. 0 { → xmpp.org-theme}/static/css/pygments/emacs.css
  43. 0 { → xmpp.org-theme}/static/css/pygments/friendly.css
  44. 0 { → xmpp.org-theme}/static/css/pygments/fruity.css
  45. 0 { → xmpp.org-theme}/static/css/pygments/manni.css
  46. 0 { → xmpp.org-theme}/static/css/pygments/monokai.css
  47. 0 { → xmpp.org-theme}/static/css/pygments/murphy.css
  48. 0 { → xmpp.org-theme}/static/css/pygments/native.css
  49. 0 { → xmpp.org-theme}/static/css/pygments/pastie.css
  50. 0 { → xmpp.org-theme}/static/css/pygments/perldoc.css
  51. 0 { → xmpp.org-theme}/static/css/pygments/solarizeddark.css
  52. 0 { → xmpp.org-theme}/static/css/pygments/solarizedlight.css
  53. 0 { → xmpp.org-theme}/static/css/pygments/tango.css
  54. 0 { → xmpp.org-theme}/static/css/pygments/trac.css
  55. 0 { → xmpp.org-theme}/static/css/pygments/vim.css
  56. 0 { → xmpp.org-theme}/static/css/pygments/vs.css
  57. 0 { → xmpp.org-theme}/static/css/pygments/zenburn.css
  58. 0 { → xmpp.org-theme}/static/css/style.css
  59. 0 { → xmpp.org-theme}/static/css/typogrify.css
  60. BIN { → xmpp.org-theme}/static/fonts/FontAwesome.otf
  61. BIN { → xmpp.org-theme}/static/fonts/fontawesome-webfont.eot
  62. 0 { → xmpp.org-theme}/static/fonts/fontawesome-webfont.svg
  63. BIN { → xmpp.org-theme}/static/fonts/fontawesome-webfont.ttf
  64. BIN { → xmpp.org-theme}/static/fonts/fontawesome-webfont.woff
  65. BIN { → xmpp.org-theme}/static/fonts/glyphicons-halflings-regular.eot
  66. 0 { → xmpp.org-theme}/static/fonts/glyphicons-halflings-regular.svg
  67. BIN { → xmpp.org-theme}/static/fonts/glyphicons-halflings-regular.ttf
  68. BIN { → xmpp.org-theme}/static/fonts/glyphicons-halflings-regular.woff
  69. 0 { → xmpp.org-theme}/static/js/bootstrap.min.js
  70. 0 { → xmpp.org-theme}/static/js/github.js
  71. 0 { → xmpp.org-theme}/static/js/jXHR.js
  72. 0 { → xmpp.org-theme}/static/js/respond.min.js
  73. 0 { → xmpp.org-theme}/templates/archives.html
  74. 0 { → xmpp.org-theme}/templates/article.html
  75. 0 { → xmpp.org-theme}/templates/author.html
  76. 0 { → xmpp.org-theme}/templates/authors.html
  77. 0 { → xmpp.org-theme}/templates/base.html
  78. 0 { → xmpp.org-theme}/templates/categories.html
  79. 0 { → xmpp.org-theme}/templates/category.html
  80. 0 { → xmpp.org-theme}/templates/includes/aboutme.html
  81. 0 { → xmpp.org-theme}/templates/includes/addthis.html
  82. 0 { → xmpp.org-theme}/templates/includes/article_info.html
  83. 0 { → xmpp.org-theme}/templates/includes/cc-license.html
  84. 0 { → xmpp.org-theme}/templates/includes/comment_count.html
  85. 0 { → xmpp.org-theme}/templates/includes/comments.html
  86. 0 { → xmpp.org-theme}/templates/includes/disqus_script.html
  87. 0 { → xmpp.org-theme}/templates/includes/footer.html
  88. 0 { → xmpp.org-theme}/templates/includes/ga.html
  89. 0 { → xmpp.org-theme}/templates/includes/github-js.html
  90. 0 { → xmpp.org-theme}/templates/includes/github.html
  91. 0 { → xmpp.org-theme}/templates/includes/links.html
  92. 0 { → xmpp.org-theme}/templates/includes/pagination.html
  93. 0 { → xmpp.org-theme}/templates/includes/piwik.html
  94. 0 { → xmpp.org-theme}/templates/includes/related-posts.html
  95. 0 { → xmpp.org-theme}/templates/includes/sidebar.html
  96. 0 { → xmpp.org-theme}/templates/includes/taglist.html
  97. 0 { → xmpp.org-theme}/templates/includes/translations.html
  98. 0 { → xmpp.org-theme}/templates/includes/twitter_timeline.html
  99. 0 { → xmpp.org-theme}/templates/index.html
  100. 0 { → xmpp.org-theme}/templates/page.html
  101. 0 { → xmpp.org-theme}/templates/tag.html
  102. 0 { → xmpp.org-theme}/templates/tags.html
View
@@ -0,0 +1,11 @@
+language: python
+branches:
+ only:
+ - master
+install:
+- pip install pelican ghp-import markdown
+script:
+- make github
+env:
+ global:
+ secure: cbcSKjgyE15JRufgwi+UYO7OCa70SZr9zN3tw9dzzdlCfoYpwEqV3tyQSF2voqZUL8qd0JV7EBPQa7SEpqBgvtSJUPewfm0n8yLJJ5mPDyS3UCRhLJHeVnsQtDGAuLg/Pl1skCUKZxU8CuKPXBij/zvwMEL5aS/wWI+RVrtXMGM=
View
@@ -0,0 +1,109 @@
+PY=python
+PELICAN=pelican
+PELICANOPTS=
+
+BASEDIR=$(CURDIR)
+INPUTDIR=$(BASEDIR)/content
+OUTPUTDIR=$(BASEDIR)/output
+CONFFILE=$(BASEDIR)/pelicanconf.py
+PUBLISHCONF=$(BASEDIR)/publishconf.py
+
+FTP_HOST=localhost
+FTP_USER=anonymous
+FTP_TARGET_DIR=/
+
+SSH_HOST=localhost
+SSH_PORT=22
+SSH_USER=root
+SSH_TARGET_DIR=/var/www
+
+S3_BUCKET=my_s3_bucket
+
+CLOUDFILES_USERNAME=my_rackspace_username
+CLOUDFILES_API_KEY=my_rackspace_api_key
+CLOUDFILES_CONTAINER=my_cloudfiles_container
+
+DROPBOX_DIR=~/Dropbox/Public/
+
+DEBUG ?= 0
+ifeq ($(DEBUG), 1)
+ PELICANOPTS += -D
+endif
+
+help:
+ @echo 'Makefile for a pelican Web site '
+ @echo ' '
+ @echo 'Usage: '
+ @echo ' make html (re)generate the web site '
+ @echo ' make clean remove the generated files '
+ @echo ' make regenerate regenerate files upon modification '
+ @echo ' make publish generate using production settings '
+ @echo ' make serve [PORT=8000] serve site at http://localhost:8000'
+ @echo ' make devserver [PORT=8000] start/restart develop_server.sh '
+ @echo ' make stopserver stop local server '
+ @echo ' make ssh_upload upload the web site via SSH '
+ @echo ' make rsync_upload upload the web site via rsync+ssh '
+ @echo ' make dropbox_upload upload the web site via Dropbox '
+ @echo ' make ftp_upload upload the web site via FTP '
+ @echo ' make s3_upload upload the web site via S3 '
+ @echo ' make cf_upload upload the web site via Cloud Files'
+ @echo ' make github upload the web site via gh-pages '
+ @echo ' '
+ @echo 'Set the DEBUG variable to 1 to enable debugging, e.g. make DEBUG=1 html'
+ @echo ' '
+
+html:
+ $(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
+
+clean:
+ [ ! -d $(OUTPUTDIR) ] || rm -rf $(OUTPUTDIR)
+
+regenerate:
+ $(PELICAN) -r $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
+
+serve:
+ifdef PORT
+ cd $(OUTPUTDIR) && $(PY) -m pelican.server $(PORT)
+else
+ cd $(OUTPUTDIR) && $(PY) -m pelican.server
+endif
+
+devserver:
+ifdef PORT
+ $(BASEDIR)/develop_server.sh restart $(PORT)
+else
+ $(BASEDIR)/develop_server.sh restart
+endif
+
+stopserver:
+ kill -9 `cat pelican.pid`
+ kill -9 `cat srv.pid`
+ @echo 'Stopped Pelican and SimpleHTTPServer processes running in background.'
+
+publish:
+ $(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(PUBLISHCONF) $(PELICANOPTS)
+
+ssh_upload: publish
+ scp -P $(SSH_PORT) -r $(OUTPUTDIR)/* $(SSH_USER)@$(SSH_HOST):$(SSH_TARGET_DIR)
+
+rsync_upload: publish
+ rsync -e "ssh -p $(SSH_PORT)" -P -rvz --delete $(OUTPUTDIR)/ $(SSH_USER)@$(SSH_HOST):$(SSH_TARGET_DIR) --cvs-exclude
+
+dropbox_upload: publish
+ cp -r $(OUTPUTDIR)/* $(DROPBOX_DIR)
+
+ftp_upload: publish
+ lftp ftp://$(FTP_USER)@$(FTP_HOST) -e "mirror -R $(OUTPUTDIR) $(FTP_TARGET_DIR) ; quit"
+
+s3_upload: publish
+ s3cmd sync $(OUTPUTDIR)/ s3://$(S3_BUCKET) --acl-public --delete-removed
+
+cf_upload: publish
+ cd $(OUTPUTDIR) && swift -v -A https://auth.api.rackspacecloud.com/v1.0 -U $(CLOUDFILES_USERNAME) -K $(CLOUDFILES_API_KEY) upload -c $(CLOUDFILES_CONTAINER) .
+
+github: publish
+ifeq ($(TRAVIS_PULL_REQUEST), false)
+ ghp-import -n $(OUTPUTDIR)
+ @git push -fq https://${GH_TOKEN}@github.com/$(TRAVIS_REPO_SLUG).git gh-pages > /dev/null
+endif
+.PHONY: html help clean regenerate serve devserver publish ssh_upload rsync_upload dropbox_upload ftp_upload s3_upload cf_upload github
View
@@ -0,0 +1,103 @@
+#!/usr/bin/env bash
+##
+# This section should match your Makefile
+##
+PY=python
+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 "A pelican.server to help site development. It doesn't read"
+ echo "your pelican options so you edit any paths in your Makefile"
+ echo "you will need to edit it 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 "Killing pelican.server"
+ kill $PID
+ else
+ echo "Stale PID, deleting"
+ fi
+ rm $SRV_PID
+ else
+ echo "pelican.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 pelican.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 "pelican.server didn't start. Is there something else which uses port 8000?"
+ return 1
+ fi
+ echo 'Pelican and pelican.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
View
@@ -0,0 +1,60 @@
+from fabric.api import *
+import fabric.contrib.project as project
+import os
+
+# Local path configuration (can be absolute or relative to fabfile)
+env.deploy_path = 'output'
+DEPLOY_PATH = env.deploy_path
+
+# Remote server configuration
+production = 'root@localhost:22'
+dest_path = '/var/www'
+
+# Rackspace Cloud Files configuration settings
+env.cloudfiles_username = 'my_rackspace_username'
+env.cloudfiles_api_key = 'my_rackspace_api_key'
+env.cloudfiles_container = 'my_cloudfiles_container'
+
+
+def clean():
+ if os.path.isdir(DEPLOY_PATH):
+ local('rm -rf {deploy_path}'.format(**env))
+ local('mkdir {deploy_path}'.format(**env))
+
+def build():
+ local('pelican -s pelicanconf.py')
+
+def rebuild():
+ clean()
+ build()
+
+def regenerate():
+ local('pelican -r -s pelicanconf.py')
+
+def serve():
+ local('cd {deploy_path} && python -m SimpleHTTPServer'.format(**env))
+
+def reserve():
+ build()
+ serve()
+
+def preview():
+ local('pelican -s publishconf.py')
+
+def cf_upload():
+ rebuild()
+ local('cd {deploy_path} && '
+ 'swift -v -A https://auth.api.rackspacecloud.com/v1.0 '
+ '-U {cloudfiles_username} '
+ '-K {cloudfiles_api_key} '
+ 'upload -c {cloudfiles_container} .'.format(**env))
+
+@hosts(production)
+def publish():
+ local('pelican -s publishconf.py')
+ project.rsync_project(
+ remote_dir=dest_path,
+ exclude=".DS_Store",
+ local_dir=DEPLOY_PATH.rstrip('/') + '/',
+ delete=True
+ )
View
@@ -0,0 +1 @@
+41713
View
@@ -0,0 +1,42 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*- #
+from __future__ import unicode_literals
+
+AUTHOR = u'members@xmpp.org'
+SITENAME = u'XMPP Standards Foundation'
+SITEURL = ''
+
+TIMEZONE = 'Europe/Paris'
+
+DEFAULT_LANG = u'en'
+
+# Feed generation is usually not desired when developing
+FEED_ALL_ATOM = None
+CATEGORY_FEED_ATOM = None
+TRANSLATION_FEED_ATOM = None
+
+# Blogroll
+LINKS = (('Pelican', 'http://getpelican.com/'),
+ ('Python.org', 'http://python.org/'),
+ ('Jinja2', 'http://jinja.pocoo.org/'),
+ ('You can modify those links in your config file', '#'),)
+
+# Social widget
+SOCIAL = (('You can add links in your config file', '#'),
+ ('Another social link', '#'),)
+
+DEFAULT_PAGINATION = 10
+
+# Uncomment following line if you want document-relative URLs when developing
+#RELATIVE_URLS = True
+
+GOOGLE_ANALYTICS = "UA-1075750-10"
+
+DIRECT_TEMPLATES = ['index']
+THEME = 'xmpp.org-theme'
+STATIC_PATHS = [ 'img', 'CNAME' ]
+CUSTOM_CSS = 'static/custom.css'
+BOOTSTRAP_THEME = 'readable'
+
+
+
View
@@ -0,0 +1,24 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*- #
+from __future__ import unicode_literals
+
+# This file is only used if you use `make publish` or
+# explicitly specify it as your config file.
+
+import os
+import sys
+sys.path.append(os.curdir)
+from pelicanconf import *
+
+SITEURL = 'http://xmpp.org'
+RELATIVE_URLS = False
+
+FEED_ALL_ATOM = 'feeds/all.atom.xml'
+CATEGORY_FEED_ATOM = 'feeds/%s.atom.xml'
+
+DELETE_OUTPUT_DIRECTORY = True
+
+# Following items are often useful when publishing
+
+#DISQUS_SITENAME = ""
+#GOOGLE_ANALYTICS = ""
View
@@ -0,0 +1 @@
+41714
@@ -0,0 +1,10 @@
+*~
+._*
+*.lock
+*.DS_Store
+*.swp
+*.out
+*.py[cod]
+output
+.idea/*
+.env
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit d8375c0

Please sign in to comment.