image: dmoonfire/mfgames-writing-js:2.0.0

stages:
    - publish

publish:
    stage: publish
    only: [master]
    tags: [docker]
    script:
        # Install the basic requirements including the free fonts.
        - npm ci

        # Verify that the commits are good.
        - npx commitlint --from=$CI_BUILD_BEFORE_SHA

        # We need the cover from the general repository.
        - 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"