Skip to content

Commit 724a672

Browse files
committed
chore(ci): use reliable ci system
1 parent a730598 commit 724a672

File tree

3 files changed

+130
-21
lines changed

3 files changed

+130
-21
lines changed

.gitlab-ci.yml

+96
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
image: python:3.7
2+
3+
stages:
4+
- lint
5+
- build-test-image
6+
- test
7+
- deploy
8+
9+
commitlint:
10+
image: node:12
11+
stage: lint
12+
before_script:
13+
- npm install -g @commitlint/cli @commitlint/config-conventional
14+
- 'echo "module.exports = {extends: [\"@commitlint/config-conventional\"]}" > commitlint.config.js'
15+
script:
16+
- npx commitlint --from=origin/master
17+
except:
18+
- master
19+
20+
#build_test_image: # Currently hangs forever, because of GitLab Runner infrastructure issues
21+
# stage: build-test-image
22+
# image:
23+
# name: gcr.io/kaniko-project/executor:debug
24+
# entrypoint: [""]
25+
# script:
26+
# - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
27+
# - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/tools/Dockerfile-test --destination $CI_REGISTRY_IMAGE:test
28+
# only:
29+
# refs:
30+
# - master
31+
# changes:
32+
# - tools/
33+
34+
.tox_includes: &tox_includes
35+
stage: test
36+
before_script:
37+
- pip install tox
38+
script:
39+
- tox -e $TOX_ENV
40+
41+
test_2.7:
42+
<<: *tox_includes
43+
image: python:2.7
44+
variables:
45+
TOX_ENV: py27
46+
47+
test_3.4:
48+
<<: *tox_includes
49+
image: python:3.4
50+
variables:
51+
TOX_ENV: py34
52+
53+
test_3.5:
54+
<<: *tox_includes
55+
image: python:3.5
56+
variables:
57+
TOX_ENV: py35
58+
59+
test_3.6:
60+
<<: *tox_includes
61+
image: python:3.6
62+
variables:
63+
TOX_ENV: py36
64+
65+
test_3.7:
66+
<<: *tox_includes
67+
image: python:3.7
68+
variables:
69+
TOX_ENV: py37
70+
71+
test_3.8:
72+
<<: *tox_includes
73+
image: python:3.8-rc-alpine
74+
variables:
75+
TOX_ENV: py38
76+
allow_failure: true
77+
78+
test_docs:
79+
<<: *tox_includes
80+
variables:
81+
TOX_ENV: docs
82+
83+
deploy:
84+
stage: deploy
85+
script:
86+
- pip install -U setuptools wheel twine
87+
- python setup.py sdist bdist_wheel
88+
# test package
89+
- python3 -m venv test
90+
- . test/bin/activate
91+
- pip install -U dist/python-gitlab*.whl
92+
- gitlab -h
93+
- deactivate
94+
- twine upload --skip-existing -u $TWINE_USERNAME -p $TWINE_PASSWORD dist/*
95+
only:
96+
- tags

.travis.yml

-21
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,12 @@
11
sudo: required
22
services:
33
- docker
4-
addons:
5-
apt:
6-
sources:
7-
- deadsnakes
8-
packages:
9-
- python3.5
104
language: python
115
python: 2.7
126
env:
13-
- TOX_ENV=py35
14-
- TOX_ENV=py34
15-
- TOX_ENV=py27
16-
- TOX_ENV=pep8
17-
- TOX_ENV=docs
187
- TOX_ENV=py_func_v4
198
- TOX_ENV=cli_func_v4
209
install:
2110
- pip install tox
2211
script:
2312
- tox -e $TOX_ENV
24-
25-
deploy:
26-
provider: pypi
27-
user: max-wittig
28-
password:
29-
secure: LmNkZdbNe1oBSJ/PeTCKXaeu9Ml/biY4ZN4aedbD4lLXbxV/sgsHEE4N1Xrg2D/CJsnNjBY7CHzO0vL5iak8IRpV61xkdquZHvAUQKuhjMY30HopReAEw8sP+Wpf3lYcD1BjC5KT9vqWG99feoQ6epRt//Xm4DdkBYNmmUsCsMBTZLlGnj3B/mE8w+XQxQpdA2QzpRJ549N12vidwZRKqP0Zuug3rELVSo64O2bpqarKx/EeUUhTXZ0Y4XeVYgvuHBjvPqtuSJzR17CNkjaBhacD7EFTP34sAaCKGRDpfYiiiGx9LeKOEAv5Hj0+LOqEC/o6EyiIFviE+HvLQ/kBLJ6Oo2p47fibyIU/YOAFdZYKmBRq2ZUaV0DhhuuCRPZ+yLrsuaFRrKTVEMsHVtdsXJkW5gKG08vwOndW+kamppRhkAcdFVyokIgu/6nPBRWMuS6ue2aKoKRdP2gmqk0daKM1ao2uv06A2/J1/xkPy1EX5MjyK8Mh78ooKjITp5DHYn8l1pxaB0YcEkRzfwMyLErGQaRDgo7rCOm0tTRNhArkn0VE1/KLKFbATo2NSxZDwUJQ5TBNCEqfdBN1VzNEduJ7ajbZpq3DsBRM/9hzQ5LLxn7azMl9m+WmT12Qcgz25wg2Sgbs9Z2rT6fto5h8GSLpy8ReHo+S6fALJBzA4pg=
30-
distributions: sdist bdist_wheel
31-
on:
32-
tags: true
33-
skip_existing: true

tools/Dockerfile-test

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
FROM ubuntu:16.04
2+
# based on Vincent Robert <vincent.robert@genezys.net> initial Dockerfile
3+
MAINTAINER Gauvain Pocentek <gauvain@pocentek.net>
4+
5+
# Install required packages
6+
RUN apt-get update \
7+
&& apt-get install -qy --no-install-recommends \
8+
openssh-server \
9+
ca-certificates \
10+
curl \
11+
tzdata \
12+
&& curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash \
13+
&& apt-get install -qy --no-install-recommends \
14+
gitlab-ce=11.10.0-ce.0
15+
16+
# Manage SSHD through runit
17+
RUN mkdir -p /opt/gitlab/sv/sshd/supervise \
18+
&& mkfifo /opt/gitlab/sv/sshd/supervise/ok \
19+
&& printf "#!/bin/sh\nexec 2>&1\numask 077\nexec /usr/sbin/sshd -D" > /opt/gitlab/sv/sshd/run \
20+
&& chmod a+x /opt/gitlab/sv/sshd/run \
21+
&& ln -s /opt/gitlab/sv/sshd /opt/gitlab/service \
22+
&& mkdir -p /var/run/sshd
23+
24+
# Default root password
25+
RUN echo "gitlab_rails['initial_root_password'] = '5iveL!fe'" >> /etc/gitlab/gitlab.rb; \
26+
sed -i "s,^external_url.*,external_url 'http://gitlab.test'," /etc/gitlab/gitlab.rb; \
27+
echo 'pages_external_url "http://pages.gitlab.lxd/"' >> /etc/gitlab/gitlab.rb; \
28+
echo "gitlab_pages['enable'] = true" >> /etc/gitlab/gitlab.rb
29+
30+
# Expose web & ssh
31+
EXPOSE 80 22
32+
33+
# Default is to run runit & reconfigure
34+
CMD sleep 3 && gitlab-ctl reconfigure & /opt/gitlab/embedded/bin/runsvdir-start

0 commit comments

Comments
 (0)