+
+def normalesup_factory():
+ factory = util.BuildFactory()
+ factory.addStep(steps.Git(logEnviron=False, repourl=E.NORMALESUP_GIT_URL,
+ submodules=True, sshPrivateKey=open(E.SSH_KEY_PATH).read().rstrip(),
+ sshHostKey=E.SSH_HOST_KEY, mode="full", method="copy"))
+ factory.addStep(steps.ShellCommand(name="build website",
+ logEnviron=False, haltOnFailure=True, workdir="source",
+ command=["make", "build"]))
+ factory.addStep(steps.ShellCommand(name="give read access to all files",
+ logEnviron=False, haltOnFailure=True, workdir="source",
+ command="chmod -R a+rX build"))
+ factory.addStep(steps.ShellCommand(name="synchronize with phare",
+ logEnviron=False, haltOnFailure=True, workdir="source",
+ command=[
+ "rsync", "-av", "--delete",
+ "-e", "ssh -i {} -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o CheckHostIP=no".format(E.SSH_KEY_PATH),
+ "build/",
+ "bouya@phare.normalesup.org:"
+ ]))
+
+ return util.BuilderConfig(name="Normalesup_build", workernames=["generic-worker-immae-eu"], factory=factory)