1stages:
2  - targz_build
3  - srpm_build
4  - rpm_build
5
6before_script:
7  - sed -i -e 's/^mirror/#mirror/' -e 's/# *baseurl/baseurl/' /etc/yum.repos.d/CentOS-Base.repo
8  - sed -i -e 's/mirror.centos.org\/centos\/\($releasever\|[56]\)\/os\/$basearch/katello.corp.ifax.com\/pulp\/repos\/ifax\/Library\/custom\/centos\/centos-$releasever-$basearch/' /etc/yum.repos.d/CentOS-Base.repo
9  - sed -i -e 's/mirror.centos.org\/centos\/\($releasever\|[56]\)\/\(updates\|extras\|centosplus\)\/$basearch/katello.corp.ifax.com\/pulp\/repos\/ifax\/Library\/custom\/centos\/centos-$releasever-\2-$basearch/' /etc/yum.repos.d/CentOS-Base.repo
10  # CentOS-Sources.repo doesn't exist on base CentOS 6 install
11  - if [ -f /etc/yum.repos.d/CentOS-Sources.repo ]; then
12      sed -i -e 's/vault.centos.org\/centos\/\($releasever\|[56]\)\/os\/Source/katello.corp.ifax.com\/pulp\/repos\/ifax\/Library\/custom\/centos\/centos-$releasever-source/' /etc/yum.repos.d/CentOS-Sources.repo;
13      sed -i -e 's/vault.centos.org\/centos\/\($releasever\|[56]\)\/\(updates\|extras\|centosplus\)\/Source/katello.corp.ifax.com\/pulp\/repos\/ifax\/Library\/custom\/centos\/centos-$releasever-\2-source/' /etc/yum.repos.d/CentOS-Sources.repo;
14    fi
15# Install EPEL
16  - yum install -y epel-release
17  - sed -i -e 's/^mirror/#mirror/' -e 's/# *baseurl/baseurl/' /etc/yum.repos.d/epel.repo
18  - sed -i -e 's/download.fedoraproject.org\/pub\/epel\/[0-9]\/$basearch/katello.corp.ifax.com\/pulp\/repos\/ifax\/Library\/custom\/epel\/epel-$releasever-$basearch/' /etc/yum.repos.d/epel.repo
19  - sed -i -e 's/download.fedoraproject.org\/pub\/epel\/[0-9]\/SRPMS/katello.corp.ifax.com\/pulp\/repos\/ifax\/Library\/custom\/epel\/epel-$releasever-source/' /etc/yum.repos.d/epel.repo
20  - yum update -y
21
22
23targz_build:
24  stage: targz_build
25  image: katello.corp.ifax.com:5000/ifax-docker-centos:7
26  tags:
27  - linux
28  - docker
29  dependencies: []
30  script:
31    - yum install -y git
32    - VERSION=`cat VERSION`
33    - git archive -v --prefix hylafax-$VERSION/ -o hylafax-$VERSION.tar.gz HEAD
34  artifacts:
35    paths:
36    - ./*.tar.gz
37
38srpm_build:
39  stage: srpm_build
40  image: katello.corp.ifax.com:5000/ifax-docker-centos:7
41  tags:
42  - linux
43  - docker
44  dependencies:
45    - targz_build
46  script:
47    - yum install -y rpm-build yum-utils
48    # Required for Centos 5 macros:
49    - test -f /etc/rpm/macros.dist || yum install -y buildsys-macros
50    - mkdir -p rpmbuild/{RPMS,SOURCES,SPECS,SRPMS}
51    - ln -s .. rpmbuild/BUILD
52    - VERSION=`cat VERSION`
53    - cp -v hylafax-$VERSION.tar.gz rpmbuild/SOURCES
54    - rpmbuild --define "_topdir $CI_PROJECT_DIR/rpmbuild" --define "dist .${dist}" --nodeps -bs rpm/hylafax.spec
55    - mv rpmbuild/SRPMS/*.rpm .
56  artifacts:
57    paths:
58      - ./*.rpm
59
60.rpm_build: &rpm_build
61  tags:
62    - linux
63    - docker
64  dependencies:
65    - targz_build
66    - srpm_build
67  script:
68    # Add Development repository:
69    - file=/etc/yum.repos.d/build.repo
70    - yum install -y rpm-build yum-utils
71    # Required for Centos 5 macros:
72    - test -f /etc/rpm/macros.dist || yum install -y buildsys-macros
73    - mkdir -p rpmbuild/{RPMS,SOURCES,SPECS,SRPMS}
74    - ln -s .. rpmbuild/BUILD
75    - VERSION=`cat VERSION`
76    - cp -v hylafax-$VERSION.tar.gz rpmbuild/SOURCES
77    # Centos 5 yum-builddep can't work directly with spec file
78    # We'll remove this hack for when Centos 5 support will be removed
79    - rpmbuild --define "_topdir $CI_PROJECT_DIR/rpmbuild" --define "dist .${dist}" --nodeps -bs rpm/hylafax.spec
80    - yum-builddep -y rpmbuild/SRPMS/hylafax*.src.rpm
81    - rpmbuild --rebuild --define "_topdir $CI_PROJECT_DIR/rpmbuild" --define "dist .${dist}" -bb rpmbuild/SRPMS/hylafax-*.src.rpm
82    - mv rpmbuild/RPMS/$arch/*.rpm .
83    - rm *.src.rpm
84  artifacts:
85    paths:
86      - ./*.rpm
87
88centos7-x86_64_rpm_build:
89  stage: rpm_build
90  image: katello.corp.ifax.com:5000/ifax-docker-centos:7
91  variables:
92    dist: "el7"
93    arch: "x86_64"
94  <<: *rpm_build
95
96centos6-x86_64_rpm_build:
97  stage: rpm_build
98  image: katello.corp.ifax.com:5000/ifax-docker-centos:6
99  variables:
100    dist: "el6"
101    arch: "x86_64"
102  <<: *rpm_build
103
104centos6-i686_rpm_build:
105  stage: rpm_build
106  image: katello.corp.ifax.com:5000/ifax-docker-centos-i386:centos6
107  variables:
108    dist: "el6"
109    arch: "i686"
110  <<: *rpm_build
111
112centos5-i386_rpm_build:
113  stage: rpm_build
114  image: katello.corp.ifax.com:5000/ifax-docker-centos-i386:centos5
115  variables:
116    dist: "el5"
117    arch: "i386"
118  <<: *rpm_build
119
120
121