View Dockerfile
FROM ubuntu:18.04 | |
RUN apt-get update && apt-get install -y python3-pip virtualenv | |
RUN virtualenv -p python3 /env | |
COPY setup.py /root | |
RUN . /env/bin/activate && \ | |
cd /root && \ |
View scaml2html.scala
// convert the HAML/SCAML layout file to Docbook XML | |
val engine = new org.fusesource.scalate.TemplateEngine | |
val output = engine.layout("src/main/docbook/handbook.scaml") | |
val file = (target in Compile).value / "handbook.xml" | |
IO.write(file, output) | |
// create Docbook HTML | |
import scala.sys.process._ | |
// TODO make this independent of local user's environment | |
val xsltool = "xsltproc" |
View gist:f2512a3fa932b1434ad0
<!-- paste this into the head element of an HTML file to append QR codes to each link --> | |
<script src="http://code.jquery.com/jquery-1.11.2.min.js"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.qrcode/1.0/jquery.qrcode.min.js"></script> | |
<script type="text/javascript"> | |
$(document).ready(function(){ | |
$("a").each(function(idx, item){ | |
var a = $(item); | |
var href=a.attr("href"); | |
a.qrcode({ | |
text: href, |
View KafkaDoesntShutdown.scala
import org.apache.log4j.{LogManager, Level} | |
import org.apache.spark.SparkContext | |
import org.apache.spark.streaming.kafka.KafkaUtils | |
import org.apache.spark.streaming.{Seconds, StreamingContext} | |
import scala.concurrent._ | |
import ExecutionContext.Implicits.global | |
object KafkaDoesntShutdown { | |
def main(args: Array[String]) { | |
// get all threads |
View SparkExamplesMinimal.scala
package spark | |
import org.apache.spark | |
import org.apache.spark.rdd.RDD | |
import org.apache.spark.SparkConf | |
object SparkExamplesMinimal { | |
def asInt(s: String): Option[Int] = { | |
try { | |
Some(Integer.parseInt(s)) |
View HostAndPath.scala
def realHostAndPath(forceNoSsl: Boolean = false): String = | |
S.request.flatMap(req => (Box !! req.request).map(r => { | |
// X-Forwarded-Host contains host *and* port (if not standard) | |
r.header("X-Forwarded-Host") match { | |
case Full(hostAndPort) => | |
r.scheme match { | |
case "http" if r.header("X-SSL").isDefined => | |
"https://" + hostAndPort + S.contextPath | |
case "http" if r.header("X_FORWARDED_PROTO") == Full("https") && !forceNoSsl => | |
// this (correct) URL is not liked well by Java applets, so we allow to override it |
View V.scala
package code | |
import java.util.{ResourceBundle, Locale} | |
import xml.{Node, NodeSeq} | |
import net.liftweb.util.Helpers.tryo | |
import net.liftweb.http.{Templates, LiftRules, S} | |
import net.liftweb.common._ | |
import net.liftweb.util.{BundleBuilder, Helpers, NamedPF, Props} |
View MongoSequence.scala
package code.model | |
import net.liftweb.mongodb.BsonDSL._ | |
import net.liftweb.record.field._ | |
import net.liftweb.util.Helpers._ | |
import net.liftweb.common._ | |
import net.liftweb.mongodb.record._ | |
import field._ | |
import com.mongodb.{DBObject, BasicDBObject} |
View japanese-full.tex
\documentclass[12pt]{article} | |
\usepackage{xltxtra, setspace} | |
%% fonts | |
% xeCJK options from <http://mesokosmos.blogger.de/stories/1818274/>: | |
\usepackage[% | |
boldfont, | |
CJKnumber, |
View basics.feature
Feature: Basic Appearance | |
Scenario: Loading Front Page | |
Given I go to "http://localhost:8080" | |
Then I should see "WorldWide Conferencing" | |
Scenario: Login fails | |
Given I go to "http://localhost:8080/user_mgt/login" | |
When I fill in "username" with "me@privacy.net" | |
And I fill in "password" with "xyz" |
NewerOlder