Skip to content

Commit

Permalink
Автоматическая сборка.
Browse files Browse the repository at this point in the history
  • Loading branch information
kutelev committed May 29, 2018
1 parent a009e2c commit ea5c382
Show file tree
Hide file tree
Showing 3 changed files with 66 additions and 0 deletions.
29 changes: 29 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
stages:
- build

build:docker_image:
stage: build
script:
- docker build --no-cache -t $CI_REGISTRY/$CI_PROJECT_PATH:$CI_COMMIT_REF_NAME .
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker push $CI_REGISTRY/$(echo $CI_PROJECT_PATH | tr 'A-Z' 'a-z'):$CI_COMMIT_REF_NAME
- docker logout $CI_REGISTRY
tags:
- fictional-goggles
when: manual

build:documents:
stage: build
image: $CI_REGISTRY/$CI_PROJECT_PATH:$CI_COMMIT_REF_NAME
script:
- apt-get install -y git
- git config core.quotePath false # Witout this line "untracked: true" will find no artifacts!
- ls -1 | egrep "^.{4}\.[0-9]{6}\.[0-9]{3}\ \([А-Яа-я ]+\)$" | xargs -n1 -I{} bash -c "cd \"{}\"; make"
- find ./ -type f -printf "%P\n" | egrep "[А-Я]{4}\.[0-9]{6}\.[0-9]{3}\ ([0-9А-Я]+\ )?\([А-Яа-я ]+\)\.pdf" > .gitignore
- git add .gitignore
- git clean -f -d -q
- git rm -f .gitignore
tags:
- docker
artifacts:
untracked: true
16 changes: 16 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
FROM ubuntu:14.04
MAINTAINER Alexander Kutelev <[email protected]>
RUN apt-get update && apt-get -y upgrade; \
echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selections; \
apt-get install -y g++ make inkscape pdftk texlive-xetex texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended texlive-lang-cyrillic locales msttcorefonts; \
apt-get install -y git wget; \
locale-gen en_US.UTF-8; dpkg-reconfigure --frontend=noninteractive locales; update-locale LANG=en_US.UTF-8; \
mkdir /root/.fonts; \
cd /root/.fonts; \
wget https://github.com/kutelev/gost_forms/blob/master/fonts/gost_a.ttf?raw=true -q -O gost_a.ttf; \
wget https://github.com/kutelev/gost_forms/blob/master/fonts/gost_ab.ttf?raw=true -q -O gost_ab.ttf; \
wget https://github.com/kutelev/gost_forms/blob/master/fonts/gost_abi.ttf?raw=true -q -O gost_abi.ttf; \
wget https://github.com/kutelev/gost_forms/blob/master/fonts/gost_ai.ttf?raw=true -q -O gost_ai.ttf; \
fc-cache -fv
ENV LC_ALL=en_US.UTF-8
WORKDIR "/root/workdir"
21 changes: 21 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
[![pipeline status](https://gitlab.com/kutelev/gost_forms/badges/master/pipeline.svg)](https://gitlab.com/kutelev/gost_forms/commits/master)

В проекте приведены примеры некоторых текстовых документов описанных в ГОСТ 2.106. На текстовые документы накладываются основные надписи, выполненные в соответствии с ГОСТ 2.104.

Для того чтобы собрать все документы необходима ОС Linux (ранее проверялось только на дистрибутивах Debian и Ubuntu) со следующими установленными пакетами:
Expand All @@ -7,4 +9,23 @@
* pdftk
* xelatex

Полный набор необходимых пакетов (справедливо для Ubuntu 14.04):
* g++
* inkscape
* locales
* make
* msttcorefonts
* pdftk
* texlive-fonts-recommended
* texlive-lang-cyrillic
* texlive-latex-extra
* texlive-latex-recommended
* texlive-xetex

Также необходимо наличие некоторых шрифтов, сами шрифты имеются в данном репозитории. Для того чтобы они стали доступны обычно достаточно просто поместить их в директорию ~/.fonts.

В данном репозитории находится образец Dockerfile'а: https://gitlab.com/kutelev/gost_forms/raw/master/Dockerfile

Готовый к использованию образ может быть получен следующим образом: docker pull registry.gitlab.com/kutelev/gost_forms:build

Примеры собранных документов доступны по ссылке: https://gitlab.com/kutelev/gost_forms/builds/artifacts/master/browse?job=build:documents

0 comments on commit ea5c382

Please sign in to comment.