projects: - project: dummy-ikiwiki parameters: &ikiwiki_params rsync_src: html systree_name: systrees-debian-stretch-distix notify: [liw@liw.fi] pipelines: &ikiwiki_pipelines - ick/setup_container - ick/get_sources - ql_ikiwiki_publish - project: ick.liw.fi parameters: <<: *ikiwiki_params rsync_target: ickliwfi@ick.liw.fi:/srv/http/ick.liw.fi sources: - name: source ref: master location: src repo: git://git.liw.fi/ick.liw.fi pipelines: *ikiwiki_pipelines - project: journal.liw.fi parameters: <<: *ikiwiki_params rsync_target: ickliwfi@journal.liw.fi:/srv/http/journal.liw.fi sources: - name: source ref: master location: src repo: ssh://git@git.liw.fi/private/liw/Journal pipelines: *ikiwiki_pipelines - project: manifesto parameters: <<: *ikiwiki_params rsync_target: ickliwfi@manifesto.liw.fi:/srv/http/manifesto.liw.fi sources: - name: source ref: master location: src repo: ssh://git@git.liw.fi/private/liw/manifesto pipelines: *ikiwiki_pipelines - project: fable.liw.fi parameters: <<: *ikiwiki_params rsync_target: ickliwfi@fable.liw.fi:/srv/http/fable.liw.fi sources: - name: source ref: master location: src repo: git://git.liw.fi/fable.liw.fi notify: - liw@liw.fi - dsilvers@digital-scurf.org pipelines: *ikiwiki_pipelines - project: vmdb2.liw.fi parameters: <<: *ikiwiki_params rsync_target: ickliwfi@vmdb2.liw.fi:/srv/http/vmdb2.liw.fi sources: - name: source ref: master location: src repo: git://git.liw.fi/vmdb2.liw.fi pipelines: *ikiwiki_pipelines - project: noir.liw.fi parameters: <<: *ikiwiki_params rsync_target: ickliwfi@noir.liw.fi:/srv/http/noir.liw.fi sources: - name: source ref: master location: src repo: git://git.liw.fi/noir.liw.fi pipelines: *ikiwiki_pipelines - project: intra.qvarnlabs.net parameters: <<: *ikiwiki_params notify: [liw@qvarnlabs.com, ivan@qvarnlabs.com] rsync_target: static@static.qvarnlabs.net:/srv/http/intra.qvarnlabs.net sources: - name: source ref: master location: src repo: ssh://git@git.qvarnlabs.net/intrawiki pipelines: *ikiwiki_pipelines - project: www.qvarn.org parameters: <<: *ikiwiki_params notify: [liw@qvarnlabs.com, ivan@qvarnlabs.com] rsync_target: static@static.qvarnlabs.net:/srv/http/www.qvarn.org sources: - name: source ref: master location: src repo: ssh://git@git.qvarnlabs.net/www.qvarn.org pipelines: *ikiwiki_pipelines - project: www.qvarnlabs.com parameters: <<: *ikiwiki_params notify: [liw@qvarnlabs.com, ivan@qvarnlabs.com] rsync_target: static@static.qvarnlabs.net:/srv/http/www.qvarnlabs.com sources: - name: source ref: master location: src repo: ssh://git@git.qvarnlabs.net/www.qvarnlabs.com pipelines: *ikiwiki_pipelines - project: ick-biz.liw.fi parameters: <<: *ikiwiki_params notify: [liw@liw.fi] rsync_target: ickliwfi@pieni.net:/srv/http/ick-biz.liw.fi sources: - name: source ref: master location: src repo: ssh://git@git.liw.fi/ick-biz pipelines: *ikiwiki_pipelines - project: effireg.liw.fi parameters: <<: *ikiwiki_params rsync_target: ickliwfi@pieni.net:/srv/http/effireg.liw.fi sources: - name: source ref: master location: src repo: git://git.liw.fi/effireg-website pipelines: *ikiwiki_pipelines - project: ick-yarns.liw.fi parameters: sources: - name: code ref: master location: src repo: git://git.liw.fi/ick2 rsync_src: html rsync_target: ickliwfi@pieni.net:/srv/http/ick-yarns.liw.fi systree_name: systrees-debian-stretch-distix notify: [liw@liw.fi] pipelines: - ick/setup_container - ick/get_sources - publish_yarns - project: ick-pres.liw.fi parameters: sources: - name: source ref: master location: src repo: ssh://git@git.liw.fi/ick2-pres rsync_src: html rsync_target: ickliwfi@pieni.net:/srv/http/ick-pres.liw.fi systree_name: systrees-debian-stretch-distix notify: [liw@liw.fi] pipelines: - ick/setup_container - ick/get_sources - git_export_website - project: vmdb2-manual parameters: sources: - name: source ref: master location: src repo: git://git.liw.fi/vmdb2 rsync_src: html rsync_target: ickliwfi@vmdb2-manual.liw.fi:/srv/http/vmdb2-manual.liw.fi systree_name: systrees-debian-sid-build-essential notify: [liw@liw.fi] pipelines: - ick/setup_container - ick/get_sources - publish_vmdb2_manual pipelines: - pipeline: ql_ikiwiki_publish parameters: - sources - rsync_src - rsync_target actions: - python: | import os, re env = dict(os.environ) env['LC_ALL'] = 'fi_FI.UTF8' sources = params['sources'] for source in sources: dirname = source['location'] RUN('rm', '-rf', 'html', 'tmp') RUN('ql-ikiwiki-preprocess', dirname, 'tmp', env=env) RUN('find', '-ls') RUN('sed', '-i', '/^srcdir:/d', 'tmp/ikiwiki.setup', env=env) RUN('sed', '-i', '/^destdir:/d', 'tmp/ikiwiki.setup', env=env) with open('tmp/ikiwiki.setup', 'a') as f: f.write('srcdir: /workspace/tmp\n') f.write('destdir: /workspace/html\n') RUN('ikiwiki', '--setup', 'tmp/ikiwiki.setup', '--verbose', env=env) where: container - action: rsync where: host - pipeline: publish_yarns parameters: - rsync_src - rsync_target actions: - shell: | mkdir html cd src/yarns pandoc \ --toc \ --standalone \ --self-contained \ -H yarn.css \ -o /workspace/html/index.html \ *.yarn where: container - action: rsync where: host - pipeline: git_export_website parameters: - rsync_src - rsync_target actions: - shell: | html="$(params | jq -r .rsync_src)" mkdir "$html" cd src git archive HEAD | tar -C "../$html" -xf - where: container - action: rsync where: host - pipeline: publish_vmdb2_manual parameters: - rsync_src - rsync_target actions: - shell: | apt update apt dist-upgrade -y apt install -y pandoc texlive texlive-xetex fonts-freefont-ttf mkdir html cd src ./format.sh cp vmdb2.html ../html/index.html cp vmdb2.pdf ../html/vmdb2.pdf where: container - action: rsync where: host