build: updating publication packages

This commit is contained in:
D. Moonfire 2018-08-26 01:56:18 -05:00
parent 5988a03367
commit 644998df93
5 changed files with 9912 additions and 883 deletions

39
.gitignore vendored
View file

@ -1,36 +1,11 @@
*~
*.pdf
*.mobi
*.epub
*.doc
*.rtf
*.docx
*.bak
*.fo
book*markdown
dmoonfire*markdown
dmoonfire*yaml
\#*
.#*
penflip
build/
.backup/
t/
tmp/
node_modules/
cover-??.png
cover-??-*.png
# XML Files that are generated or copied around.
about.xml
curiouscabbit.xml
# Other generated files
abbrev.el
latex.out
# Covers
backmatter/*.jpg
# Output
*-*.*.*.epub
*-*.*.*.pdf
*-*.*.*.mobi
*-*.*.*.html
*-*.*.*.docx

View file

@ -1,63 +1,48 @@
image: dmoonfire/mfgames-writing-js:1.1.0
stages:
- review
- publish
review:
stage: review
only:
- master
tags:
- docker
script:
# Install the basic requirements including the free fonts.
- npm ci
# Corda is a non-free font that we use for the books. It was
# picked before Source Serif Pro was created and will continue to
# be used until SSP can handle proper italics. To get around this,
# we stored it in a secret location that Gitlab CI knows about but
# everyone else does not.
- wget $CORDA_FONTS_URL/$CORDA_FONTS_BZ2BALL
- tar -xjf $CORDA_FONTS_BZ2BALL
- mkdir -p ~/.fonts/
- mv *.otf ~/.fonts/
- fc-cache -rf
# We need the covers and the previous version so we can generate the
# "previously" chapter.
- mkdir -p build/repos
- git clone https://oauth2:$fedranAccessKey@gitlab.com/fedran/fedran-covers.git build/repos/fedran-covers
- git clone https://oauth2:$fedranAccessKey@gitlab.com/fedran/sand-and-ash.git build/repos/sand-and-ash
- 'echo "---" > build/previously.markdown'
- 'echo "title: Previously" >> build/previously.markdown'
- 'echo "---" >> build/previously.markdown'
- 'cat build/repos/sand-and-ash/spoilers/plot.markdown >> build/previously.markdown'
# Build the files.
- npm run build
- kindlegen *.epub
# Trigger the website to rebuild.
- "curl -X POST -F token=$fedranAccessKey -F ref=master https://gitlab.com/api/v4/projects/4027285/trigger/pipeline"
artifacts:
expire_in: 1 week
paths:
- "*.pdf"
- "*.epub"
- "*.mobi"
publish:
stage: publish
when: manual
script:
- echo Published
artifacts:
paths:
- "*.pdf"
- "*.epub"
- "*.mobi"
dependencies:
- review
image: dmoonfire/mfgames-writing-js:1.1.1
stages:
- publish
publish:
stage: publish
tags:
- docker
script:
# Install the basic requirements including the free fonts.
- npm ci
# Verify that the commits are good.
- npx commitlint --from=master to=CI_BUILD_REF_NAME
# Corda is a non-free font that we use for the books. It was
# picked before Source Serif Pro was created and will continue to
# be used until SSP can handle proper italics. To get around this,
# we stored it in a secret location that Gitlab CI knows about but
# everyone else does not.
- wget $CORDA_FONTS_URL/$CORDA_FONTS_BZ2BALL
- tar -xjf $CORDA_FONTS_BZ2BALL
- mkdir -p ~/.fonts/
- mv *.otf ~/.fonts/
- fc-cache -rf
# We need the covers for generation.
- mkdir -p build/repos
- git clone https://oauth2:$fedranAccessKey@gitlab.com/fedran/fedran-covers.git build/repos/fedran-covers
# Trigger the release if needed.
- npx semantic-release
# Build the files.
- npm run build
# Trigger the Fedran website to rebuild.
- "curl -X POST -F token=$fedranAccessKey -F ref=master https://gitlab.com/api/v4/projects/4027285/trigger/pipeline"
artifacts:
expire_in: 1 week
paths:
- "*.pdf"
- "*.epub"
- "*.mobi"
- "*.docx"
- "*.html"

10571
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -11,17 +11,61 @@
},
"homepage": "https://fedran.com/sand-and-bone/",
"scripts": {
"build:epub": "./node_modules/.bin/mfgames-writing-format build epub",
"build:pdf": "./node_modules/.bin/mfgames-writing-format build pdf",
"build": "npm run build:epub && npm run build:pdf"
"build:epub": "mfgames-writing-format build epub",
"build:pdf": "mfgames-writing-format build pdf",
"build": "npm run build:epub && npm run build:mobi && npm run build:pdf && npm run build:html && npm run build:docx",
"build:html": "mfgames-writing-format build html",
"build:docx": "sed 's@&#173;@@g' < dmoonfire-$npm_package_fedran_pov-$npm_package_fedran_vol-$npm_package_name-$npm_package_version.html | pandoc -f html -t docx -o dmoonfire-$npm_package_fedran_pov-$npm_package_fedran_vol-$npm_package_name-$npm_package_version.docx",
"build:mobi": "kindlegen dmoonfire-$npm_package_fedran_pov-$npm_package_fedran_vol-$npm_package_name-$npm_package_version.epub",
"commitmsg": "commitlint -E GIT_PARAMS"
},
"dependencies": {
"fedran-hyphen": "^0.2.0",
"fedran-theme": "^1.1.0",
"mfgames-writing-epub": "^1.1.1",
"mfgames-writing-format": "^1.0.1",
"mfgames-writing-hyphen": "^0.4.2",
"mfgames-writing-weasyprint": "^3.0.1",
"@fedran/writing-hyphen": "^1.0.0",
"@fedran/writing-theme": "^1.2.5",
"@mfgames-writing/epub2": "^1.1.3",
"@mfgames-writing/format": "^2.0.0",
"@mfgames-writing/guillemet": "^1.0.0",
"@mfgames-writing/html": "^0.1.1",
"@mfgames-writing/hyphen": "^0.4.3",
"@mfgames-writing/weasyprint": "^3.0.2",
"url": "^0.11.0"
},
"devDependencies": {
"@commitlint/cli": "^7.0.0",
"@commitlint/config-conventional": "^7.0.1",
"@semantic-release/changelog": "^3.0.0",
"@semantic-release/git": "^7.0.2",
"commitizen": "^2.10.1",
"cz-conventional-changelog": "^2.1.0",
"husky": "^0.14.3",
"semantic-release": "^15.9.9"
},
"release": {
"branch": "master",
"message": "chore(release): v${nextRelease.version}\n\n${nextRelease.notes}",
"verifyConditions": [
"@semantic-release/changelog",
"@semantic-release/git"
],
"analyzeCommits": [
"@semantic-release/commit-analyzer"
],
"prepare": [
"@semantic-release/changelog",
"@semantic-release/git"
],
"publish": [],
"success": [],
"fail": []
},
"commitlint": {
"extends": [
"@commitlint/config-conventional"
]
},
"config": {
"commitizen": {
"path": "./node_modules/cz-conventional-changelog"
}
}
}

View file

@ -16,15 +16,15 @@ metadata:
- Action
- Tragedy
language: en
theme: fedran-theme
theme: "@fedran/writing-theme"
outputDirectory: .
outputFilename: dmoonfire-100-02-sand-and-bone-{{edition.version}}.{{edition.editionName}}
outputFilename: dmoonfire-0100-02-sand-and-bone-{{edition.version}}.{{edition.editionName}}
editions:
epub:
format: mfgames-writing-epub
format: "@mfgames-writing/epub2"
pdf:
format: mfgames-writing-weasyprint
format: "@mfgames-writing/weasyprint"
isbn: 978-1-940509-25-9
images:
grayscale: true
@ -78,8 +78,8 @@ contents:
start: true
page: 1
pipeline: &pipelines
- module: ../../fedran-hyphen/lib/fedran-hyphen
- module: mfgames-writing-hyphen
- module: "@fedran/writing-hyphen"
- module: "@mfgames-writing/hyphen"
- element: appendix
source: backmatter/about.markdown
- element: appendix