Sign package using custom gpg key and publish package using APTLY API

This commit is contained in:
Benjamin Renard 2022-04-29 17:17:39 +02:00
parent ccc3f09611
commit 19a1d32f8d

View file

@ -6,23 +6,30 @@ pipeline:
commands:
- DEBIAN_FRONTEND=noninteractive apt-get -qq update < /dev/null > /dev/null
- DEBIAN_FRONTEND=noninteractive apt-get -y -qq upgrade < /dev/null > /dev/null
- DEBIAN_FRONTEND=noninteractive apt-get -qq -y install --no-install-recommends python3-apt apt-file dpkg-dev fakeroot build-essential devscripts debhelper python3-wheel python3-pip < /dev/null > /dev/null
- DEBIAN_FRONTEND=noninteractive apt-get -qq -y install --no-install-recommends python3-apt apt-file dpkg-dev fakeroot build-essential devscripts debhelper python3-wheel python3-pip gnupg2 sed < /dev/null > /dev/null
- DEBIAN_FRONTEND=noninteractive apt-file update < /dev/null > /dev/null
- python3 -m pip install wheel2deb --quiet
- echo -e "$GPG_KEY"|gpg --import
- mkdir dist
- python3 -m pip wheel cx-Oracle -w dist --quiet
- wheel2deb --map attrs=attr -x dist -o dist
- wheel2deb build -p dist
- cd dist/python3-cx-oracle_*_amd64
- sed -i "s/wheel2deb <wheel2deb@upciti.com>/$GPG_NAME <$GPG_EMAIL>/" debian/changelog debian/control
- sed -i "s/unstable/$DEB_DIST/" debian/changelog
- dpkg-buildpackage
- cd ../../
- rm -fr dist/python3-cx-oracle_*_amd64
publish-dryrun:
group: publish
image: debian
when:
event: tag
commands:
- ls dist/*
publish:
publish-gitea:
group: publish
image: plugins/gitea-release
when:
event: tag
@ -31,7 +38,27 @@ pipeline:
from_secret: gitea_token
base_url: https://gitea.zionetrix.net
files:
- dist/*
- dist/*.deb
- dist/*.whl
checksum:
- md5
- sha512
publish-apt:
group: publish
image: debian
when:
event: tag
commands:
- DEBIAN_FRONTEND=noninteractive apt-get -qq update < /dev/null > /dev/null
- DEBIAN_FRONTEND=noninteractive apt-get -qq -y install --no-install-recommends curl < /dev/null > /dev/null
- curl -u $APT_CREDS -X POST -F file=@dist/python3-cx-oracle_*_amd64.deb $APT_API_URL/files/python3-cx-oracle
- curl -u $APT_CREDS -X POST -F file=@dist/python3-cx-oracle-dbgsym_*_amd64.deb $APT_API_URL/files/python3-cx-oracle
- curl -u $APT_CREDS -X POST -F file=@dist/python3-cx-oracle_*.dsc $APT_API_URL/files/python3-cx-oracle
- curl -u $APT_CREDS -X POST -F file=@dist/python3-cx-oracle_*.tar.gz $APT_API_URL/files/python3-cx-oracle
- curl -u $APT_CREDS -X POST -F file=@dist/python3-cx-oracle_*.buildinfo $APT_API_URL/files/python3-cx-oracle
- curl -u $APT_CREDS -X POST -F file=@dist/python3-cx-oracle_*.changes $APT_API_URL/files/python3-cx-oracle
- curl -u $APT_CREDS -X POST $APT_API_URL/repos/$APT_REPO_NAME/include/python3-cx-oracle
- APT_SNAP_NAME=$(date +%s)_$APT_REPO_NAME
- curl -u $APT_CREDS -X POST -H 'Content-Type: application/json' --data "{\"Name\":\"$APT_SNAP_NAME\"}" $APT_API_URL/repos/$APT_REPO_NAME/snapshots
- curl -u $APT_CREDS -X PUT -H 'Content-Type: application/json' --data "{\"Snapshots\": [{\"Component\": \"main\", \"Name\": \"$APT_SNAP_NAME\"}]}" $APT_API_URL/publish/:./$APT_REPO_NAME