-
Notifications
You must be signed in to change notification settings - Fork 28
/
.gitlab-ci.yml
79 lines (75 loc) · 2.97 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
stages:
- deploy
- deploy-to-aur
deploy-to-github:
stage: deploy
image: iffregistry.fz-juelich.de/docker-images/gr-build-images/deploy
variables:
GIT_STRATEGY: none
only:
- master@Scientific-IT-Systems/administration/nojava-ipmi-kvm
- develop@Scientific-IT-Systems/administration/nojava-ipmi-kvm
- tags@Scientific-IT-Systems/administration/nojava-ipmi-kvm
script:
- mkdir --mode=700 ~/.ssh/
- (umask 0377 && echo "${GITHUB_DEPLOY_KEY}" > ~/.ssh/id_rsa
&& echo "github.com ${GITHUB_HOST_KEY}" >> ~/.ssh/known_hosts)
- git clone --mirror "${CI_REPOSITORY_URL}" "${CI_PROJECT_NAME}_mirror"
- cd "${CI_PROJECT_NAME}_mirror";
git push --mirror "[email protected]:sciapp/${CI_PROJECT_NAME}.git";
cd ..
deploy-to-dockerhub:
image: docker:latest
stage: deploy
script:
- apk add --no-cache make python3
- make -C docker PYTHON=python3 build-openjdk build-html5
- docker login -u "${DOCKERHUB_USER}" -p "${DOCKERHUB_SECRET}"
- for openjdk_version in 7 8; do
docker push "${DOCKERHUB_NAMESPACE}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG}-openjdk-${openjdk_version}";
docker push "${DOCKERHUB_NAMESPACE}/${CI_PROJECT_NAME}:latest-openjdk-${openjdk_version}";
done
- docker push "${DOCKERHUB_NAMESPACE}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG}-html5" ;
docker push "${DOCKERHUB_NAMESPACE}/${CI_PROJECT_NAME}:latest-html5"
only:
- tags@Scientific-IT-Systems/administration/nojava-ipmi-kvm
deploy-to-pypi:
stage: deploy
image: python:3-slim
only:
- tags@Scientific-IT-Systems/administration/nojava-ipmi-kvm
script:
- pip install twine
- echo "[distutils]" > ~/.pypirc;
echo "index-servers =" >> ~/.pypirc;
echo " pypi" >> ~/.pypirc;
echo "[pypi]" >> ~/.pypirc;
echo "username = __token__" >> ~/.pypirc;
echo "password = ${PYPI_DEPLOY_KEY}" >> ~/.pypirc;
- python setup.py sdist
- python setup.py bdist_wheel
- twine upload dist/*
deploy-to-aur:
stage: deploy-to-aur
image: iffregistry.fz-juelich.de/docker-images/gr-build-images/${CI_JOB_NAME}
only:
- tags@Scientific-IT-Systems/administration/nojava-ipmi-kvm
script:
- mkdir --mode=700 ~/.ssh/
- (umask 0377 && echo "${AUR_PRIVATE_KEY}" > ~/.ssh/id_rsa
&& echo "aur.archlinux.org ${AUR_HOST_KEY}" >> ~/.ssh/known_hosts)
- for suffix in docker podman; do
git clone "ssh://[email protected]/nojava-ipmi-kvm-${suffix}.git" "nojava-ipmi-kvm-${suffix}-aur";
cd "nojava-ipmi-kvm-${suffix}-aur";
sed -i -e "/^pkgver=/c\pkgver=\"${CI_COMMIT_TAG#v}\"" -e "/^pkgrel=/c\pkgrel=\"1\"" PKGBUILD;
(
source PKGBUILD;
curl -o source -L "${source[0]}";
SHA256SUM="$(sha256sum source | awk '{ print $1 }')";
sed -i "/^sha256sums=/c\sha256sums=(\"${SHA256SUM}\")" PKGBUILD;
);
makepkg --printsrcinfo > .SRCINFO;
git commit -a -m "Update to version ${CI_COMMIT_TAG#v}";
git push;
cd ..;
done