Hal9000 / runecms

A simple static website manager

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

RuneCMS is intended to be a simple, lightweight tool for building and deploying static websites.

It's based on Livetext, but could be generalized to be agnostic of that tool. It is abstracted from a portion of RuneBlog.

In its present form, the rcms command simply takes a parameter. Choices are:


rcms version Print the version number of RuneCMS
rcms config Initialize config.txt if necessary and edit with vi
rcms check List stale files, but do nothing else
rcms generate Find stale files under source/ and generate them under target/
rcms publish Publish target/ to the remote server
rcms update Shortcut - Like a generate followed by a publish
rcms view View the current state of target/ via browser (local files)
rcms browse Browse the current state of the remote server
At present, there is no check for these to be done in order. For example, you could publish without a generate (analogous to editing a C program and running the executable without recompiling it).

The assumption is made that keys for the user and server are already set up. The config.txt file looks like:
server: foo.com
path: /var/www/foo
user: hal9000

Original notes:
General idea: Website is stored in a directory tree. Use Livetext (etc.?) to create target files
and rsync to upload.


Config will comprise: - server - user - root/path

Dir structure:

site | +---- config.lt3 +---- source/... +---- target/...

Logic flow: 1. Edit file(s) under source/ tree 2. Generate - reads config - finds modified files under source/ - runs livetext on each - results go under target/ 3. View target/ locally to verify 4. Publish via rsync # cmd = "rsync -r -z #{target}/ #@user@#@server:#{path}/"


More details later...

About

A simple static website manager


Languages

Language:Ruby 100.0%