Author: henkp
Date: Sat Apr 28 09:52:36 2018
New Revision: 1830420
URL: http://svn.apache.org/viewvc?rev=1830420&view=rev
Log:
generate site from scratch ; link yaml,json
Modified:
attic/site-lua/Makefile
attic/site-lua/data/page.tmpl
attic/site-lua/gen-flags
attic/site-lua/mk-stuff
Modified: attic/site-lua/Makefile
URL:
http://svn.apache.org/viewvc/attic/site-lua/Makefile?rev=1830420&r1=1830419&r2=1830420&view=diff
==============================================================================
--- attic/site-lua/Makefile (original)
+++ attic/site-lua/Makefile Sat Apr 28 09:52:36 2018
@@ -1,13 +1,22 @@
-OBJS = index.html process.html resolution.html data/attic.json
+SRC_YAML = data/attic.yaml
+DST_YAML = docs/attic.yaml
-all :
- perl mk-stuff
- perl gen-flags -f -v
+all : STATIC
+ perl mk-stuff -v -f
+ perl gen-flags -v -f
-prod : clean
- perl mk-stuff
- perl gen-flags -f -q
+test : STATIC
+ perl mk-stuff -v
+ perl gen-flags -v
+
+prod : clean STATIC
+ perl mk-stuff -q -f
+ perl gen-flags -q -f
+
+STATIC :
+ rm -f ${DST_YAML}.txt
+ rsync -az static/ ${SRC_YAML} docs/
+ ln ${DST_YAML} ${DST_YAML}.txt
clean :
- rm -f ${OBJS}
- rm -rf projects/* flags/*
+ rm -rf docs
Modified: attic/site-lua/data/page.tmpl
URL:
http://svn.apache.org/viewvc/attic/site-lua/data/page.tmpl?rev=1830420&r1=1830419&r2=1830420&view=diff
==============================================================================
--- attic/site-lua/data/page.tmpl (original)
+++ attic/site-lua/data/page.tmpl Sat Apr 28 09:52:36 2018
@@ -55,6 +55,11 @@ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
<li><a href="/">Home</a></li>
<li><a href="/process.html">Process</a></li>
<li><a href="http://issues.apache.org/jira/browse/ATTIC">Process
tracking</a></li>
+ <li>
+ <a href="/attic.yaml.txt">Data yaml</a>
+ -
+ <a href="/attic.json">json</a>
+ </li>
<li><a
href="https://whimsy.apache.org/board/minutes/Attic.html">Board
Minutes</a></li>
</ul>
<div class="menuheader">Related Apache Links</div>
Modified: attic/site-lua/gen-flags
URL:
http://svn.apache.org/viewvc/attic/site-lua/gen-flags?rev=1830420&r1=1830419&r2=1830420&view=diff
==============================================================================
--- attic/site-lua/gen-flags (original)
+++ attic/site-lua/gen-flags Sat Apr 28 09:52:36 2018
@@ -5,14 +5,15 @@ use warnings ;
use YAML ;
my $DEF_YAML_FILE = 'data/attic.yaml' ;
-my $DEF_FLAGS_DIR = 'flags' ;
+my $DEF_DOCS_DIR = 'docs' ;
+my $DEF_FLAGS_DIR = "$DEF_DOCS_DIR/flags" ;
my $BANNER_FILE = 'banners' ;
my $prog = substr $0, rindex ( $0, '/' ) + 1 ;
my $Usage = <<USAGE ;
Usage: $prog [-v] [-q] [-d] [-f] [yaml [flags]]
option v : be verbose
-option q : be quiet
+option q : be quiet ; only show errors
option d : show debug info
option f : action ; otherwise dry-run
argument yaml : YAML file ; default $DEF_YAML_FILE
@@ -49,7 +50,6 @@ my $mods = 0 ;
my $YAML_FILE = shift || $DEF_YAML_FILE ;
my $FLAGS_DIR = shift || $DEF_FLAGS_DIR ;
-chop $FLAGS_DIR while $FLAGS_DIR =~ m!/$! ;
if ( $opt{v} )
{ print "using yaml file '$YAML_FILE'\n" ;
@@ -57,7 +57,8 @@ if ( $opt{v} )
}
Error "no yaml file ($YAML_FILE)" unless -f $YAML_FILE ;
-Error "no flags dir ($FLAGS_DIR)" unless -d $FLAGS_DIR ;
+for my $dir ( $DEF_DOCS_DIR, $FLAGS_DIR )
+ { -d $dir or mkdir $dir, 0755 or Error "can't mkdir $dir ($!)" ; }
sub mk_tag
{ my $hash = shift ;
Modified: attic/site-lua/mk-stuff
URL:
http://svn.apache.org/viewvc/attic/site-lua/mk-stuff?rev=1830420&r1=1830419&r2=1830420&view=diff
==============================================================================
--- attic/site-lua/mk-stuff (original)
+++ attic/site-lua/mk-stuff Sat Apr 28 09:52:36 2018
@@ -6,19 +6,20 @@ use YAML ;
use JSON ;
my $YAML_FILE = 'data/attic.yaml' ;
-my $JSON_FILE = 'data/attic.json' ;
my $PAGE_TMPL = 'data/page.tmpl' ;
my $INDX_TXT = 'data/index.txt' ;
my $PROC_TXT = 'data/process.txt' ;
my $RESO_TXT = 'data/resolution.txt' ;
-my $DEST = '.' ;
+my $DEST = 'docs' ;
+my $DEST_PROJ = 'projects' ;
+my $DEST_JSON = "$DEST/attic.json" ;
my $NA = 'n/a' ;
my $prog = substr $0, rindex ( $0, '/' ) + 1 ;
my $Usage = <<USAGE ;
Usage: $prog [-v] [-q] [-d] [-f]
option v : be verbose
-option q : be quiet
+option q : be quiet ; only show errors
option d : show debug info
option f : action ; otherwise dry-run
----------------------------------------------------------
@@ -47,7 +48,8 @@ my $mods = 0 ;
if ( $opt{v} ) { print "using page templ '$PAGE_TMPL'\n" ; }
Error "no page tmpl ($PAGE_TMPL)" unless -f $PAGE_TMPL ;
-Error "no dest dir ($DEST)" unless -d $DEST ;
+for my $dir ( $DEST, "$DEST/$DEST_PROJ" )
+ { -d $dir or mkdir $dir, 0755 or Error "can't mkdir $dir ($!)" ; }
sub get_file ($)
{ my $file = shift ;
@@ -76,7 +78,6 @@ sub mk_tag
}
sub get_yaml { my @res = YAML::LoadFile $YAML_FILE ; [ @res ] ; }
-# sub get_json { my $res = from_json get_file $JSON_FILE ; $res ; }
sub get_prjs { get_yaml ; }
sub put_json
@@ -102,8 +103,8 @@ sub mk_proj_list
for my $hash
( sort { lc $a -> {name} cmp lc $b -> {name} } @$prjs )
{ my $tag = mk_tag $hash ;
- push @res, sprintf '<a href="/projects/%s.html">%s</a>'
- , $tag, $hash -> {name} ;
+ push @res, sprintf '<a href="/%s/%s.html">%s</a>'
+ , $DEST_PROJ, $tag, $hash -> {name} ;
}
sprintf "\n<ul>\n%s</ul>\n", join '', map "<li>$_</li>\n", @res ;
}
@@ -186,13 +187,16 @@ sub gen_page
) ;
my $page = $opts{PAGE} ;
my $OUT = "$DEST/$opts{FILE}" ;
- my $TMP = "$OUT.tmp" ;
- open TMP, '>', $TMP or Error "can't write $TMP ($!)" ;
- $page =~ s/%TITLE%/$opts{TITLE}/g ;
- $page =~ s/%BODY%/$opts{BODY}/g ;
- print TMP $page ;
- close TMP ;
- rename $TMP, $OUT or Error "can't rename $TMP, $OUT ($!)" ;
+ print "$TAG create $OUT\n" if $opt{v} ;
+ if ( $opt{f} )
+ { my $TMP = "$OUT.tmp" ;
+ open TMP, '>', $TMP or Error "can't write $TMP ($!)" ;
+ $page =~ s/%TITLE%/$opts{TITLE}/g ;
+ $page =~ s/%BODY%/$opts{BODY}/g ;
+ print TMP $page ;
+ close TMP ;
+ rename $TMP, $OUT or Error "can't rename $TMP, $OUT ($!)" ;
+ }
}
sub DEF_POST ($)
@@ -289,10 +293,11 @@ for my $hash ( @$prjs )
my $tit = join ' ', grep { defined } ( $prj, $sub ) ;
gen_page
( PAGE => $page
- , FILE => "projects/$tag.html"
+ , FILE => "$DEST_PROJ/$tag.html"
, TITLE => "Apache Attic -- @{[ucfirst $tit]}"
, BODY => mk_proj $hash
) ;
}
-put_json $JSON_FILE, $prjs ;
+print "$TAG create $DEST_JSON\n" if $opt{v} ;
+put_json $DEST_JSON, $prjs if $opt{f} ;