make.jl 2.08 KB
Newer Older
Sylvain Arreckx's avatar
Sylvain Arreckx committed
1
using Documenter, COBREXA
2
3
4
5
6
using Literate

ENV["TRAVIS_REPO_SLUG"] = "LCSB-BioCore/COBREXA.jl"

# generate notebooks
Miroslav Kratochvil's avatar
format    
Miroslav Kratochvil committed
7
notebooks_path = joinpath(@__DIR__, "src", "notebooks-src")
Miroslav Kratochvil's avatar
Miroslav Kratochvil committed
8
9
notebooks =
    joinpath.(notebooks_path, filter(x -> endswith(x, ".jl"), readdir(notebooks_path)))
10
notebooks_outdir = joinpath(@__DIR__, "src", "notebooks")
11
12
13
14
15
16

folder = "stable"

## only temporary - will be removed once public
branch = "gh-pages"

17
18
19
20
21
22
23
24
25
26
for notebook in notebooks
    Literate.markdown(
        notebook,
        notebooks_outdir;
        repo_root_url = "https://github.com/$(ENV["TRAVIS_REPO_SLUG"])/blob/master",
        nbviewer_root_url = "https://nbviewer.jupyter.org/github/$(ENV["TRAVIS_REPO_SLUG"])/blob/gh-pages/$(folder)",
        binder_root_url = "https://mybinder.org/v2/gh/$(ENV["TRAVIS_REPO_SLUG"])/$(branch)?filepath=$(folder)",
    )
    Literate.notebook(notebook, notebooks_outdir)
end
27

28
29
30
31
32
33
# generate index.md from .template and the quickstart in README.md
quickstart = match(
    r"<!--quickstart_begin-->\n([^\0]*)<!--quickstart_end-->",
    open(f -> read(f, String), joinpath(@__DIR__, "..", "README.md")),
).captures[1]
index_md = replace(
St. Elmo's avatar
St. Elmo committed
34
    open(f -> read(f, String), joinpath(@__DIR__, "src", "index-template.md")),
35
    "<!--insert_quickstart-->\n" => quickstart,
cylon-x's avatar
cylon-x committed
36
)
37
open(f -> write(f, index_md), joinpath(@__DIR__, "src", "index.md"), "w")
Sylvain Arreckx's avatar
Sylvain Arreckx committed
38

39
# build the docs
St. Elmo's avatar
St. Elmo committed
40
41
42
43
44
45
46
47
48
49
50
51
52
53
makedocs(
    modules = [COBREXA],
    clean = false,
    sitename = "COBREXA.jl",
    format = Documenter.HTML(
        # Use clean URLs, unless built as a "local" build
        prettyurls = !("local" in ARGS),
        assets = ["assets/favicon.ico"],
        highlights = ["yaml"],
    ),
    authors = "The developers of COBREXA.jl",
    linkcheck = !("skiplinks" in ARGS),
    pages = [
        "Home" => "index.md",
54
        "Tutorials" => "tutorials.md",
55
        "Examples and notebooks" => "notebooks.md",
56
        "Function reference" => "functions.md",
St. Elmo's avatar
St. Elmo committed
57
58
59
        "How to contribute" => "howToContribute.md",
    ],
)
60

Laurent Heirendt's avatar
Laurent Heirendt committed
61
deploydocs(
Laurent Heirendt's avatar
Laurent Heirendt committed
62
63
64
    repo = "github.com/$(ENV["TRAVIS_REPO_SLUG"]).git",
    target = "build",
    branch = "gh-pages",
cylon-x's avatar
cylon-x committed
65
    push_preview = true,
Laurent Heirendt's avatar
Laurent Heirendt committed
66
)