mirror of
https://github.com/IEEE-SB-Passau/pelican-deployment-system.git
synced 2017-09-06 16:35:38 +02:00
document config file so far
This commit is contained in:
@@ -3,16 +3,34 @@ import os
|
|||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
raise SystemExit("Not meant to be run directly!")
|
raise SystemExit("Not meant to be run directly!")
|
||||||
|
|
||||||
# make sure git does not block giving pw prompts
|
# make sure git does not block giving pw prompts, git 2.3+ only
|
||||||
os.environ["GIT_TERMINAL_PROMPT"] = "0"
|
os.environ["GIT_TERMINAL_PROMPT"] = "0"
|
||||||
|
|
||||||
RUNNERS = {
|
RUNNERS = {
|
||||||
|
# name of the runner, avoid spaces and other obscure cahracters
|
||||||
"website_master": {
|
"website_master": {
|
||||||
|
|
||||||
|
# directory where building takes place, will be created if not there
|
||||||
|
# multiple runners may point to the same one
|
||||||
"working_directory": "/tmp/test",
|
"working_directory": "/tmp/test",
|
||||||
"clone_url": "https://github.com/catdog2/sandbox.git",
|
|
||||||
|
# upstream url of the repository which contains the website
|
||||||
|
# use https://git::@github.com... to avoid pw prompts and instead fail
|
||||||
|
# (e.g. if github gives errornously 401 temporarily, git would block)
|
||||||
|
# os.environ["GIT_TERMINAL_PROMPT"] = "0" does the same but git 2.3+only
|
||||||
|
"clone_url": "https://git::@github.com/IEEE-SB-Passau/pelican-ieee-passau.git",
|
||||||
|
|
||||||
|
# branch which will be built
|
||||||
"git_branch": "master",
|
"git_branch": "master",
|
||||||
|
|
||||||
|
# the final target, usually the wwwroot
|
||||||
"target_directory": "/tmp/wwwout",
|
"target_directory": "/tmp/wwwout",
|
||||||
"pelican_command": 'echo $PELICAN_SITEURL',
|
|
||||||
"pelican_env": {"PELICAN_SITEURL": "//apu:800"}
|
# command which builds the website
|
||||||
|
# important: specify {output} as output path of the generator
|
||||||
|
"build_command": 'tox -e pelican --output "{output}"',
|
||||||
|
|
||||||
|
# will be added to env when running build_command
|
||||||
|
"build_env": {"PELICAN_SITEURL": "//apu:800"}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,10 +32,10 @@ class DeploymentRunner:
|
|||||||
self.target_directory = runner_config["target_directory"]
|
self.target_directory = runner_config["target_directory"]
|
||||||
self.build_repo_path = self.working_directory / BUILD_REPO_DIR.format(
|
self.build_repo_path = self.working_directory / BUILD_REPO_DIR.format(
|
||||||
name=name)
|
name=name)
|
||||||
self.pelican_command = runner_config["pelican_command"].format(
|
self.build_command = runner_config["build_command"].format(
|
||||||
output=OUTPUT_DIR.format(name=name))
|
output=OUTPUT_DIR.format(name=name))
|
||||||
self._build_proc_env = dict(os.environ,
|
self._build_proc_env = dict(os.environ,
|
||||||
**runner_config.get("pelican_env", {}))
|
**runner_config.get("build_env", {}))
|
||||||
|
|
||||||
self._executor = ThreadPoolExecutor(max_workers=1)
|
self._executor = ThreadPoolExecutor(max_workers=1)
|
||||||
self._futures = set()
|
self._futures = set()
|
||||||
@@ -116,7 +116,7 @@ class DeploymentRunner:
|
|||||||
|
|
||||||
# start the build if we should not abort
|
# start the build if we should not abort
|
||||||
if not self._abort:
|
if not self._abort:
|
||||||
args = shlex.split(self.pelican_command)
|
args = shlex.split(self.build_command)
|
||||||
self._build_proc = Popen(args,
|
self._build_proc = Popen(args,
|
||||||
cwd=str(self.build_repo_path),
|
cwd=str(self.build_repo_path),
|
||||||
env=self._build_proc_env)
|
env=self._build_proc_env)
|
||||||
|
|||||||
Reference in New Issue
Block a user