Add gitlab-ci.yml to allow local and remote builds
authorvarac <varacanero@zeromail.org>
Fri, 12 May 2017 17:25:13 +0000 (19:25 +0200)
committervarac <varac@users.noreply.github.com>
Thu, 18 May 2017 11:35:38 +0000 (13:35 +0200)
See https://github.com/pixelated/pixelated-user-agent.git for
the documentation.

.gitlab-ci.yml [new file with mode: 0644]
docker/Dockerfile [new file with mode: 0644]
docker/files/apt/deb.nodesource.com.gpg [new file with mode: 0644]
docker/files/custom-vars [new file with mode: 0644]

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644 (file)
index 0000000..8fc9af8
--- /dev/null
@@ -0,0 +1,25 @@
+# To build packages locally using docker and gitlab-ci-multi-runner please follow
+# https://github.com/pixelated/pixelated-user-agent/wiki/Debian-package#build-debian-packages-locally
+
+stages:
+  - package
+
+package:
+  stage: package
+  image: "0xacab.org:4567/pixelated/pixelated-user-agent/buildpackage:latest"
+  artifacts:
+    paths:
+    - '*_*.xz'
+    - '*_*.dsc'
+    - '*_amd64.changes'
+    - '*.deb'
+    - 'results/*'
+    - '*.log'
+  script:
+    - build-build-package
+    # Test the package with lintian. Don't fail on warnings/errors.
+    - sh -c 'build-test-lintian || :'
+    - ls -la
+    # When running locally with `gitlab-runner exec` copy artifacts to mounted
+    # docker volume
+    - sh -c '( [ -d /tmp/docker_volume ] && cp -r /builds/project-0 /tmp/docker_volume ) || :'
diff --git a/docker/Dockerfile b/docker/Dockerfile
new file mode 100644 (file)
index 0000000..4b9b987
--- /dev/null
@@ -0,0 +1,21 @@
+# https://0xacab.org/pixelated/pixelated-user-agent/container_registry
+# Build with:
+#   docker build -t 0xacab.org:4567/pixelated/pixelated-user-agent/buildpackage:latest .
+#   docker login 0xacab.org:4567
+#   docker push 0xacab.org:4567/pixelated/pixelated-user-agent/buildpackage:latest
+
+FROM 0xacab.org:4567/leap/gitlab-buildpackage:build_jessie_amd64
+COPY files/apt/deb.nodesource.com.gpg /tmp/deb.nodesource.com.gpg
+RUN apt-key add /tmp/deb.nodesource.com.gpg
+
+RUN echo 'deb http://deb.nodesource.com/node_6.x jessie main' > /etc/apt/sources.list.d/node.list
+RUN apt-get update
+RUN apt-get -y dist-upgrade
+
+RUN apt-get -y install wget
+RUN wget https://github.com/pixelated/pixelated-user-agent/releases/download/1.0_beta1/pixpybuild_0.2.4-190.gbpac5d78_amd64.deb
+RUN dpkg -i pixpybuild_0.2.4-190.gbpac5d78_amd64.deb || /bin/true
+RUN apt-get -y -f install
+
+# override custom vars from LEAP
+COPY files/custom-vars /usr/local/sbin/custom-vars
diff --git a/docker/files/apt/deb.nodesource.com.gpg b/docker/files/apt/deb.nodesource.com.gpg
new file mode 100644 (file)
index 0000000..51a259c
--- /dev/null
@@ -0,0 +1,50 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+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
+=CLGF
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/docker/files/custom-vars b/docker/files/custom-vars
new file mode 100644 (file)
index 0000000..cd8d8bb
--- /dev/null
@@ -0,0 +1,18 @@
+# Set custom enviroment variables here
+# or use gitlab CI to export them either
+# in your .gitlab-ci.yml file or via
+# secret variables from the web interface
+# https://docs.gitlab.com/ce/ci/variables/README.html
+
+export DEBFULLNAME=${DEBFULLNAME:-"Pixelated automated build"}
+
+export REPOS=${REPOS:-"snapshots"}
+
+export COMPONENTS=${COMPONENTS:-"$REPOS"}
+
+export ARCH=${ARCH:-"amd64"}
+export DIST=${DIST:-"jessie"}
+
+# Lintian vars
+LINTIAN_DEFAULT_OPTS=(-X filename-length)
+export LINTIAN_OPTS=("${LINTIAN_OPTS:-${LINTIAN_DEFAULT_OPTS[@]}}")