chore: remove keycloak-25 (superseded by -26), ripe-atlas (provided by upstream repo) and woodpecker (no longer used)
All checks were successful
/ ansible-semaphore (push) Successful in 1m54s
/ daliserver (push) Successful in 1m47s
/ forgejo (push) Successful in 2m56s
/ forgejo-runner (push) Successful in 1m13s
/ http-mqtt-bridge (push) Successful in 2m48s
/ keycloak-26 (push) Successful in 3m39s
/ linux-diversion-ath-regd-optional (push) Successful in 12m38s
/ lottieconverter (push) Successful in 47s
/ matterbridge (push) Successful in 2m16s
/ matrix-element-web (push) Successful in 2m16s
/ matrix-hydrogen (push) Successful in 1m7s
/ matrix.to (push) Successful in 3m27s
/ maubot (push) Successful in 5m7s
/ maubot-plugin-spaceapi (push) Successful in 1m24s
/ maubot-plugin-ultimaker (push) Successful in 1m16s
/ mautrix-signal (push) Successful in 1m10s
/ mautrix-telegram (push) Successful in 1m5s
/ mediawiki-extension-auth-remoteuser (push) Successful in 1m7s
/ mediawiki-extension-nativesvghandler (push) Successful in 52s
/ mediawiki-extension-openidconnect (push) Successful in 1m22s
/ mediawiki-extension-pluggableauth (push) Successful in 24s
/ mqtt2prometheus (push) Successful in 1m12s
/ prometheus-ipmi-exporter (push) Successful in 1m0s
/ prometheus-dnsbl-exporter (push) Successful in 51s
/ prometheus2influxdb (push) Successful in 54s
/ python3-mautrix (push) Successful in 21s
/ python3-telethon (push) Successful in 1m8s
/ repo.s3lph.me-apt-source (push) Successful in 15s
/ republik-feeder (push) Successful in 1m6s
All checks were successful
/ ansible-semaphore (push) Successful in 1m54s
/ daliserver (push) Successful in 1m47s
/ forgejo (push) Successful in 2m56s
/ forgejo-runner (push) Successful in 1m13s
/ http-mqtt-bridge (push) Successful in 2m48s
/ keycloak-26 (push) Successful in 3m39s
/ linux-diversion-ath-regd-optional (push) Successful in 12m38s
/ lottieconverter (push) Successful in 47s
/ matterbridge (push) Successful in 2m16s
/ matrix-element-web (push) Successful in 2m16s
/ matrix-hydrogen (push) Successful in 1m7s
/ matrix.to (push) Successful in 3m27s
/ maubot (push) Successful in 5m7s
/ maubot-plugin-spaceapi (push) Successful in 1m24s
/ maubot-plugin-ultimaker (push) Successful in 1m16s
/ mautrix-signal (push) Successful in 1m10s
/ mautrix-telegram (push) Successful in 1m5s
/ mediawiki-extension-auth-remoteuser (push) Successful in 1m7s
/ mediawiki-extension-nativesvghandler (push) Successful in 52s
/ mediawiki-extension-openidconnect (push) Successful in 1m22s
/ mediawiki-extension-pluggableauth (push) Successful in 24s
/ mqtt2prometheus (push) Successful in 1m12s
/ prometheus-ipmi-exporter (push) Successful in 1m0s
/ prometheus-dnsbl-exporter (push) Successful in 51s
/ prometheus2influxdb (push) Successful in 54s
/ python3-mautrix (push) Successful in 21s
/ python3-telethon (push) Successful in 1m8s
/ repo.s3lph.me-apt-source (push) Successful in 15s
/ republik-feeder (push) Successful in 1m6s
This commit is contained in:
parent
cdf3074fbb
commit
630f4ca015
38 changed files with 0 additions and 823 deletions
|
@ -38,7 +38,6 @@ jobs:
|
|||
forgejo: *job
|
||||
forgejo-runner: *job
|
||||
http-mqtt-bridge: *job
|
||||
keycloak-25: *job
|
||||
keycloak-26: *job
|
||||
linux-diversion-ath-regd-optional: *job
|
||||
lottieconverter: *job
|
||||
|
@ -63,6 +62,3 @@ jobs:
|
|||
python3-telethon: *job
|
||||
repo.s3lph.me-apt-source: *job
|
||||
republik-feeder: *job
|
||||
ripe-atlas: *job
|
||||
woodpecker-agent: *job
|
||||
woodpecker-cli: *job
|
||||
|
|
|
@ -14,7 +14,6 @@ information, please see [https://repo.s3lph.me/](https://repo.s3lph.me/).
|
|||
- [forgejo](https://codeberg.org/forgejo/forgejo)
|
||||
- [forgejo-runner](https://code.forgejo.org/forgejo/runner)
|
||||
- [http-mqtt-bridge](https://github.com/subzerobo/http-mqtt-bridge)
|
||||
- [keycloak-25](https://github.com/keycloak/keycloak)
|
||||
- [keycloak-26](https://github.com/keycloak/keycloak)
|
||||
- [linux-diversion-ath-regd-optional](https://github.com/twisteroidambassador/arch-linux-ath-user-regd/issues/1)
|
||||
- [lottieconverter](https://github.com/sot-tech/LottieConverter)
|
||||
|
@ -39,9 +38,3 @@ information, please see [https://repo.s3lph.me/](https://repo.s3lph.me/).
|
|||
- [python3-telethon](https://github.com/tulir/Telethon)
|
||||
- [repo.s3lph.me-apt-source](https://repo.s3lph.me)
|
||||
- [republik-feeder](https://github.com/maetthu/republik-feeder)
|
||||
- [ripe-atlas-anchor](https://github.com/RIPE-NCC/ripe-atlas-software-probe)
|
||||
- [ripe-atlas-common](https://github.com/RIPE-NCC/ripe-atlas-software-probe)
|
||||
- [ripe-atlas-probe](https://github.com/RIPE-NCC/ripe-atlas-software-probe)
|
||||
- [woodpecker-agent](https://github.com/woodpecker-ci/woodpecker)
|
||||
- [woodpecker-cli](https://github.com/woodpecker-ci/woodpecker)
|
||||
- [woodpecker-server](https://github.com/woodpecker-ci/woodpecker)
|
||||
|
|
|
@ -1,68 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
. ../.skel/helpers.sh
|
||||
|
||||
MAJOR_VERSION=25
|
||||
export PKGNAME="keycloak-${MAJOR_VERSION}"
|
||||
|
||||
API_URL="https://api.github.com/repos/keycloak/keycloak/releases"
|
||||
JQ_EXPR='.[] | select( .prerelease==false and .draft==false and .target_commitish=="main" ) | "\(.name) \(.published_at) \(.assets[] | select( .name|test("keycloak-'${MAJOR_VERSION}'.*.tar.gz$") ).browser_download_url)"'
|
||||
|
||||
ROOT=$(pwd)
|
||||
|
||||
function fetch() {
|
||||
cd "${SRCDIR}"
|
||||
wget "${URL}" --output-document "keycloak-${VERSION}.tar.gz"
|
||||
tar -xf "keycloak-${VERSION}.tar.gz"
|
||||
}
|
||||
|
||||
function prepare() {
|
||||
mkdir -p \
|
||||
"${PKGDIR}/DEBIAN" \
|
||||
"${PKGDIR}/opt/" \
|
||||
"${PKGDIR}/lib/systemd/system" \
|
||||
"${PKGDIR}/etc/apache2/sites-available" \
|
||||
"${PKGDIR}/usr/share/doc/${PKGNAME}"
|
||||
cp -r "${SRCDIR}/keycloak-${VERSION}" "${PKGDIR}/opt/keycloak/"
|
||||
mv "${PKGDIR}/opt/keycloak/conf" "${PKGDIR}/etc/keycloak/"
|
||||
ln -s /etc/keycloak "${PKGDIR}/opt/keycloak/conf"
|
||||
mkdir -p \
|
||||
"${PKGDIR}/opt/keycloak/data" \
|
||||
"${PKGDIR}/opt/keycloak/ObjectStore"
|
||||
rm "${PKGDIR}/opt/keycloak/bin/kc.bat" \
|
||||
"${PKGDIR}/etc/keycloak/README.md"
|
||||
cp "${ROOT}/debian.control" "${PKGDIR}/DEBIAN/control"
|
||||
cp "${ROOT}/debian.conffiles" "${PKGDIR}/DEBIAN/conffiles"
|
||||
cp "${ROOT}/debian.postinst" "${PKGDIR}/DEBIAN/postinst"
|
||||
cp "${ROOT}/keycloak.service" "${PKGDIR}/lib/systemd/system/"
|
||||
cp "${ROOT}/keycloak.site.conf" "${PKGDIR}/etc/apache2/sites-available/"
|
||||
sed -re "s/__VERSION__/${VERSION}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
sed -re "s/__MAINTAINER__/${MAINTAINER}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
cp "${ROOT}/debian.copyright" "${PKGDIR}/usr/share/doc/${PKGNAME}/copyright"
|
||||
github_changelog keycloak/keycloak
|
||||
find "${PKGDIR}" -exec touch -m --reference "${SRCDIR}/keycloak-${VERSION}/version.txt" {} \;
|
||||
}
|
||||
|
||||
function package() {
|
||||
cd "${BUILDDIR}"
|
||||
dpkg-deb --build "${PKGDIR}" "${BUILDDIR}"
|
||||
}
|
||||
|
||||
function build() {
|
||||
read VERSION ISODATE URL <<<$(curl "${API_URL}" | jq -r "${JQ_EXPR}" | head -1)
|
||||
export VERSION
|
||||
export ISODATE
|
||||
export URL
|
||||
export BUILDDIR=${ROOT}/build
|
||||
export SRCDIR=${ROOT}/build/srcdir
|
||||
export PKGDIR=${ROOT}/build/pkgdir
|
||||
mkdir -p ${SRCDIR} ${PKGDIR}
|
||||
fetch
|
||||
prepare
|
||||
package
|
||||
}
|
||||
|
||||
|
||||
build
|
|
@ -1,3 +0,0 @@
|
|||
/etc/apache2/sites-available/keycloak.site.conf
|
||||
/etc/keycloak/cache-ispn.xml
|
||||
/etc/keycloak/keycloak.conf
|
|
@ -1,16 +0,0 @@
|
|||
Package: keycloak-25
|
||||
Version: __VERSION__
|
||||
Maintainer: __MAINTAINER__
|
||||
Section: web
|
||||
Priority: optional
|
||||
Architecture: all
|
||||
Depends: default-jdk-headless (>=2:1.17), default-jdk-headless (<<2:1.22)
|
||||
Suggests: apache2, postgresql
|
||||
Provides: keycloak
|
||||
Conflicts: keycloak
|
||||
Replaces: keycloak
|
||||
Description: Open Source Identity and Access Management
|
||||
Add authentication to applications and secure services with minimum
|
||||
effort. No need to deal with storing users or authenticating users.
|
||||
Keycloak provides user federation, strong authentication, user
|
||||
management, fine-grained authorization, and more.
|
|
@ -1,6 +0,0 @@
|
|||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Source: https://github.com/keycloak/keycloak
|
||||
|
||||
Files: *
|
||||
License: Apache-2.0
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "configure" ]]; then
|
||||
|
||||
if ! getent group keycloak >/dev/null; then
|
||||
groupadd --system keycloak
|
||||
fi
|
||||
|
||||
if ! getent passwd keycloak >/dev/null; then
|
||||
useradd --system --gid keycloak --home-dir /opt/keycloak --shell /bin/false keycloak
|
||||
fi
|
||||
|
||||
chown root:keycloak /opt/keycloak /etc/keycloak
|
||||
chown keycloak:keycloak -R /opt/keycloak/lib/quarkus /opt/keycloak/data /opt/keycloak/ObjectStore
|
||||
chmod 0750 /etc/keycloak
|
||||
|
||||
deb-systemd-helper enable keycloak.service
|
||||
deb-systemd-invoke restart keycloak.service
|
||||
|
||||
fi
|
|
@ -1,16 +0,0 @@
|
|||
[Unit]
|
||||
Description=Keycloak
|
||||
#Requires=mysql.service
|
||||
#Requires=mariadb.service
|
||||
#Requires=postgresql.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/opt/keycloak/bin/kc.sh start
|
||||
Restart=always
|
||||
User=keycloak
|
||||
Group=keycloak
|
||||
WorkingDirectory=/opt/keycloak
|
||||
CapabilityBoundingSet=
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -1,31 +0,0 @@
|
|||
<VirtualHost *:80>
|
||||
|
||||
ServerName keycloak.example.org
|
||||
|
||||
DocumentRoot /var/www/html
|
||||
|
||||
ProxyPass /js/ http://localhost:8080/js/
|
||||
ProxyPassReverse /js/ http://localhost:8080/js/
|
||||
ProxyPass /realms/ http://localhost:8080/realms/
|
||||
ProxyPassReverse /realms/ http://localhost:8080/realms/
|
||||
ProxyPass /resources/ http://localhost:8080/resources/
|
||||
ProxyPassReverse /resources/ http://localhost:8080/resources/
|
||||
|
||||
# Redirect root to user account management
|
||||
RewriteEngine on
|
||||
RewriteRule ^/?$ /realms/EXAMPLE/account [L,R]
|
||||
|
||||
## Test client that dumps the id_token
|
||||
#OIDCProviderMetadataURL https://keycloak.example.org/realms/EXAMPLE/.well-known/openid-configuration
|
||||
#OIDCClientID foo
|
||||
#OIDCClientSecret bar
|
||||
#OIDCRedirectURI https://keycloak.example.org/test-client/redirect
|
||||
#OIDCCryptoPassphrase supersecurepassword
|
||||
#OIDCInfoHook id_token
|
||||
#<Location /test-client>
|
||||
# AuthType openid-connect
|
||||
# Require valid-user
|
||||
# RewriteRule .* /test-client/redirect?info=html
|
||||
#</Location>
|
||||
|
||||
</VirtualHost>
|
|
@ -1,17 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
ROOT=$(pwd)
|
||||
|
||||
export BUILDDIR="${ROOT}/build"
|
||||
export SRCDIR="${ROOT}/build/srcdir"
|
||||
mkdir -p "${SRCDIR}"
|
||||
|
||||
cd "${SRCDIR}"
|
||||
apt install --yes git build-essential debhelper libssl-dev autotools-dev
|
||||
git clone --recursive https://github.com/RIPE-NCC/ripe-atlas-software-probe
|
||||
cd ripe-atlas-software-probe
|
||||
git submodule update
|
||||
dpkg-buildpackage -b -us -uc
|
||||
mv ../ripe-atlas-*.deb "${BUILDDIR}"
|
|
@ -1 +0,0 @@
|
|||
{}
|
|
@ -1,58 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
API_URL=https://api.github.com/repos/woodpecker-ci/woodpecker/releases
|
||||
JQ_EXPR='.[] | select( .prerelease==false and .draft==false ) | "\(.tag_name[1:]) \(.published_at) \(.assets[] | select( .name=="woodpecker-agent_linux_amd64.tar.gz" ).browser_download_url)"'
|
||||
|
||||
ROOT=$(pwd)
|
||||
BUILDDIR=${ROOT}/build
|
||||
SRCDIR=${BUILDDIR}/srcdir
|
||||
PKGDIR=${BUILDDIR}/pkgdir
|
||||
|
||||
function fetch() {
|
||||
cd "${SRCDIR}"
|
||||
wget "${URL}" --output-document "woodpecker-agent-${VERSION}-linux-amd64.tar.gz"
|
||||
tar -xf "woodpecker-agent-${VERSION}-linux-amd64.tar.gz"
|
||||
}
|
||||
|
||||
function prepare() {
|
||||
mkdir -p \
|
||||
"${PKGDIR}/DEBIAN" \
|
||||
"${PKGDIR}/usr/bin" \
|
||||
"${PKGDIR}/etc/default" \
|
||||
"${PKGDIR}/etc/woodpecker" \
|
||||
"${PKGDIR}/var/lib/woodpecker/data" \
|
||||
"${PKGDIR}/lib/systemd/system"
|
||||
cp "${SRCDIR}/woodpecker-agent" "${PKGDIR}/usr/bin/woodpecker-agent"
|
||||
cp "${ROOT}/woodpecker-agent.service" "${PKGDIR}/lib/systemd/system/woodpecker-agent.service"
|
||||
cp "${ROOT}/debian.control" "${PKGDIR}/DEBIAN/control"
|
||||
cp "${ROOT}/debian.conffiles" "${PKGDIR}/DEBIAN/conffiles"
|
||||
cp "${ROOT}/debian.postinst" "${PKGDIR}/DEBIAN/postinst"
|
||||
cp "${ROOT}/debian.prerm" "${PKGDIR}/DEBIAN/prerm"
|
||||
cp "${ROOT}/debian.postrm" "${PKGDIR}/DEBIAN/postrm"
|
||||
cp "${ROOT}/woodpecker-agent.default" "${PKGDIR}/etc/default/woodpecker-agent"
|
||||
cp "${ROOT}/agent.conf" "${PKGDIR}/etc/woodpecker/agent.conf"
|
||||
sed -re "s/__VERSION__/${VERSION}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
sed -re "s/__MAINTAINER__/${MAINTAINER}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
find "${PKGDIR}" -exec touch -m -r "${SRCDIR}/woodpecker-agent" {} \;
|
||||
}
|
||||
|
||||
function package() {
|
||||
cd "${BUILDDIR}"
|
||||
dpkg-deb --build "${PKGDIR}" "${BUILDDIR}"
|
||||
}
|
||||
|
||||
function build() {
|
||||
read VERSION ISODATE URL <<<$(curl "${API_URL}" | jq -r "${JQ_EXPR}" | head -1)
|
||||
export VERSION
|
||||
export ISODATE
|
||||
export URL
|
||||
mkdir -p "${SRCDIR}" "${PKGDIR}"
|
||||
fetch
|
||||
prepare
|
||||
package
|
||||
}
|
||||
|
||||
|
||||
build
|
|
@ -1,2 +0,0 @@
|
|||
/etc/default/woodpecker-agent
|
||||
/etc/woodpecker/agent.conf
|
|
@ -1,10 +0,0 @@
|
|||
Package: woodpecker-agent
|
||||
Version: __VERSION__
|
||||
Maintainer: __MAINTAINER__
|
||||
Section: web
|
||||
Priority: optional
|
||||
Architecture: amd64
|
||||
Depends: docker.io
|
||||
Description: Woodpecker CI Agent
|
||||
Woodpecker is a simple CI engine with great extensibility. This is the
|
||||
agent compoment which runs the individual Docker pipelines.
|
|
@ -1,21 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "configure" ]]; then
|
||||
|
||||
if ! getent group woodpecker >/dev/null; then
|
||||
groupadd --system woodpecker
|
||||
fi
|
||||
|
||||
if ! getent passwd woodpecker >/dev/null; then
|
||||
useradd --system --gid woodpecker --groups docker --home-dir /var/lib/woodpecker --shell /bin/sh woodpecker
|
||||
fi
|
||||
|
||||
chown woodpecker:woodpecker /var/lib/woodpecker /etc/woodpecker /etc/woodpecker/agent.conf
|
||||
chmod 0750 /var/lib/woodpecker /etc/woodpecker
|
||||
|
||||
deb-systemd-helper enable woodpecker-agent.service
|
||||
deb-systemd-invoke restart woodpecker-agent.service
|
||||
|
||||
fi
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "remove" ]]; then
|
||||
|
||||
systemctl daemon-reload || true
|
||||
|
||||
fi
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "remove" ]]; then
|
||||
|
||||
deb-systemd-invoke stop woodpecker-agent.service
|
||||
|
||||
fi
|
|
@ -1,39 +0,0 @@
|
|||
|
||||
GODEBUG=netdns=go
|
||||
#WOODPECKER_LOG_LEVEL=
|
||||
#WOODPECKER_DEBUG_PRETTY=false
|
||||
#WOODPECKER_DEBUG_NOCOLOR=true
|
||||
|
||||
#WOODPECKER_SERVER=localhost:9000
|
||||
#WOODPECKER_USERNAME=x-oauth-basic
|
||||
#WOODPECKER_AGENT_SECRET= same as in woodpecker server
|
||||
#WOODPECKER_AGENT_SECRET_FILE=
|
||||
#WOODPECKER_HOSTNAME=
|
||||
|
||||
#WOODPECKER_MAX_PROCS=1
|
||||
#WOODPECKER_FILTER_LABELS=
|
||||
|
||||
#WOODPECKER_HEALTHCHECK=true
|
||||
#WOODPECKER_KEEPALIVE_TIME=
|
||||
#WOODPECKER_KEEPALIVE_TIMEOUT=20s
|
||||
#WOODPECKER_GRPC_SECURE=false
|
||||
#WOODPECKER_GRPC_VERIFY=true
|
||||
#WOODPECKER_BACKEND=auto-detect
|
||||
|
||||
#
|
||||
# Docker Backend
|
||||
#
|
||||
|
||||
#WOODPECKER_BACKEND_DOCKER_NETWORK=
|
||||
#WOODPECKER_BACKEND_DOCKER_ENABLE_IPV6=false
|
||||
#DOCKER_SOCK=/run/docker.sock
|
||||
|
||||
#
|
||||
# SSH Backend
|
||||
#
|
||||
|
||||
#WOODPECKER_BACKEND_SSH_ADDRESS=
|
||||
#WOODPECKER_BACKEND_SSH_USER=
|
||||
#WOODPECKER_BACKEND_SSH_KEY=
|
||||
#WOODPECKER_BACKEND_SSH_KEY_PASSWORD=
|
||||
#WOODPECKER_BACKEND_SSH_PASSWORD=
|
|
@ -1,10 +0,0 @@
|
|||
[Unit]
|
||||
Description=Woodpecker CI Agent
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/woodpecker-agent
|
||||
User=woodpecker
|
||||
EnvironmentFile=-/etc/default/woodpecker-agent
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -1 +0,0 @@
|
|||
{}
|
|
@ -1,58 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
API_URL=https://api.github.com/repos/woodpecker-ci/woodpecker/releases
|
||||
JQ_EXPR='.[] | select( .prerelease==false and .draft==false ) | "\(.tag_name[1:]) \(.published_at) \(.assets[] | select( .name=="woodpecker-agent_linux_amd64.tar.gz" ).browser_download_url)"'
|
||||
|
||||
ROOT=$(pwd)
|
||||
BUILDDIR=${ROOT}/build
|
||||
SRCDIR=${BUILDDIR}/srcdir
|
||||
PKGDIR=${BUILDDIR}/pkgdir
|
||||
|
||||
function fetch() {
|
||||
cd "${SRCDIR}"
|
||||
wget "${URL}" --output-document "woodpecker-agent-${VERSION}-linux-amd64.tar.gz"
|
||||
tar -xf "woodpecker-agent-${VERSION}-linux-amd64.tar.gz"
|
||||
}
|
||||
|
||||
function prepare() {
|
||||
mkdir -p \
|
||||
"${PKGDIR}/DEBIAN" \
|
||||
"${PKGDIR}/usr/bin" \
|
||||
"${PKGDIR}/etc/default" \
|
||||
"${PKGDIR}/etc/woodpecker" \
|
||||
"${PKGDIR}/var/lib/woodpecker/data" \
|
||||
"${PKGDIR}/lib/systemd/system"
|
||||
cp "${SRCDIR}/woodpecker-agent" "${PKGDIR}/usr/bin/woodpecker-agent"
|
||||
cp "${ROOT}/woodpecker-agent.service" "${PKGDIR}/lib/systemd/system/woodpecker-agent.service"
|
||||
cp "${ROOT}/debian.control" "${PKGDIR}/DEBIAN/control"
|
||||
cp "${ROOT}/debian.conffiles" "${PKGDIR}/DEBIAN/conffiles"
|
||||
cp "${ROOT}/debian.postinst" "${PKGDIR}/DEBIAN/postinst"
|
||||
cp "${ROOT}/debian.prerm" "${PKGDIR}/DEBIAN/prerm"
|
||||
cp "${ROOT}/debian.postrm" "${PKGDIR}/DEBIAN/postrm"
|
||||
cp "${ROOT}/woodpecker-agent.default" "${PKGDIR}/etc/default/woodpecker-agent"
|
||||
cp "${ROOT}/agent.conf" "${PKGDIR}/etc/woodpecker/agent.conf"
|
||||
sed -re "s/__VERSION__/${VERSION}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
sed -re "s/__MAINTAINER__/${MAINTAINER}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
find "${PKGDIR}" -exec touch -m -r "${SRCDIR}/woodpecker-agent" {} \;
|
||||
}
|
||||
|
||||
function package() {
|
||||
cd "${BUILDDIR}"
|
||||
dpkg-deb --build "${PKGDIR}" "${BUILDDIR}"
|
||||
}
|
||||
|
||||
function build() {
|
||||
read VERSION ISODATE URL <<<$(curl "${API_URL}" | jq -r "${JQ_EXPR}" | head -1)
|
||||
export VERSION
|
||||
export ISODATE
|
||||
export URL
|
||||
mkdir -p "${SRCDIR}" "${PKGDIR}"
|
||||
fetch
|
||||
prepare
|
||||
package
|
||||
}
|
||||
|
||||
|
||||
build
|
|
@ -1,2 +0,0 @@
|
|||
/etc/default/woodpecker-agent
|
||||
/etc/woodpecker/agent.conf
|
|
@ -1,10 +0,0 @@
|
|||
Package: woodpecker-agent
|
||||
Version: __VERSION__
|
||||
Maintainer: __MAINTAINER__
|
||||
Section: web
|
||||
Priority: optional
|
||||
Architecture: amd64
|
||||
Depends: docker.io
|
||||
Description: Woodpecker CI Agent
|
||||
Woodpecker is a simple CI engine with great extensibility. This is the
|
||||
agent compoment which runs the individual Docker pipelines.
|
|
@ -1,21 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "configure" ]]; then
|
||||
|
||||
if ! getent group woodpecker >/dev/null; then
|
||||
groupadd --system woodpecker
|
||||
fi
|
||||
|
||||
if ! getent passwd woodpecker >/dev/null; then
|
||||
useradd --system --gid woodpecker --groups docker --home-dir /var/lib/woodpecker --shell /bin/sh woodpecker
|
||||
fi
|
||||
|
||||
chown woodpecker:woodpecker /var/lib/woodpecker /etc/woodpecker /etc/woodpecker/agent.conf
|
||||
chmod 0750 /var/lib/woodpecker /etc/woodpecker
|
||||
|
||||
deb-systemd-helper enable woodpecker-agent.service
|
||||
deb-systemd-invoke restart woodpecker-agent.service
|
||||
|
||||
fi
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "remove" ]]; then
|
||||
|
||||
systemctl daemon-reload || true
|
||||
|
||||
fi
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "remove" ]]; then
|
||||
|
||||
deb-systemd-invoke stop woodpecker-agent.service
|
||||
|
||||
fi
|
|
@ -1,39 +0,0 @@
|
|||
|
||||
GODEBUG=netdns=go
|
||||
#WOODPECKER_LOG_LEVEL=
|
||||
#WOODPECKER_DEBUG_PRETTY=false
|
||||
#WOODPECKER_DEBUG_NOCOLOR=true
|
||||
|
||||
#WOODPECKER_SERVER=localhost:9000
|
||||
#WOODPECKER_USERNAME=x-oauth-basic
|
||||
#WOODPECKER_AGENT_SECRET= same as in woodpecker server
|
||||
#WOODPECKER_AGENT_SECRET_FILE=
|
||||
#WOODPECKER_HOSTNAME=
|
||||
|
||||
#WOODPECKER_MAX_PROCS=1
|
||||
#WOODPECKER_FILTER_LABELS=
|
||||
|
||||
#WOODPECKER_HEALTHCHECK=true
|
||||
#WOODPECKER_KEEPALIVE_TIME=
|
||||
#WOODPECKER_KEEPALIVE_TIMEOUT=20s
|
||||
#WOODPECKER_GRPC_SECURE=false
|
||||
#WOODPECKER_GRPC_VERIFY=true
|
||||
#WOODPECKER_BACKEND=auto-detect
|
||||
|
||||
#
|
||||
# Docker Backend
|
||||
#
|
||||
|
||||
#WOODPECKER_BACKEND_DOCKER_NETWORK=
|
||||
#WOODPECKER_BACKEND_DOCKER_ENABLE_IPV6=false
|
||||
#DOCKER_SOCK=/run/docker.sock
|
||||
|
||||
#
|
||||
# SSH Backend
|
||||
#
|
||||
|
||||
#WOODPECKER_BACKEND_SSH_ADDRESS=
|
||||
#WOODPECKER_BACKEND_SSH_USER=
|
||||
#WOODPECKER_BACKEND_SSH_KEY=
|
||||
#WOODPECKER_BACKEND_SSH_KEY_PASSWORD=
|
||||
#WOODPECKER_BACKEND_SSH_PASSWORD=
|
|
@ -1,10 +0,0 @@
|
|||
[Unit]
|
||||
Description=Woodpecker CI Agent
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/woodpecker-agent
|
||||
User=woodpecker
|
||||
EnvironmentFile=-/etc/default/woodpecker-agent
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -1,49 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
N_RELEASES=1
|
||||
API_URL=https://api.github.com/repos/woodpecker-ci/woodpecker/releases
|
||||
JQ_EXPR='.[] | select( .prerelease==false and .draft==false ) | "\(.tag_name[1:]) \(.published_at) \(.assets[] | select( .name=="woodpecker-cli_linux_amd64.tar.gz" ).browser_download_url)"'
|
||||
|
||||
ROOT=$(pwd)
|
||||
BUILDDIR=${ROOT}/build/
|
||||
SRCDIR=${ROOT}/build/srcdir
|
||||
PKGDIR=${ROOT}/build/pkgdir
|
||||
|
||||
function fetch() {
|
||||
cd "${SRCDIR}"
|
||||
wget "${URL}" --output-document "woodpecker-cli-${VERSION}-linux-amd64.tar.gz"
|
||||
tar xf "woodpecker-cli-${VERSION}-linux-amd64.tar.gz"
|
||||
}
|
||||
|
||||
function prepare() {
|
||||
chmod +x "${SRCDIR}/woodpecker-cli"
|
||||
mkdir -p \
|
||||
"${PKGDIR}/DEBIAN" \
|
||||
"${PKGDIR}/usr/bin"
|
||||
cp "${SRCDIR}/woodpecker-cli" "${PKGDIR}/usr/bin/woodpecker"
|
||||
cp "${ROOT}/debian.control" "${PKGDIR}/DEBIAN/control"
|
||||
sed -re "s/__VERSION__/${VERSION}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
sed -re "s/__MAINTAINER__/${MAINTAINER}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
find "${PKGDIR}" -exec touch -m -d "${ISODATE}" {} \;
|
||||
}
|
||||
|
||||
function package() {
|
||||
cd "${BUILDDIR}"
|
||||
dpkg-deb --build "${PKGDIR}" "${BUILDDIR}"
|
||||
}
|
||||
|
||||
function build() {
|
||||
read VERSION ISODATE URL <<<$(curl "${API_URL}" | jq -r "${JQ_EXPR}" | head "-${N_RELEASES}")
|
||||
export VERSION
|
||||
export ISODATE
|
||||
export URL
|
||||
mkdir -p "${SRCDIR}" "${PKGDIR}"
|
||||
fetch
|
||||
prepare
|
||||
package
|
||||
}
|
||||
|
||||
|
||||
build
|
|
@ -1,8 +0,0 @@
|
|||
Package: woodpecker-cli
|
||||
Version: __VERSION__
|
||||
Maintainer: __MAINTAINER__
|
||||
Section: web
|
||||
Priority: optional
|
||||
Architecture: amd64
|
||||
Description: CLI for the Woodpecker CI server
|
||||
Command line client for the Woodpecker continuous integration server.
|
|
@ -1,56 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
API_URL=https://api.github.com/repos/woodpecker-ci/woodpecker/releases
|
||||
JQ_EXPR='.[] | select( .prerelease==false and .draft==false ) | "\(.tag_name[1:]) \(.published_at) \(.assets[] | select( .name=="woodpecker-server_linux_amd64.tar.gz" ).browser_download_url)"'
|
||||
|
||||
ROOT=$(pwd)
|
||||
BUILDDIR=${ROOT}/build
|
||||
SRCDIR=${BUILDDIR}/srcdir
|
||||
PKGDIR=${BUILDDIR}/pkgdir
|
||||
|
||||
function fetch() {
|
||||
cd "${SRCDIR}"
|
||||
wget "${URL}" --output-document "woodpecker-server-${VERSION}-linux-amd64.tar.gz"
|
||||
tar -xf "woodpecker-server-${VERSION}-linux-amd64.tar.gz"
|
||||
}
|
||||
|
||||
function prepare() {
|
||||
mkdir -p \
|
||||
"${PKGDIR}/DEBIAN" \
|
||||
"${PKGDIR}/usr/bin" \
|
||||
"${PKGDIR}/etc/default" \
|
||||
"${PKGDIR}/var/lib/woodpecker/data" \
|
||||
"${PKGDIR}/lib/systemd/system"
|
||||
cp "${SRCDIR}/woodpecker-server" "${PKGDIR}/usr/bin/woodpecker-server"
|
||||
cp "${ROOT}/woodpecker-server.service" "${PKGDIR}/lib/systemd/system/woodpecker-server.service"
|
||||
cp "${ROOT}/debian.control" "${PKGDIR}/DEBIAN/control"
|
||||
cp "${ROOT}/debian.conffiles" "${PKGDIR}/DEBIAN/conffiles"
|
||||
cp "${ROOT}/debian.postinst" "${PKGDIR}/DEBIAN/postinst"
|
||||
cp "${ROOT}/debian.prerm" "${PKGDIR}/DEBIAN/prerm"
|
||||
cp "${ROOT}/debian.postrm" "${PKGDIR}/DEBIAN/postrm"
|
||||
cp "${ROOT}/woodpecker-server.default" "${PKGDIR}/etc/default/woodpecker-server"
|
||||
sed -re "s/__VERSION__/${VERSION}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
sed -re "s/__MAINTAINER__/${MAINTAINER}/g" -i "${PKGDIR}/DEBIAN/control"
|
||||
find "${PKGDIR}" -exec touch -m -r "${SRCDIR}/woodpecker-server" {} \;
|
||||
}
|
||||
|
||||
function package() {
|
||||
cd "${BUILDDIR}"
|
||||
dpkg-deb --build "${PKGDIR}" "${BUILDDIR}"
|
||||
}
|
||||
|
||||
function build() {
|
||||
read VERSION ISODATE URL <<<$(curl "${API_URL}" | jq -r "${JQ_EXPR}" | head -1)
|
||||
export VERSION
|
||||
export ISODATE
|
||||
export URL
|
||||
mkdir -p "${SRCDIR}" "${PKGDIR}"
|
||||
fetch
|
||||
prepare
|
||||
package
|
||||
}
|
||||
|
||||
|
||||
build
|
|
@ -1 +0,0 @@
|
|||
/etc/default/woodpecker-server
|
|
@ -1,10 +0,0 @@
|
|||
Package: woodpecker-server
|
||||
Version: __VERSION__
|
||||
Maintainer: __MAINTAINER__
|
||||
Section: web
|
||||
Priority: optional
|
||||
Architecture: amd64
|
||||
Recommends: woodpecker-cli
|
||||
Description: Woodpecker CI Server
|
||||
Woodpecker is a simple CI engine with great extensibility. This is the
|
||||
server component with the web interface and agent controller.
|
|
@ -1,21 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "configure" ]]; then
|
||||
|
||||
if ! getent group woodpecker >/dev/null; then
|
||||
groupadd --system woodpecker
|
||||
fi
|
||||
|
||||
if ! getent passwd woodpecker >/dev/null; then
|
||||
useradd --system --gid woodpecker --groups docker --home-dir /var/lib/woodpecker --shell /bin/sh woodpecker
|
||||
fi
|
||||
|
||||
chown woodpecker:woodpecker /var/lib/woodpecker /var/lib/woodpecker/data
|
||||
chmod 0750 /var/lib/woodpecker /var/lib/woodpecker/data
|
||||
|
||||
deb-systemd-helper enable woodpecker-server.service
|
||||
deb-systemd-invoke restart woodpecker-server.service
|
||||
|
||||
fi
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "remove" ]]; then
|
||||
|
||||
systemctl daemon-reload || true
|
||||
|
||||
fi
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [[ "$1" == "remove" ]]; then
|
||||
|
||||
deb-systemd-invoke stop woodpecker-server.service
|
||||
|
||||
fi
|
|
@ -1,140 +0,0 @@
|
|||
|
||||
XDG_CACHE_HOME=/var/lib/woodpecker/data
|
||||
GODEBUG=netdns=go
|
||||
#WOODPECKER_LOG_LEVEL=
|
||||
#WOODPECKER_DEBUG_PRETTY=false
|
||||
#WOODPECKER_DEBUG_NOCOLOR=true
|
||||
|
||||
WOODPECKER_HOST=http://localhost:8080
|
||||
WOODPECKER_SERVER_ADDR=localhost:8080
|
||||
#WOODPECKER_SERVER_CERT=
|
||||
#WOODPECKER_SERVER_KEY=
|
||||
#WOODPECKER_LETS_ENCRYPT=false
|
||||
#WOODPECKER_GRPC_ADDR=localhost:9000
|
||||
|
||||
#WOODPECKER_ADMIN=
|
||||
#WOODPECKER_ORGS=
|
||||
#WOODPECKER_REPO_OWNERS=
|
||||
#WOODPECKER_OPEN=false
|
||||
#WOODPECKER_DOCS=https://woodpecker-ci.org/
|
||||
#WOODPECKER_AUTHENTICATE_PUBLIC_REPOS=false
|
||||
#WOODPECKER_DEFAULT_CANCEL_PREVIOUS_PIPELINE_EVENTS=pull_request,push
|
||||
#WOODPECKER_DEFAULT_CLONE_IMAGE=woodpeckerci/plugin-git:latest
|
||||
#WOODPECKER_SESSION_EXPIRES=72h
|
||||
|
||||
#WOODPECKER_ESCALATE=plugins/docker,plugins/gcr,plugins/ecr,woodpeckerci/plugin-docker,woodpeckerci/plugin-docker-buildx
|
||||
#WOODPECKER_DOCKER_CONFIG=
|
||||
#WOODPECKER_AGENT_SECRET= generate with `openssl rand -hex 32`
|
||||
#WOODPECKER_AGENT_SECRET_FILE=
|
||||
#WOODPECKER_KEEPALIVE_MIN_TIME=
|
||||
|
||||
WOODPECKER_DATABASE_DRIVER=sqlite3
|
||||
WOODPECKER_DATABASE_DATASOURCE=/var/lib/woodpecker/data/database.sqlite
|
||||
#WOODPECKER_DATABASE_DATASOURCE_FILE=
|
||||
|
||||
#WOODPECKER_PROMETHEUS_AUTH_TOKEN=
|
||||
#WOODPECKER_PROMETHEUS_AUTH_TOKEN_FILE=
|
||||
#WOODPECKER_STATUS_CONTEXT=ci/woodpecker
|
||||
#WOODPECKER_STATUS_CONTEXT_FORMAT={{ .context }}/{{ .event }}/{{ .pipeline }}
|
||||
|
||||
#WOODPECKER_LIMIT_MEM_SWAP=0
|
||||
#WOODPECKER_LIMIT_MEM=0
|
||||
#WOODPECKER_LIMIT_SHM_SIZE=0
|
||||
#WOODPECKER_LIMIT_CPU_QUOTA=0
|
||||
#WOODPECKER_LIMIT_CPU_SHARES=0
|
||||
#WOODPECKER_LIMIT_CPU_SET=0
|
||||
#WOODPECKER_CONFIG_SERVICE_ENDPOINT=
|
||||
|
||||
#
|
||||
# GitHub Integration
|
||||
#
|
||||
|
||||
#WOODPECKER_GITHUB=false
|
||||
#WOODPECKER_GITHUB_URL=https://github.com
|
||||
#WOODPECKER_GITHUB_CLIENT=
|
||||
#WOODPECKER_GITHUB_CLIENT_FILE=
|
||||
#WOODPECKER_GITHUB_SECRET=
|
||||
#WOODPECKER_GITHUB_SECRET_FILE=
|
||||
#WOODPECKER_GITHUB_MERGE_REF=true
|
||||
#WOODPECKER_GITEA_SKIP_VERIFY=false
|
||||
|
||||
#
|
||||
# Gogs Integration
|
||||
#
|
||||
|
||||
#WOODPECKER_GOGS=false
|
||||
#WOODPECKER_GOGS_URL=https://try.gogs.io
|
||||
#WOODPECKER_GOGS_GIT_USERNAME=
|
||||
#WOODPECKER_GOGS_GIT_USERNAME_FILE=
|
||||
#WOODPECKER_GOGS_GIT_PASSWORD=
|
||||
#WOODPECKER_GOGS_GIT_PASSWORD_FILE=
|
||||
#WOODPECKER_GOGS_PRIVATE_MODE=false
|
||||
#WOODPECKER_GOGS_SKIP_VERIFY=false
|
||||
|
||||
#
|
||||
# Gitea Integration
|
||||
#
|
||||
|
||||
#WOODPECKER_GITEA=false
|
||||
#WOODPECKER_GITEA_URL=https://try.gitea.io
|
||||
#WOODPECKER_GITEA_CLIENT=
|
||||
#WOODPECKER_GITEA_CLIENT_FILE=
|
||||
#WOODPECKER_GITEA_SECRET=
|
||||
#WOODPECKER_GITEA_SECRET_FILE=
|
||||
#WOODPECKER_GITEA_SKIP_VERIFY=false
|
||||
|
||||
#
|
||||
# Atlassian Bitbucket Integration
|
||||
#
|
||||
|
||||
#WOODPECKER_BITBUCKET=false
|
||||
#WOODPECKER_BITBUCKET_CLIENT=
|
||||
#WOODPECKER_BITBUCKET_CLIENT_FILE=
|
||||
#WOODPECKER_BITBUCKET_SECRET=
|
||||
#WOODPECKER_BITBUCKET_SECRET_FILE=
|
||||
|
||||
#
|
||||
# Atlassian Stash Integration
|
||||
#
|
||||
|
||||
#WOODPECKER_STASH=false
|
||||
#WOODPECKER_STASH=
|
||||
#WOODPECKER_STASH_CONSUMER_KEY=
|
||||
#WOODPECKER_STASH_CONSUMER_KEY_FILE=
|
||||
#WOODPECKER_STASH_CONSUMER_RSA=
|
||||
#WOODPECKER_STASH_CONSUMER_RSA_STRING=
|
||||
#WOODPECKER_STASH_GIT_USERNAME=
|
||||
#WOODPECKER_STASH_GIT_USERNAME_FILE=
|
||||
#WOODPECKER_STASH_GIT_PASSWORD=
|
||||
#WOODPECKER_STASH_GIT_PASSWORD_FILE=
|
||||
#WOODPECKER_STASH_SKIP_VERIFY=
|
||||
|
||||
#
|
||||
# Gitlab Integration
|
||||
#
|
||||
|
||||
#WOODPECKER_GITLAB=false
|
||||
#WOODPECKER_GITLAB_URL=https://gitlab.com
|
||||
#WOODPECKER_GITLAB_CLIENT=
|
||||
#WOODPECKER_GITLAB_CLIENT_FILE=
|
||||
#WOODPECKER_GITLAB_SECRET=
|
||||
#WOODPECKER_GITLAB_SECRET_FILE=
|
||||
#WOODPECKER_GITLAB_SKIP_VERIFY=
|
||||
|
||||
#
|
||||
# Coding Integration
|
||||
#
|
||||
|
||||
#WOODPECKER_CODING=false
|
||||
#WOODPECKER_CODING_URL=https://coding.net
|
||||
#WOODPECKER_CODING_CLIENT=
|
||||
#WOODPECKER_CODING_CLIENT_FILE=
|
||||
#WOODPECKER_CODING_SECRET=
|
||||
#WOODPECKER_CODING_SECRET_FILE=
|
||||
#WOODPECKER_CODING_SCOPE=
|
||||
#WOODPECKER_CODING_GIT_MACHINE=
|
||||
#WOODPECKER_CODING_GIT_USERNAME=
|
||||
#WOODPECKER_CODING_GIT_USERNAME_FILE=
|
||||
#WOODPECKER_CODING_GIT_PASSWORD=
|
||||
#WOODPECKER_CODING_GIT_PASSWORD_FILE=
|
||||
#WOODPECKER_CODING_SKIP_VERIFY=
|
|
@ -1,12 +0,0 @@
|
|||
[Unit]
|
||||
Description=Woodpecker CI Server
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/woodpecker-server
|
||||
User=woodpecker
|
||||
EnvironmentFile=-/etc/default/woodpecker-server
|
||||
AmbientCapabilities=CAP_NET_BIND_SERVICE
|
||||
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Loading…
Reference in a new issue