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/ build/
.backup/ tmp/
t/
node_modules/ node_modules/
cover-??.png # Output
cover-??-*.png *-*.*.*.epub
*-*.*.*.pdf
# XML Files that are generated or copied around. *-*.*.*.mobi
about.xml *-*.*.*.html
curiouscabbit.xml *-*.*.*.docx
# Other generated files
abbrev.el
latex.out
# Covers
backmatter/*.jpg

View file

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

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/", "homepage": "https://fedran.com/sand-and-bone/",
"scripts": { "scripts": {
"build:epub": "./node_modules/.bin/mfgames-writing-format build epub", "build:epub": "mfgames-writing-format build epub",
"build:pdf": "./node_modules/.bin/mfgames-writing-format build pdf", "build:pdf": "mfgames-writing-format build pdf",
"build": "npm run build:epub && npm run 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": { "dependencies": {
"fedran-hyphen": "^0.2.0", "@fedran/writing-hyphen": "^1.0.0",
"fedran-theme": "^1.1.0", "@fedran/writing-theme": "^1.2.5",
"mfgames-writing-epub": "^1.1.1", "@mfgames-writing/epub2": "^1.1.3",
"mfgames-writing-format": "^1.0.1", "@mfgames-writing/format": "^2.0.0",
"mfgames-writing-hyphen": "^0.4.2", "@mfgames-writing/guillemet": "^1.0.0",
"mfgames-writing-weasyprint": "^3.0.1", "@mfgames-writing/html": "^0.1.1",
"@mfgames-writing/hyphen": "^0.4.3",
"@mfgames-writing/weasyprint": "^3.0.2",
"url": "^0.11.0" "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 - Action
- Tragedy - Tragedy
language: en language: en
theme: fedran-theme theme: "@fedran/writing-theme"
outputDirectory: . outputDirectory: .
outputFilename: dmoonfire-100-02-sand-and-bone-{{edition.version}}.{{edition.editionName}} outputFilename: dmoonfire-0100-02-sand-and-bone-{{edition.version}}.{{edition.editionName}}
editions: editions:
epub: epub:
format: mfgames-writing-epub format: "@mfgames-writing/epub2"
pdf: pdf:
format: mfgames-writing-weasyprint format: "@mfgames-writing/weasyprint"
isbn: 978-1-940509-25-9 isbn: 978-1-940509-25-9
images: images:
grayscale: true grayscale: true
@ -78,8 +78,8 @@ contents:
start: true start: true
page: 1 page: 1
pipeline: &pipelines pipeline: &pipelines
- module: ../../fedran-hyphen/lib/fedran-hyphen - module: "@fedran/writing-hyphen"
- module: mfgames-writing-hyphen - module: "@mfgames-writing/hyphen"
- element: appendix - element: appendix
source: backmatter/about.markdown source: backmatter/about.markdown
- element: appendix - element: appendix